master > master: workflow scripts hinzugefügt
This commit is contained in:
51
scripts/.lib.globals.sh
Normal file
51
scripts/.lib.globals.sh
Normal file
@@ -0,0 +1,51 @@
|
||||
#!/bin/bash
|
||||
|
||||
##############################################################################
|
||||
# DESCRIPTION: Library for extraction of global vars from environment.
|
||||
##############################################################################
|
||||
|
||||
##############################################################################
|
||||
# MAIN METHODS: .env
|
||||
##############################################################################
|
||||
|
||||
function env_value() {
|
||||
[ -f "$1" ] && source "$1" && echo "${!2}";
|
||||
}
|
||||
|
||||
function env_required() {
|
||||
! [ -f "$1" ] && echo -e "[\033[91mERROR\033[0m] Could not find environment file \033[1m$1\033[0m!" >> /dev/stderr && exit 1;
|
||||
source "$1";
|
||||
local value="${!2}";
|
||||
[ "$value" == "" ] && echo -e "[\033[91mERROR\033[0m] Argument \033[93;1m$2\033[0m not found in \033[1m$1\033[0m!" >> /dev/stderr && exit 1;
|
||||
echo "$value";
|
||||
}
|
||||
|
||||
function env_from() {
|
||||
local arguments=( "$@" );
|
||||
local path="${arguments[0]}";
|
||||
local key_from="${arguments[2]}";
|
||||
local key_to="${key_from}";
|
||||
( echo "${arguments[3]}" | grep -Eiq "^as$" ) && key_to="${arguments[4]}";
|
||||
! ( echo "$key_to" | grep -Eiq "^([[:alpha:]]|_)([[:alpha:]]|_|[[:digit:]])*$" ) && echo -e "[\033[91mERROR\033[0m] Key argument \"\033[1m$key_to\033[0m\" not a valid name for a variable!" >> /dev/stderr && exit 1;
|
||||
local value="$( env_required "$path" "$key_from" )";
|
||||
[ "$value" == "" ] && exit 1;
|
||||
export $key_to="$value";
|
||||
}
|
||||
|
||||
##############################################################################
|
||||
# GLOBAL VARIABLES:
|
||||
##############################################################################
|
||||
|
||||
# NOTE: do not use /bin/bash. Results in error under Windows. Use \/bin\/bash, bash, sh -c bash, or sh.
|
||||
export CMD_EXPLORE="bash";
|
||||
# periodic waiting time to check a process;
|
||||
export WAIT_PERIOD_IN_SECONDS=1;
|
||||
export PENDING_SYMBOL="#";
|
||||
|
||||
env_from ".env" import CONSOLE_OUT as OUT;
|
||||
env_from ".env" import CONSOLE_ERR as ERR;
|
||||
env_from ".env" import CONSOLE_VERBOSE as VERBOSE;
|
||||
env_from ".env" import CONSOLE_PATH_LOGS as PATH_LOGS;
|
||||
env_from ".env" import CONSOLE_FILENAME_LOGS_DEBUG as FILENAME_LOGS_DEBUG;
|
||||
|
||||
export LOGGINGPREFIX="";
|
||||
Reference in New Issue
Block a user