Compare commits

...

8 commits

Author SHA1 Message Date
7a8915682d
main/comments
All checks were successful
/ job (push) Successful in 2m58s
2025-07-09 23:12:57 +02:00
289ee65a98
−useless 2025-07-09 23:07:26 +02:00
a09a9f2a03
log/↕ 2025-07-09 22:08:05 +02:00
ef4879efd7
log/log 2025-07-09 22:05:47 +02:00
9a2603c6de
log/level 2025-07-09 22:03:54 +02:00
aced0a1fb3
log/alias 2025-07-09 21:58:23 +02:00
dd077b89f3
log/[] 2025-07-09 21:54:25 +02:00
54ab72488f
log/simplify 2025-07-09 21:06:39 +02:00
2 changed files with 65 additions and 76 deletions

View file

@ -17,67 +17,11 @@ RWX_LOG_LEVEL_TRACE=5
# │ log │ variables │
# ╰─────┴───────────╯
RWX_LOG_LEVEL=${RWX_LOG_LEVEL_INFO}
rwx_log_level=${RWX_LOG_LEVEL_INFO}
# ╭─────┬─────╮
# │ log │ log │
# ╰─────┴─────╯
rwx_log() { rwx_log_info "${@}"; }
rwx_log_debug() {
if [ "${RWX_LOG_LEVEL}" -ge "${RWX_LOG_LEVEL_DEBUG}" ]; then
_rwx_log "[DEBUG]" "${@}"
fi
}
rwx_log_error() {
local code="${1}"
shift
[ -n "${code}" ] || rwx_log_fatal 1 "No error code"
if [ "${RWX_LOG_LEVEL}" -ge "${RWX_LOG_LEVEL_ERROR}" ]; then
_rwx_log "[ERROR]" "${@}" >&2
return "${code}"
fi
}
rwx_log_fatal() {
local code="${1}"
shift
[ -n "${code}" ] || rwx_log_fatal 1 "No error code"
if [ "${RWX_LOG_LEVEL}" -ge "${RWX_LOG_LEVEL_FATAL}" ]; then
_rwx_log "[FATAL]" "${@}" >&2
exit "${code}"
fi
}
rwx_log_info() {
if [ "${RWX_LOG_LEVEL}" -ge "${RWX_LOG_LEVEL_INFO}" ]; then
_rwx_log "" "${@}"
fi
}
rwx_log_trace() {
if [ "${RWX_LOG_LEVEL}" -ge "${RWX_LOG_LEVEL_TRACE}" ]; then
_rwx_log "[TRACE]" "${@}"
fi
}
rwx_log_warn() {
if [ "${RWX_LOG_LEVEL}" -ge "${RWX_LOG_LEVEL_WARN}" ]; then
_rwx_log "[ WARN]" "${@}"
fi
}
# TODO simplify
_rwx_main_log() {
[ ${#} -gt 0 ] || set -- ""
local line
for line in "${@}"; do
echo "${line}"
done
}
# ╭─────┬───────────╮
# │ log │ functions │
# ╰─────┴───────────╯
_rwx_log() {
local prefix="${1}"
@ -85,10 +29,53 @@ _rwx_log() {
[ ${#} -gt 0 ] || set -- ""
local line
for line in "${@}"; do
if [ -n "${prefix}" ]; then
_rwx_main_log "${prefix} ${line}"
else
_rwx_main_log "${line}"
fi
[ -n "${prefix}" ] &&
printf "%s" "[${prefix}] "
echo "${line}"
done
}
rwx_log_fatal() {
local code="${1}"
shift
[ -n "${code}" ] || rwx_log_fatal 1 "No error code"
if [ "${rwx_log_level}" -ge "${RWX_LOG_LEVEL_FATAL}" ]; then
_rwx_log "FATAL" "${@}" >&2
exit "${code}"
fi
}
rwx_log_error() {
local code="${1}"
shift
[ -n "${code}" ] || rwx_log_fatal 1 "No error code"
if [ "${rwx_log_level}" -ge "${RWX_LOG_LEVEL_ERROR}" ]; then
_rwx_log "ERROR" "${@}" >&2
return "${code}"
fi
}
rwx_log_warn() {
if [ "${rwx_log_level}" -ge "${RWX_LOG_LEVEL_WARN}" ]; then
_rwx_log " WARN" "${@}"
fi
}
#= rwx_log
rwx_log_info() {
if [ "${rwx_log_level}" -ge "${RWX_LOG_LEVEL_INFO}" ]; then
_rwx_log "" "${@}"
fi
}
rwx_log_debug() {
if [ "${rwx_log_level}" -ge "${RWX_LOG_LEVEL_DEBUG}" ]; then
_rwx_log "DEBUG" "${@}"
fi
}
rwx_log_trace() {
if [ "${rwx_log_level}" -ge "${RWX_LOG_LEVEL_TRACE}" ]; then
_rwx_log "TRACE" "${@}"
fi
}

View file

@ -2,33 +2,32 @@
# ╭──────╮
# │ main │
# ╰──────╯
# main module
# ╭──────┬───────────╮
# │ main │ constants │
# ╰──────┴───────────╯
# parent directory for the project
# project parent directory
RWX_MAIN_PARENT="/usr/local/lib"
# name of the project itself
# project name
RWX_MAIN_NAME="rwx"
# name of the entrypoint module
# project entrypoint module
RWX_MAIN_MODULE="main"
# extension of shell modules
# shell modules extension
RWX_MAIN_EXTENSION="sh"
# ╭──────┬───────────╮
# │ main │ variables │
# ╰──────┴───────────╯
# system root directory of the project
# project main root directory
rwx_main_root="${RWX_MAIN_PARENT}/${RWX_MAIN_NAME}"
# ╭──────┬──────╮
# │ main │ find │
# ╰──────┴──────╯
# find directory’s shell files
# find root directory shell modules
#| find
#| sed
#| sort
@ -47,13 +46,16 @@ rwx_main_find() {
# │ main │ main │
# ╰──────┴──────╯
# run initial steps
# run required initial steps
#< core/code
rwx_main_main() {
local module modules
# find & source modules
local module
local modules
# find main modules
modules="$(rwx_main_find "${rwx_main_root}")"
# source main modules
while IFS= read -r module; do
# except currently running main module
if [ "${module}" != "${RWX_MAIN_MODULE}" ]; then
# shellcheck disable=SC1090
. "${rwx_main_root}/${module}.${RWX_MAIN_EXTENSION}"
@ -61,7 +63,7 @@ rwx_main_main() {
done <<EOF
${modules}
EOF
# run code main function
# run code module main function with found main modules
rwx_code_main "${modules}" "${@}"
}