Add development-scripts agent skill
Ports generic-scripts-module-v1 into a routed skill: module anatomy, shared loggers/base modules, Taskfile integration, workflows, and pattern decisions. Fixes a latent defect in the loggers example that silenced all logging in the module scaffold: loggers/lib/--index-api.sh now sources --env-vars-reader.sh, and the reader preserves already-exported values so caller overrides still win. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/base/lib/--index.sh
|
||||
|
||||
_base_localStorage_ensureExistance_fileDotEnv
|
||||
@@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/base/lib/--index.sh
|
||||
|
||||
_base_localStorage_readLinesFrom_fileDotEnv
|
||||
+11
@@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/base/lib/--index.sh
|
||||
|
||||
_base_localStorage_reset_fileDotEnv
|
||||
@@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/base/lib/--index.sh
|
||||
|
||||
_base_localStorage_saveEnvVariable2_fileDotEnv
|
||||
+11
@@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/base/lib/--index.sh
|
||||
|
||||
_base_localStorage_view_fileDotEnv
|
||||
Executable
+75
@@ -0,0 +1,75 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--env-vars-reader.sh
|
||||
|
||||
TMP_BASE_LIB_ENV_VARS_READER=".scripts/base/lib/--env-vars-reader.sh"
|
||||
|
||||
export LOCAL_OS_TYPE="darwin"
|
||||
export LOCAL_CPU_TYPE="amd64"
|
||||
export LOCAL_HOME_DIR=$(pwd)
|
||||
export LOCAL_HOME_DIR_NAME=${PWD##*/}
|
||||
export LOCAL_GIT_ROOT_DIR=$(dirname "${LOCAL_HOME_DIR}")
|
||||
export LOCAL_CACHE_DIR_KUBE=".kube"
|
||||
|
||||
export LOCAL_FILE_DOT_ENV=".env"
|
||||
|
||||
# Pre-load CA_ENVIRONMENT from .env if not already set
|
||||
if [ -z "${CA_ENVIRONMENT}" ] && [ -f "${LOCAL_FILE_DOT_ENV}" ]; then
|
||||
export CA_ENVIRONMENT=$(grep '^CA_ENVIRONMENT=' "${LOCAL_FILE_DOT_ENV}" | cut -d'=' -f2- | tr -d '"' | tr -d "'")
|
||||
fi
|
||||
|
||||
export LOCAL_FILE_DOT_ENV_CA_ENVIRONMENT=".env-${CA_ENVIRONMENT}"
|
||||
|
||||
. ./.scripts/base/lib/-export-env-variables-from-file-dot-env.sh
|
||||
|
||||
_loggers_info "${CA_ENVIRONMENT}" "CA_ENVIRONMENT: ${CA_ENVIRONMENT}"
|
||||
_loggers_info "${CA_ENVIRONMENT}" "LOCAL_FILE_DOT_ENV: ${LOCAL_FILE_DOT_ENV}"
|
||||
_loggers_info "${CA_ENVIRONMENT}" "LOCAL_FILE_DOT_ENV_CA_ENVIRONMENT: ${LOCAL_FILE_DOT_ENV_CA_ENVIRONMENT}"
|
||||
|
||||
if
|
||||
[ ! -e "${LOCAL_FILE_DOT_ENV}" ]
|
||||
then
|
||||
_loggers_error "${LOCAL_FILE_DOT_ENV}" "Missing ${LOCAL_FILE_DOT_ENV} file."
|
||||
exit 1
|
||||
else
|
||||
set -o allexport
|
||||
. "./${LOCAL_FILE_DOT_ENV}"
|
||||
set +o allexport
|
||||
fi
|
||||
|
||||
if
|
||||
[ ! -e "${LOCAL_FILE_DOT_ENV_CA_ENVIRONMENT}" ]
|
||||
then
|
||||
_loggers_error "${TMP_BASE_LIB_ENV_VARS_READER}" "Missing ${LOCAL_FILE_DOT_ENV_CA_ENVIRONMENT} file."
|
||||
exit 1
|
||||
else
|
||||
set -o allexport
|
||||
. "./${LOCAL_FILE_DOT_ENV_CA_ENVIRONMENT}"
|
||||
set +o allexport
|
||||
fi
|
||||
|
||||
mkdir -p "${LOCAL_CACHE_DIR_KUBE}"
|
||||
|
||||
ALL_ARGS=("$@")
|
||||
while [[ "$#" -gt 0 ]]; do
|
||||
case $1 in
|
||||
--local-os-type)
|
||||
export LOCAL_OS_TYPE="$2"
|
||||
;;
|
||||
--local-cpu-type)
|
||||
export LOCAL_CPU_TYPE="$2"
|
||||
;;
|
||||
--local-file-dot-env)
|
||||
export LOCAL_FILE_DOT_ENV="$2"
|
||||
;;
|
||||
*) ;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
set -- "${ALL_ARGS[@]}"
|
||||
Executable
+15
@@ -0,0 +1,15 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
. ./.scripts/base/lib/-ensure-env-var-ibm-user-email.sh
|
||||
. ./.scripts/base/lib/-ensure-env-var-ibm-user-api-key.sh
|
||||
|
||||
_base_ensureEnvVarIbmUserEmail
|
||||
_base_ensureEnvVarIbmUserApiKey
|
||||
Executable
+19
@@ -0,0 +1,19 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/base/lib/-export-env-variable.sh
|
||||
. ./.scripts/base/lib/-export-env-variables-from-file-dot-env.sh
|
||||
. ./.scripts/base/lib/-export-env-variables-from-file.sh
|
||||
|
||||
. ./.scripts/base/lib/-get-env-variable-key-from-line.sh
|
||||
. ./.scripts/base/lib/-get-env-variable-value-from-line.sh
|
||||
|
||||
. ./.scripts/base/lib/local-storage/--index-api.sh
|
||||
|
||||
. ./.scripts/base/lib/-log-env-vars.sh
|
||||
. ./.scripts/base/lib/-prompt-for-env-var.sh
|
||||
Executable
+24
@@ -0,0 +1,24 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
#
|
||||
# --> passed parameters are read & exported environment variables
|
||||
#
|
||||
. ./.scripts/base/lib/--env-vars-reader.sh
|
||||
#
|
||||
# --> required environment variables are validated for existance
|
||||
#
|
||||
. ./.scripts/base/lib/--env-vars-validator.sh
|
||||
#
|
||||
# --> Importing local shell packages
|
||||
#
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
#
|
||||
# --> available functions are imported/exported
|
||||
#
|
||||
. ./.scripts/base/lib/--index-api.sh
|
||||
# -------------------------------------------------------------------------------------
|
||||
+41
@@ -0,0 +1,41 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
set -e
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
. ./.scripts/base/lib/local-storage/--index-api.sh
|
||||
|
||||
_base_ensureEnvVarIbmUserApiKey() {
|
||||
local FUNCTION_NAME="_base_ensureEnvVarIbmUserApiKey"
|
||||
|
||||
local TMP_IBM_USER_API_KEY=""
|
||||
if
|
||||
[ -z "${IBM_USER_API_KEY}" ]
|
||||
then
|
||||
while
|
||||
true
|
||||
do
|
||||
_loggers_emptyLine
|
||||
read -rep $'Provide for IBM_USER_API_KEY environment variable! \n\n> ' TMP_IBM_USER_API_KEY
|
||||
if
|
||||
[ ! -z "${TMP_IBM_USER_API_KEY}" ]
|
||||
then
|
||||
export IBM_USER_API_KEY="${TMP_IBM_USER_API_KEY}"
|
||||
export ENV_VAR_KEY="IBM_USER_API_KEY"
|
||||
export ENV_VAR_VALUE="${IBM_USER_API_KEY}"
|
||||
_base_localStorage_saveEnvVariable2_fileDotEnv
|
||||
break
|
||||
else
|
||||
_loggers_emptyLine
|
||||
_loggers_warn "${FUNCTION_NAME}" "Provided value can not be empty!"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
_loggers_debug "${FUNCTION_NAME}" "IBM_USER_API_KEY: *REDACTED*"
|
||||
}
|
||||
+41
@@ -0,0 +1,41 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
set -e
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
. ./.scripts/base/lib/local-storage/--index-api.sh
|
||||
|
||||
_base_ensureEnvVarIbmUserEmail() {
|
||||
local FUNCTION_NAME="_base_ensureEnvVarIbmUserEmail"
|
||||
|
||||
local TMP_IBM_USER_EMAIL=""
|
||||
if
|
||||
[ -z "${IBM_USER_EMAIL}" ]
|
||||
then
|
||||
while
|
||||
true
|
||||
do
|
||||
_loggers_emptyLine
|
||||
read -rep $'Provide for IBM_USER_EMAIL environment variable! \n\n> ' TMP_IBM_USER_EMAIL
|
||||
if
|
||||
[ ! -z "${TMP_IBM_USER_EMAIL}" ]
|
||||
then
|
||||
export IBM_USER_EMAIL="${TMP_IBM_USER_EMAIL}"
|
||||
export ENV_VAR_KEY="IBM_USER_EMAIL"
|
||||
export ENV_VAR_VALUE="${IBM_USER_EMAIL}"
|
||||
_base_localStorage_saveEnvVariable2_fileDotEnv
|
||||
break
|
||||
else
|
||||
_loggers_emptyLine
|
||||
_loggers_warn "${FUNCTION_NAME}" "Provided value can not be empty!"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
_loggers_debug "${FUNCTION_NAME}" "IBM_USER_EMAIL: ${IBM_USER_EMAIL}"
|
||||
}
|
||||
Executable
+34
@@ -0,0 +1,34 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
_base_ensure_evnVarKey() {
|
||||
local FUNCTION_NAME="_base_ensure_evnVarKey"
|
||||
_loggers_debug "${FUNCTION_NAME}"
|
||||
|
||||
while
|
||||
true
|
||||
do
|
||||
if
|
||||
[ ! -z "${ENV_VAR_KEY}" ]
|
||||
then
|
||||
break
|
||||
fi
|
||||
_loggers_emptyLine
|
||||
read -rep $'Provide environment variable key! \n> ' TMP_ENV_VAR_KEY
|
||||
if
|
||||
[ -z "$TMP_ENV_VAR_KEY" ]
|
||||
then
|
||||
_loggers_errorX "${FUNCTION_NAME}" "Provided environment variable key can not be empty!"
|
||||
else
|
||||
export ENV_VAR_KEY="$TMP_ENV_VAR_KEY"
|
||||
fi
|
||||
_loggers_emptyLine
|
||||
done
|
||||
}
|
||||
Executable
+34
@@ -0,0 +1,34 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
_base_ensure_evnVarValue() {
|
||||
local FUNCTION_NAME="_base_ensure_evnVarValue"
|
||||
_loggers_debug "${FUNCTION_NAME}"
|
||||
|
||||
while
|
||||
true
|
||||
do
|
||||
if
|
||||
[ ! -z "${ENV_VAR_VALUE}" ]
|
||||
then
|
||||
break
|
||||
fi
|
||||
_loggers_emptyLine
|
||||
read -rep $'Provide environment variable value! \n> ' TMP_ENV_VAR_VALUE
|
||||
if
|
||||
[ -z "${TMP_ENV_VAR_VALUE}" ]
|
||||
then
|
||||
_loggers_errorX "${FUNCTION_NAME}" "Provided environment variable value can not be empty!"
|
||||
else
|
||||
export ENV_VAR_VALUE="${TMP_ENV_VAR_VALUE}"
|
||||
fi
|
||||
_loggers_emptyLine
|
||||
done
|
||||
}
|
||||
Executable
+35
@@ -0,0 +1,35 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
_base_exportEnvVariable() {
|
||||
local FUNCTION_NAME="_base_exportEnvVariable"
|
||||
|
||||
local PARAM_ENV_VAR_KEY="${1}"
|
||||
local PARAM_ENV_VAR_VALUE="${2}"
|
||||
|
||||
if
|
||||
[ true ] &&
|
||||
[ ! -z "${PARAM_ENV_VAR_KEY}" ] &&
|
||||
[ ! -z "${PARAM_ENV_VAR_VALUE}" ]
|
||||
then
|
||||
_loggers_trace "${FUNCTION_NAME}" "PARAM_ENV_VAR_KEY: ${PARAM_ENV_VAR_KEY}"
|
||||
_loggers_trace "${FUNCTION_NAME}" "PARAM_ENV_VAR_VALUE: ${PARAM_ENV_VAR_VALUE}"
|
||||
|
||||
printf -v "${PARAM_ENV_VAR_KEY}" "${PARAM_ENV_VAR_VALUE}"
|
||||
export $PARAM_ENV_VAR_KEY
|
||||
else
|
||||
_loggers_warn "${FUNCTION_NAME}"
|
||||
_loggers_warn "${FUNCTION_NAME}" "Missing one of passed parameters!"
|
||||
_loggers_warn "${FUNCTION_NAME}" ""
|
||||
_loggers_warn "${FUNCTION_NAME}" "PARAM_ENV_VAR_KEY: ${PARAM_ENV_VAR_KEY}"
|
||||
_loggers_warn "${FUNCTION_NAME}" "PARAM_ENV_VAR_VALUE: ${PARAM_ENV_VAR_VALUE}"
|
||||
fi
|
||||
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
. ./.scripts/base/lib/-export-env-variables-from-file.sh
|
||||
|
||||
_base_exportEnvVarsFrom_fileDotEnv() {
|
||||
local FUNCTION_NAME="_base_exportEnvVarsFrom_fileDotEnv"
|
||||
|
||||
_loggers_debug "${FUNCTION_NAME}" "LOCAL_FILE_DOT_ENV: ${LOCAL_FILE_DOT_ENV}"
|
||||
|
||||
_base_exportEnvVariablesFrom_file "${LOCAL_FILE_DOT_ENV}"
|
||||
}
|
||||
+40
@@ -0,0 +1,40 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
. ./.scripts/base/lib/local-storage/-ensure-existance-file.sh
|
||||
|
||||
. ./.scripts/base/lib/-export-env-variable.sh
|
||||
|
||||
. ./.scripts/base/lib/-get-env-variable-key-from-line.sh
|
||||
. ./.scripts/base/lib/-get-env-variable-value-from-line.sh
|
||||
|
||||
_base_exportEnvVariablesFrom_file() {
|
||||
local FUNCTION_NAME="_base_exportEnvVariablesFrom_file"
|
||||
local FILE_RELATIVE_PATH=${1}
|
||||
|
||||
_loggers_trace "${FUNCTION_NAME}" "FILE_RELATIVE_PATH: ${FILE_RELATIVE_PATH}"
|
||||
_base_localStorage_ensureExistance_file "${FILE_RELATIVE_PATH}"
|
||||
|
||||
while read TMP_FILE_ENV_LINE; do
|
||||
if
|
||||
[ ! -z "${TMP_FILE_ENV_LINE}" ]
|
||||
then
|
||||
|
||||
local TMP_KEY=$(
|
||||
_base_getEnvVariableKey_fromLine "${TMP_FILE_ENV_LINE}"
|
||||
)
|
||||
local TMP_VALUE=$(
|
||||
_base_getEnvVariableValue_fromLine "${TMP_FILE_ENV_LINE}"
|
||||
)
|
||||
_base_exportEnvVariable "${TMP_KEY}" "${TMP_VALUE}"
|
||||
|
||||
fi
|
||||
done <"${FILE_RELATIVE_PATH}"
|
||||
}
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
_base_getEnvVariableKey_fromLine() {
|
||||
local FUNCTION_NAME="_base_getEnvVariableKey_fromLine"
|
||||
|
||||
local PARAM_LINE="${1}"
|
||||
_loggers_trace "${FUNCTION_NAME}" "PARAM_LINE: ${PARAM_LINE}"
|
||||
|
||||
local RET_VAL=$(
|
||||
echo "${PARAM_LINE}" | awk -F "=" '{print $1}'
|
||||
)
|
||||
_loggers_trace "${FUNCTION_NAME}" "RET_VAL: ${RET_VAL}"
|
||||
|
||||
echo "${RET_VAL}"
|
||||
}
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
_base_getEnvVariableValue_fromLine() {
|
||||
local FUNCTION_NAME="_base_getEnvVariableValue_fromLine"
|
||||
local TMP_LINE="${1}"
|
||||
local RET_VAL=$(
|
||||
echo $TMP_LINE | awk -F "=" '{print $2}'
|
||||
)
|
||||
RET_VAL=$(
|
||||
echo "${RET_VAL}" | sed 's/^"\(.*\)"$/\1/'
|
||||
)
|
||||
_loggers_trace "${FUNCTION_NAME}" "RET_VAL: ${RET_VAL}"
|
||||
echo "${RET_VAL}"
|
||||
}
|
||||
Executable
+19
@@ -0,0 +1,19 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
_base_logEnvVars() {
|
||||
local FUNCTION_NAME="_base_logEnvVars"
|
||||
_loggers_debug "${FUNCTION_NAME}"
|
||||
|
||||
_loggers_info "${FUNCTION_NAME}" "LOCAL_OS_TYPE: ${LOCAL_OS_TYPE}"
|
||||
_loggers_info "${FUNCTION_NAME}" "LOCAL_CPU_TYPE: ${LOCAL_CPU_TYPE}"
|
||||
_loggers_info "${FUNCTION_NAME}" "LOCAL_HOME_DIR: ${LOCAL_HOME_DIR}"
|
||||
_loggers_info "${FUNCTION_NAME}" "LOCAL_FILE_DOT_ENV: ${LOCAL_FILE_DOT_ENV}"
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
prompt_for_env_var() {
|
||||
local var_name="$1"
|
||||
local function_name="${FUNCNAME[1]:-unknown_function}"
|
||||
|
||||
if [ -z "${!var_name}" ]; then
|
||||
while true; do
|
||||
_loggers_emptyLine
|
||||
echo -e "Provide a value for ${var_name} environment variable!\n"
|
||||
read -rep "> " tmp_value
|
||||
|
||||
if [ -n "${tmp_value}" ]; then
|
||||
export "${var_name}=${tmp_value}"
|
||||
export ENV_VAR_KEY="${var_name}"
|
||||
export ENV_VAR_VALUE="${tmp_value}"
|
||||
_base_localStorage_saveEnvVariable2_fileDotEnv
|
||||
break
|
||||
else
|
||||
_loggers_emptyLine
|
||||
_loggers_warn "${function_name}" "Provided value cannot be empty!"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
_loggers_debug "${function_name}" "${var_name}: *REDACTED*"
|
||||
}
|
||||
|
||||
Executable
+22
@@ -0,0 +1,22 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/base/lib/local-storage/-ensure-existance-file-dot-env.sh
|
||||
. ./.scripts/base/lib/local-storage/-ensure-existance-file.sh
|
||||
|
||||
. ./.scripts/base/lib/local-storage/-read-lines-from-file-dot-env.sh
|
||||
. ./.scripts/base/lib/local-storage/-read-lines-from-file.sh
|
||||
|
||||
. ./.scripts/base/lib/local-storage/-reset-file-dot-env.sh
|
||||
. ./.scripts/base/lib/local-storage/-reset-file.sh
|
||||
|
||||
. ./.scripts/base/lib/local-storage/-save-env-variable-2-file-dot-env.sh
|
||||
. ./.scripts/base/lib/local-storage/-save-env-variable-2-file.sh
|
||||
|
||||
. ./.scripts/base/lib/local-storage/-view-file-dot-env.sh
|
||||
. ./.scripts/base/lib/local-storage/-view-file.sh
|
||||
@@ -0,0 +1,22 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
. ./.scripts/base/lib/local-storage/-ensure-existance-file.sh
|
||||
|
||||
_base_localStorage_ensureExistance_fileDotEnv() {
|
||||
local FUNCTION_NAME="_base_localStorage_ensureExistance_fileDotEnv"
|
||||
_loggers_debug "${FUNCTION_NAME}"
|
||||
|
||||
_loggers_info "${FUNCTION_NAME}" "LOCAL_FILE_DOT_ENV: ${LOCAL_FILE_DOT_ENV}"
|
||||
_loggers_info "${FUNCTION_NAME}" "LOCAL_FILE_DOT_ENV (absolute): ${LOCAL_HOME_DIR}/${LOCAL_FILE_DOT_ENV}"
|
||||
|
||||
_base_localStorage_ensureExistance_file "${LOCAL_FILE_DOT_ENV}"
|
||||
|
||||
}
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
_base_localStorage_ensureExistance_file() {
|
||||
local FUNCTION_NAME="_base_localStorage_ensureExistance_file"
|
||||
# _loggers_info "${FUNCTION_NAME}"
|
||||
|
||||
local FILE_RELATIVE_PATH="${1}"
|
||||
|
||||
if
|
||||
[ -z "${FILE_RELATIVE_PATH}" ]
|
||||
then
|
||||
_loggers_error "${FUNCTION_NAME}"
|
||||
_loggers_error "${FUNCTION_NAME}" "Missing mandatory 1st paramter (FILE_RELATIVE_PATH)!"
|
||||
_loggers_error "${FUNCTION_NAME}"
|
||||
exit 1
|
||||
fi
|
||||
if
|
||||
[ ! -e "${FILE_RELATIVE_PATH}" ]
|
||||
then
|
||||
touch "${FILE_RELATIVE_PATH}"
|
||||
_loggers_warn "${FUNCTION_NAME}"
|
||||
_loggers_warn "${FUNCTION_NAME}" "Was absent -> had to create!"
|
||||
_loggers_warn "${FUNCTION_NAME}"
|
||||
fi
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
. ./.scripts/base/lib/local-storage/-ensure-existance-file.sh
|
||||
|
||||
_base_localStorage_readLinesFrom_fileDotEnv() {
|
||||
local FUNCTION_NAME="_base_localStorage_readLinesFrom_fileDotEnv"
|
||||
_loggers_debug "${FUNCTION_NAME}"
|
||||
|
||||
_loggers_info "${FUNCTION_NAME}" "LOCAL_FILE_DOT_ENV: ${LOCAL_FILE_DOT_ENV}"
|
||||
_loggers_info "${FUNCTION_NAME}" "LOCAL_FILE_DOT_ENV (absolute): ${LOCAL_HOME_DIR}/${LOCAL_FILE_DOT_ENV}"
|
||||
|
||||
local RET_VAL=$(
|
||||
_base_localStorage_readLinesFrom_file "${LOCAL_FILE_DOT_ENV}"
|
||||
)
|
||||
_loggers_emptyLine
|
||||
|
||||
echo "${RET_VAL[@]}"
|
||||
}
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
. ./.scripts/base/lib/local-storage/-ensure-existance-file.sh
|
||||
|
||||
_base_localStorage_readLinesFrom_file() {
|
||||
local FUNCTION_NAME="_base_localStorage_readLinesFrom_file"
|
||||
_loggers_debug "${FUNCTION_NAME}"
|
||||
|
||||
local FILE_RELATIVE_PATH="${1}"
|
||||
|
||||
_base_localStorage_ensureExistance_file "${FILE_RELATIVE_PATH}"
|
||||
|
||||
local RET_VAL=()
|
||||
|
||||
while
|
||||
read -r TMP_FILE_LINE
|
||||
do
|
||||
if
|
||||
[ ! -z "${TMP_FILE_LINE}" ]
|
||||
then
|
||||
RET_VAL+=($TMP_FILE_LINE)
|
||||
fi
|
||||
|
||||
done <"${FILE_RELATIVE_PATH}"
|
||||
|
||||
echo "${RET_VAL[*]}"
|
||||
}
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
. ./.scripts/base/lib/local-storage/-reset-file.sh
|
||||
|
||||
_base_localStorage_reset_fileDotEnv() {
|
||||
local FUNCTION_NAME="_base_localStorage_reset_fileDotEnv"
|
||||
_loggers_debug "${FUNCTION_NAME}"
|
||||
|
||||
_loggers_info "${FUNCTION_NAME}" "LOCAL_FILE_DOT_ENV: ${LOCAL_FILE_DOT_ENV}"
|
||||
_loggers_info "${FUNCTION_NAME}" "LOCAL_FILE_DOT_ENV (absolute): ${LOCAL_HOME_DIR}/${LOCAL_FILE_DOT_ENV}"
|
||||
|
||||
_base_localStorage_reset_file "${LOCAL_FILE_DOT_ENV}"
|
||||
}
|
||||
Executable
+29
@@ -0,0 +1,29 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
_base_localStorage_reset_file() {
|
||||
local FUNCTION_NAME="_base_localStorage_reset_file"
|
||||
_loggers_debug "${FUNCTION_NAME}"
|
||||
|
||||
local FILE_RELATIVE_PATH="${1}"
|
||||
|
||||
if
|
||||
[ -z "${FILE_RELATIVE_PATH}" ]
|
||||
then
|
||||
_loggers_error "${FUNCTION_NAME}"
|
||||
_loggers_error "${FUNCTION_NAME}" "Missing mandatory 1st paramter (FILE_RELATIVE_PATH)!"
|
||||
_loggers_error "${FUNCTION_NAME}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
rm "${FILE_RELATIVE_PATH}"
|
||||
|
||||
touch "${FILE_RELATIVE_PATH}"
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
. ./.scripts/base/lib/local-storage/-save-env-variable-2-file.sh
|
||||
|
||||
_base_localStorage_saveEnvVariable2_fileDotEnv() {
|
||||
local FUNCTION_NAME="_base_localStorage_saveEnvVariable2_fileDotEnv"
|
||||
_loggers_debug "${FUNCTION_NAME}"
|
||||
|
||||
_loggers_info "${FUNCTION_NAME}" "LOCAL_FILE_DOT_ENV: ${LOCAL_FILE_DOT_ENV}"
|
||||
_loggers_info "${FUNCTION_NAME}" "LOCAL_FILE_DOT_ENV (absolute): ${LOCAL_HOME_DIR}/${LOCAL_FILE_DOT_ENV}"
|
||||
|
||||
_base_localStorage_saveEnvVariable2_file "${LOCAL_FILE_DOT_ENV}"
|
||||
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
. ./.scripts/base/lib/-ensure-env-var-key.sh
|
||||
. ./.scripts/base/lib/-ensure-env-var-value.sh
|
||||
|
||||
. ./.scripts/base/lib/-get-env-variable-key-from-line.sh
|
||||
|
||||
. ./.scripts/base/lib/local-storage/-ensure-existance-file.sh
|
||||
. ./.scripts/base/lib/local-storage/-read-lines-from-file.sh
|
||||
. ./.scripts/base/lib/local-storage/-reset-file.sh
|
||||
|
||||
_base_localStorage_saveEnvVariable2_file() {
|
||||
local FUNCTION_NAME="_base_localStorage_saveEnvVariable2_file"
|
||||
_loggers_debug "${FUNCTION_NAME}"
|
||||
|
||||
_base_ensure_evnVarKey
|
||||
_base_ensure_evnVarValue
|
||||
|
||||
local FILE_RELATIVE_PATH="${1}"
|
||||
_base_localStorage_ensureExistance_file "${FILE_RELATIVE_PATH}"
|
||||
|
||||
local PARAM_ENV_VAR_KEY="${ENV_VAR_KEY}"
|
||||
local PARAM_ENV_VAR_VALUE="${ENV_VAR_VALUE}"
|
||||
|
||||
_loggers_debug "${FUNCTION_NAME}" "ENV_VAR_KEY: ${ENV_VAR_KEY}"
|
||||
_loggers_debug "${FUNCTION_NAME}" "ENV_VAR_VALUE: ${ENV_VAR_VALUE}"
|
||||
|
||||
local FILE_LINES=$(cat "$FILE_RELATIVE_PATH")
|
||||
|
||||
_base_localStorage_reset_file "${FILE_RELATIVE_PATH}"
|
||||
|
||||
local TMP_KEY_STATUS=""
|
||||
|
||||
echo "$FILE_LINES" | while IFS= read -r FILE_LINE; do
|
||||
local TMP_ENV_VAR_KEY=$(
|
||||
_base_getEnvVariableKey_fromLine "${FILE_LINE}"
|
||||
)
|
||||
if
|
||||
[ "${PARAM_ENV_VAR_KEY}" = "${TMP_ENV_VAR_KEY}" ]
|
||||
then
|
||||
echo "${PARAM_ENV_VAR_KEY}=\"${PARAM_ENV_VAR_VALUE}\"" >>"${FILE_RELATIVE_PATH}"
|
||||
TMP_KEY_STATUS="REPLACED"
|
||||
else
|
||||
echo "${FILE_LINE}" >>"${FILE_RELATIVE_PATH}"
|
||||
fi
|
||||
done
|
||||
|
||||
if
|
||||
[ ! "${TMP_KEY_STATUS}" = "REPLACED" ]
|
||||
then
|
||||
echo "${PARAM_ENV_VAR_KEY}=\"${PARAM_ENV_VAR_VALUE}\"" >>"${FILE_RELATIVE_PATH}"
|
||||
fi
|
||||
|
||||
}
|
||||
+25
@@ -0,0 +1,25 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
. ./.scripts/base/lib/local-storage/-ensure-existance-file-dot-env.sh
|
||||
. ./.scripts/base/lib/local-storage/-view-file.sh
|
||||
|
||||
_base_localStorage_view_fileDotEnv() {
|
||||
local FUNCTION_NAME="_base_localStorage_view_fileDotEnv"
|
||||
_loggers_debug "${FUNCTION_NAME}"
|
||||
|
||||
_loggers_info "${FUNCTION_NAME}" "LOCAL_FILE_DOT_ENV: ${LOCAL_FILE_DOT_ENV}"
|
||||
_loggers_info "${FUNCTION_NAME}" "LOCAL_FILE_DOT_ENV (absolute): ${LOCAL_HOME_DIR}/${LOCAL_FILE_DOT_ENV}"
|
||||
|
||||
_base_localStorage_ensureExistance_file "${LOCAL_FILE_DOT_ENV}"
|
||||
|
||||
_base_localStorage_view_file "${LOCAL_FILE_DOT_ENV}"
|
||||
|
||||
}
|
||||
Executable
+30
@@ -0,0 +1,30 @@
|
||||
#!/bin/bash
|
||||
# -------------------------------------------------------------------------------------
|
||||
# IBM Confidential
|
||||
# 6949-70F, 6949-80D
|
||||
# © Copyright IBM Corp. 2018, 2024
|
||||
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
|
||||
# -------------------------------------------------------------------------------------
|
||||
|
||||
. ./.scripts/loggers/lib/--index-api.sh
|
||||
|
||||
_base_localStorage_view_file() {
|
||||
local FUNCTION_NAME="_base_localStorage_view_file"
|
||||
_loggers_debug "${FUNCTION_NAME}"
|
||||
|
||||
local FILE_RELATIVE_PATH="${1}"
|
||||
|
||||
if
|
||||
[ -z "${FILE_RELATIVE_PATH}" ]
|
||||
then
|
||||
_loggers_error "${FUNCTION_NAME}"
|
||||
_loggers_error "${FUNCTION_NAME}" "Missing mandatory 1st paramter (FILE_RELATIVE_PATH)!"
|
||||
_loggers_error "${FUNCTION_NAME}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
_loggers_emptyLine
|
||||
cat "${FILE_RELATIVE_PATH}"
|
||||
_loggers_emptyLine
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user