Files
AstraDeploy/lib/logger.sh

39 lines
442 B
Bash

#!/usr/bin/env bash
log() {
local level="$1"
shift
printf '[%s] [%s] %s\n' "$(date +'%Y-%m-%d %H:%M:%S')" "$level" "$*"
}
info() {
log "INFO" "$@"
}
warn() {
log "WARN" "$@"
}
error() {
log "ERROR" "$@"
}
debug() {
if [[ "${DEBUG:-no}" == "yes" ]]; then
log "DEBUG" "$@"
fi
}
fail() {
error "$@"
exit 1
}
run_cmd() {
if [[ "${DRY_RUN:-no}" == "yes" ]]; then
info "[dry-run] $*"
return 0
fi
"$@"
}