76 lines
1.7 KiB
Bash
76 lines
1.7 KiB
Bash
#!/bin/bash
|
|
|
|
|
|
|
|
# Test if the named environment variable is set and not zero length
|
|
# is_set env-var
|
|
#function is_set() {
|
|
# local var=\$"$1"
|
|
# eval "[ -n \"$var\" ]" # For ex.: sh -c "[ -n \"$var\" ]" would be better, but several exercises depends on this
|
|
#}
|
|
|
|
|
|
|
|
# Prints "message" and exits
|
|
# die "message"
|
|
#function die() {
|
|
# local exitcode=$?
|
|
# if [ $exitcode == 0 ]; then
|
|
# exitcode=1
|
|
# fi
|
|
# set +o xtrace
|
|
# local msg="[ERROR] $0:$1 $2"
|
|
# echo $msg 1>&2;
|
|
# if [[ -n ${SCREEN_LOGDIR} ]]; then
|
|
# echo $msg >> "${SCREEN_LOGDIR}/error.log"
|
|
# fi
|
|
# exit $exitcode
|
|
#}
|
|
|
|
|
|
|
|
# Checks an environment variable is not set or has length 0 OR if the
|
|
# exit code is non-zero and prints "message" and exits
|
|
# NOTE: env-var is the variable name without a '$'
|
|
# die_if_not_set env-var "message"
|
|
function die_if_not_set() {
|
|
local exitcode=$?
|
|
set +o xtrace
|
|
local evar=$1; shift
|
|
if ! is_set $evar || [ $exitcode != 0 ]; then
|
|
if [[ -z "$1" ]] ; then
|
|
die "Env var '$evar' is not set!"
|
|
else
|
|
die $@
|
|
fi
|
|
fi
|
|
}
|
|
|
|
|
|
|
|
function restart_service {
|
|
while [[ -n "$1" ]] ; do
|
|
echo "Restarting service '$1' ..."
|
|
sudo service $1 restart
|
|
shift 1
|
|
done
|
|
}
|
|
|
|
|
|
|
|
# Normalize config values to True or False
|
|
# Accepts as False: 0 no false False FALSE
|
|
# Accepts as True: 1 yes true True TRUE
|
|
# VAR=$(trueorfalse default-value test-value)
|
|
#function trueorfalse() {
|
|
# local default=$1
|
|
# local testval=$2
|
|
#
|
|
# [[ -z "$testval" ]] && { echo "$default"; return; }
|
|
# [[ "0 no false False FALSE" =~ "$testval" ]] && { echo "False"; return; }
|
|
# [[ "1 yes true True TRUE" =~ "$testval" ]] && { echo "True"; return; }
|
|
# echo "$default"
|
|
#}
|
|
|
|
|