This commit is contained in:
anki-code 2020-03-15 17:24:53 +03:00
parent e236ce2ac7
commit f9c65d7806

View File

@ -9,8 +9,9 @@
# -c <command> Execute command on host, print the result and exit
# -v <level> Verbose mode: 1 - verbose, 2 - super verbose
# -e <NAME=B64> -e ... Environement variables (B64 is base64 encoded string)
# -b <BASE64> -b ... Base64 encoded bash command
#
while getopts f:c:v:e: option
while getopts f:c:v:e:b: option
do
case "${option}"
in
@ -18,6 +19,7 @@ f) EXECUTE_FILE=${OPTARG};;
c) EXECUTE_COMMAND=${OPTARG};;
v) VERBOSE=${OPTARG};;
e) ENV+=("$OPTARG");;
b) EBASH+=("$OPTARG");;
esac
done
@ -30,13 +32,22 @@ for env in "${ENV[@]}"; do
val="$( cut -d '=' -f 2- <<< "$env" )";
val=`echo $val | base64 -d`
if [[ $XXH_VERBOSE == '1' ]]; then
if [[ $XXH_VERBOSE == '1' || $XXH_VERBOSE == '2' ]]; then
echo Environment variable "$env": name=$name, value=$val
fi
export $name="$val"
done
for eb in "${EBASH[@]}"; do
bash_command=`echo $eb | base64 -d`
if [[ $XXH_VERBOSE == '1' || $XXH_VERBOSE == '2' ]]; then
echo Entrypoint bash execute: $bash_command
fi
eval $bash_command
done
## Example disabling option:
#if [[ $EXECUTE_COMMAND ]]; then
# echo '<THIS> entrypoint is not support command execution.'
@ -71,4 +82,4 @@ export XXH_HOME=`realpath -m $CURRENT_DIR/../../../../`
./your_portable_shell
# Example:
# ./your_portable_shell $EXECUTE_FILE "${EXECUTE_COMMAND[@]}"
# ./your_portable_shell $EXECUTE_FILE "${EXECUTE_COMMAND[@]}"