From a299d285e68b5394e00cad045f6d3356eba42209 Mon Sep 17 00:00:00 2001 From: Ameer Hamza Khan Date: Thu, 7 Aug 2025 09:04:50 +0000 Subject: [PATCH] Enhance entrypoint script to support legacy COMMAND_INIT and COMMAND_EXIT variables, allowing for backward compatibility and execution of multiple user-defined exit and initialization commands in order. --- scripts/entrypoint.sh | 30 ++++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/scripts/entrypoint.sh b/scripts/entrypoint.sh index 136454c..66f068a 100755 --- a/scripts/entrypoint.sh +++ b/scripts/entrypoint.sh @@ -28,7 +28,20 @@ term_handler() { fi # Run user-defined exit commands - eval "$COMMAND_EXIT" + # First run the legacy COMMAND_EXIT for backward compatibility + if [[ -n "$COMMAND_EXIT" ]]; then + eval "$COMMAND_EXIT" + fi + + # Then run numbered COMMAND_EXIT variables in order + for i in {01..99}; do + var_name="COMMAND_EXIT$i" + var_value="${!var_name}" + if [[ -n "$var_value" ]]; then + echo "Running $var_name..." + eval "$var_value" + fi + done echo "Cleanup completed, exiting..." exit 0 @@ -53,7 +66,20 @@ echo "Starting SSH service..." sudo service ssh start # Run initialization commands -eval "$COMMAND_INIT" +# First run the legacy COMMAND_INIT for backward compatibility +if [[ -n "$COMMAND_INIT" ]]; then + eval "$COMMAND_INIT" +fi + +# Then run numbered COMMAND_INIT variables in order +for i in {01..99}; do + var_name="COMMAND_INIT$i" + var_value="${!var_name}" + if [[ -n "$var_value" ]]; then + echo "Running $var_name..." + eval "$var_value" + fi +done # Start the main process loop if [[ $LOG_FILE == "/dev/null" ]]; then