mirror of
				https://github.com/casjaysdevdocker/gitea
				synced 2025-11-04 01:02:42 -05:00 
			
		
		
		
	🗃️ Committing everything that changed 🗃️
	
		
			
	
		
	
	
		
	
		
			Some checks failed
		
		
	
	
		
			
				
	
				release-tag / release-image (push) Has been cancelled
				
			
		
		
	
	
				
					
				
			
		
			Some checks failed
		
		
	
	release-tag / release-image (push) Has been cancelled
				
			rootfs/usr/local/etc/docker/init.d/zz-act_runner.sh
This commit is contained in:
		@@ -38,47 +38,40 @@ SCRIPT_FILE="$0"
 | 
				
			|||||||
SERVICE_NAME="act_runner"
 | 
					SERVICE_NAME="act_runner"
 | 
				
			||||||
SCRIPT_NAME="$(basename "$SCRIPT_FILE" 2>/dev/null)"
 | 
					SCRIPT_NAME="$(basename "$SCRIPT_FILE" 2>/dev/null)"
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# exit if __start_init_scripts function hasn't been Initialized
 | 
					 | 
				
			||||||
if [ ! -f "/run/__start_init_scripts.pid" ]; then
 | 
					 | 
				
			||||||
  echo "__start_init_scripts function hasn't been Initialized" >&2
 | 
					 | 
				
			||||||
  SERVICE_IS_RUNNING="no"
 | 
					 | 
				
			||||||
  exit 1
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					 | 
				
			||||||
# import the functions file
 | 
					# import the functions file
 | 
				
			||||||
if [ -f "/usr/local/etc/docker/functions/entrypoint.sh" ]; then
 | 
					if [ -f "/usr/local/etc/docker/functions/entrypoint.sh" ]; then
 | 
				
			||||||
  . "/usr/local/etc/docker/functions/entrypoint.sh"
 | 
						. "/usr/local/etc/docker/functions/entrypoint.sh"
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# import variables
 | 
					# import variables
 | 
				
			||||||
for set_env in "/root/env.sh" "/usr/local/etc/docker/env"/*.sh "/config/env"/*.sh; do
 | 
					for set_env in "/root/env.sh" "/usr/local/etc/docker/env"/*.sh "/config/env"/*.sh; do
 | 
				
			||||||
  [ -f "$set_env" ] && . "$set_env"
 | 
						[ -f "$set_env" ] && . "$set_env"
 | 
				
			||||||
done
 | 
					done
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
printf '%s\n' "# - - - Initializing $SERVICE_NAME - - - #"
 | 
					printf '%s\n' "# - - - Initializing $SERVICE_NAME - - - #"
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# Custom functions
 | 
					# Custom functions
 | 
				
			||||||
__gen_auth_token() {
 | 
					__gen_auth_token() {
 | 
				
			||||||
  local user conf_file auth_token token_dir gitea_bin exitCode
 | 
						local user conf_file auth_token token_dir gitea_bin exitCode
 | 
				
			||||||
  exitCode=1
 | 
						exitCode=1
 | 
				
			||||||
  user="${GITEA_USER:-git}"
 | 
						user="${GITEA_USER:-git}"
 | 
				
			||||||
  token_dir="$CONF_DIR/tokens"
 | 
						token_dir="$CONF_DIR/tokens"
 | 
				
			||||||
  gitea_bin="$(command -v gitea)"
 | 
						gitea_bin="$(command -v gitea)"
 | 
				
			||||||
  mkdir -p "$token_dir" >/dev/null 2>&1
 | 
						mkdir -p "$token_dir" >/dev/null 2>&1
 | 
				
			||||||
  conf_file="$(find "/config" "/etc" -type f -name '*.ini' 2>/dev/null | grep -E 'git/app.ini|gitea/app.ini|gitea.ini' | head -n1 | grep '^')"
 | 
						conf_file="$(find "/config" "/etc" -type f -name '*.ini' 2>/dev/null | grep -E 'git/app.ini|gitea/app.ini|gitea.ini' | head -n1 | grep '^')"
 | 
				
			||||||
  if [ -n "$SYS_AUTH_TOKEN" ]; then
 | 
						if [ -n "$SYS_AUTH_TOKEN" ]; then
 | 
				
			||||||
    auth_token="$SYS_AUTH_TOKEN"
 | 
							auth_token="$SYS_AUTH_TOKEN"
 | 
				
			||||||
  elif [ -s "$CONF_DIR/tokens/system" ]; then
 | 
						elif [ -s "$CONF_DIR/tokens/system" ]; then
 | 
				
			||||||
    auth_token="$(<"$CONF_DIR/tokens/system")"
 | 
							auth_token="$(<"$CONF_DIR/tokens/system")"
 | 
				
			||||||
  fi
 | 
						fi
 | 
				
			||||||
  auth_token="$(echo "$auth_token" | grep -vE '# |^$')"
 | 
						auth_token="$(echo "$auth_token" | grep -vE '# |^$')"
 | 
				
			||||||
  auth_token="${auth_token:-$(gosu $user $gitea_bin --config "$conf_file" actions generate-runner-token 2>/dev/null | grep -vE '\.\.\.|# |^$')}"
 | 
						auth_token="${auth_token:-$(gosu $user $gitea_bin --config "$conf_file" actions generate-runner-token 2>/dev/null | grep -vE '\.\.\.|# |^$')}"
 | 
				
			||||||
  if [ -n "$auth_token" ]; then
 | 
						if [ -n "$auth_token" ]; then
 | 
				
			||||||
    exitCode=0
 | 
							exitCode=0
 | 
				
			||||||
    echo "$auth_token"
 | 
							echo "$auth_token"
 | 
				
			||||||
    echo "$auth_token" >"$CONF_DIR/tokens/system"
 | 
							echo "$auth_token" >"$CONF_DIR/tokens/system"
 | 
				
			||||||
  fi
 | 
						fi
 | 
				
			||||||
  return $exitCode
 | 
						return $exitCode
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# Script to execute
 | 
					# Script to execute
 | 
				
			||||||
@@ -225,31 +218,31 @@ CACHE_CONFIG_FILE="${CACHE_CONFIG_FILE:-$ETC_DIR/cache_server.yaml}"
 | 
				
			|||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# Custom prerun functions - IE setup WWW_ROOT_DIR
 | 
					# Custom prerun functions - IE setup WWW_ROOT_DIR
 | 
				
			||||||
__execute_prerun() {
 | 
					__execute_prerun() {
 | 
				
			||||||
  # Setup /config directories
 | 
						# Setup /config directories
 | 
				
			||||||
  __init_config_etc
 | 
						__init_config_etc
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # Define other actions/commands
 | 
						# Define other actions/commands
 | 
				
			||||||
  while :; do
 | 
						while :; do
 | 
				
			||||||
    pgrep gitea >/dev/null && break || { echo "Waiting for gitea to start before continuing" >&2 && sleep 60; }
 | 
							pgrep gitea >/dev/null && break || { echo "Waiting for gitea to start before continuing" >&2 && sleep 60; }
 | 
				
			||||||
  done
 | 
						done
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# Run any pre-execution checks
 | 
					# Run any pre-execution checks
 | 
				
			||||||
__run_pre_execute_checks() {
 | 
					__run_pre_execute_checks() {
 | 
				
			||||||
  # Set variables
 | 
						# Set variables
 | 
				
			||||||
  local exitStatus=0
 | 
						local exitStatus=0
 | 
				
			||||||
  local pre_execute_checks_MessageST="Running preexecute check for $SERVICE_NAME"   # message to show at start
 | 
						local pre_execute_checks_MessageST="Running preexecute check for $SERVICE_NAME"   # message to show at start
 | 
				
			||||||
  local pre_execute_checks_MessageEnd="Finished preexecute check for $SERVICE_NAME" # message to show at completion
 | 
						local pre_execute_checks_MessageEnd="Finished preexecute check for $SERVICE_NAME" # message to show at completion
 | 
				
			||||||
  __banner "$pre_execute_checks_MessageST"
 | 
						__banner "$pre_execute_checks_MessageST"
 | 
				
			||||||
  # Put command to execute in parentheses
 | 
						# Put command to execute in parentheses
 | 
				
			||||||
  {
 | 
						{
 | 
				
			||||||
    [ -d "$CONF_DIR/reg" ] || mkdir -p "$CONF_DIR/reg"
 | 
							[ -d "$CONF_DIR/reg" ] || mkdir -p "$CONF_DIR/reg"
 | 
				
			||||||
    [ -d "$DATA_DIR/cache" ] || mkdir -p "$DATA_DIR/cache"
 | 
							[ -d "$DATA_DIR/cache" ] || mkdir -p "$DATA_DIR/cache"
 | 
				
			||||||
    [ -d "$CONF_DIR/tokens" ] || mkdir -p "$CONF_DIR/tokens"
 | 
							[ -d "$CONF_DIR/tokens" ] || mkdir -p "$CONF_DIR/tokens"
 | 
				
			||||||
    if [ -f "$RUNNER_CONFIG_DEFAULT" ]; then
 | 
							if [ -f "$RUNNER_CONFIG_DEFAULT" ]; then
 | 
				
			||||||
      if [ ! -f "$CONF_DIR/reg/default.sample" ]; then
 | 
								if [ ! -f "$CONF_DIR/reg/default.sample" ]; then
 | 
				
			||||||
        echo "A sample registration file can be found in: $CONF_DIR/reg/default.sample" >/dev/stdout
 | 
									echo "A sample registration file can be found in: $CONF_DIR/reg/default.sample" >/dev/stdout
 | 
				
			||||||
        cat <<EOF >"$CONF_DIR/reg/default.sample"
 | 
									cat <<EOF >"$CONF_DIR/reg/default.sample"
 | 
				
			||||||
#!/usr/bin/env bash
 | 
					#!/usr/bin/env bash
 | 
				
			||||||
# Edit this file and execute it
 | 
					# Edit this file and execute it
 | 
				
			||||||
exitStatus=1
 | 
					exitStatus=1
 | 
				
			||||||
@@ -276,174 +269,175 @@ fi
 | 
				
			|||||||
exit \$exitStatus 
 | 
					exit \$exitStatus 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
EOF
 | 
					EOF
 | 
				
			||||||
      fi
 | 
								fi
 | 
				
			||||||
      #
 | 
								#
 | 
				
			||||||
      mkdir -p "$RUNNER_DEFAULT_HOME" "$TMP_DIR/runners/gitea"
 | 
								mkdir -p "$RUNNER_DEFAULT_HOME" "$TMP_DIR/runners/gitea"
 | 
				
			||||||
      [ -f "$RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME" ] || copy "$RUNNER_CONFIG_DEFAULT" "$RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME"
 | 
								[ -f "$RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME" ] || copy "$RUNNER_CONFIG_DEFAULT" "$RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME"
 | 
				
			||||||
      if [ ! -f "$RUNNER_DEFAULT_HOME/runners" ] && [ -n "$SYS_AUTH_TOKEN" ] && [ -f "$RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME" ]; then
 | 
								if [ ! -f "$RUNNER_DEFAULT_HOME/runners" ] && [ -n "$SYS_AUTH_TOKEN" ] && [ -f "$RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME" ]; then
 | 
				
			||||||
        echo "creating gitea runner in $RUNNER_DEFAULT_HOME and registering with http://$INSTANCE_HOSTNAME"
 | 
									echo "creating gitea runner in $RUNNER_DEFAULT_HOME and registering with http://$INSTANCE_HOSTNAME"
 | 
				
			||||||
        __replace "REPLACE_RUNNER_TEMP" "$TMP_DIR/runners/gitea" "$RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME"
 | 
									__replace "REPLACE_RUNNER_TEMP" "$TMP_DIR/runners/gitea" "$RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME"
 | 
				
			||||||
        __replace "REPLACE_RUNNER_HOME" "$RUNNER_DEFAULT_HOME" "$RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME"
 | 
									__replace "REPLACE_RUNNER_HOME" "$RUNNER_DEFAULT_HOME" "$RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME"
 | 
				
			||||||
        __replace "REPLACE_RUNNER_CACHE_HOST" "$RUNNER_CACHE_HOST" "$RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME"
 | 
									__replace "REPLACE_RUNNER_CACHE_HOST" "$RUNNER_CACHE_HOST" "$RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME"
 | 
				
			||||||
        __replace "REPLACE_RUNNER_CACHE_PORT" "$RUNNER_CACHE_PORT" "$RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME"
 | 
									__replace "REPLACE_RUNNER_CACHE_PORT" "$RUNNER_CACHE_PORT" "$RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME"
 | 
				
			||||||
        act_runner register --config "$RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME" --labels "$RUNNER_LABELS" --name "gitea" --instance "http://$RUNNER_IP_ADDRESS:$GITEA_PORT" --token "$SYS_AUTH_TOKEN" --no-interactive 2>/dev/stdout >>"$RUNNER_LOG_FILE" &
 | 
									act_runner register --config "$RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME" --labels "$RUNNER_LABELS" --name "gitea" --instance "http://$RUNNER_IP_ADDRESS:$GITEA_PORT" --token "$SYS_AUTH_TOKEN" --no-interactive 2>/dev/stdout >>"$RUNNER_LOG_FILE" &
 | 
				
			||||||
      fi
 | 
									echo $! >"$RUN_DIR/act_runner.gitea.pid"
 | 
				
			||||||
    fi
 | 
								fi
 | 
				
			||||||
    exitStatus="${exitStatus:-0}"
 | 
							fi
 | 
				
			||||||
    chown -Rf "$SERVICE_USER":"$SERVICE_GROUP" "$CONF_DIR" "$ETC_DIR" "$DATA_DIR" 2>/dev/null
 | 
							exitStatus="${exitStatus:-0}"
 | 
				
			||||||
    return $exitStatus
 | 
							chown -Rf "$SERVICE_USER":"$SERVICE_GROUP" "$CONF_DIR" "$ETC_DIR" "$DATA_DIR" 2>/dev/null
 | 
				
			||||||
  }
 | 
							return $exitStatus
 | 
				
			||||||
  exitStatus=$?
 | 
						}
 | 
				
			||||||
  __banner "$pre_execute_checks_MessageEnd: Status $exitStatus"
 | 
						exitStatus=$?
 | 
				
			||||||
 | 
						__banner "$pre_execute_checks_MessageEnd: Status $exitStatus"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # show exit message
 | 
						# show exit message
 | 
				
			||||||
  if [ $exitStatus -ne 0 ]; then
 | 
						if [ $exitStatus -ne 0 ]; then
 | 
				
			||||||
    echo "The pre-execution check has failed" >&2
 | 
							echo "The pre-execution check has failed" >&2
 | 
				
			||||||
    [ -f "$SERVICE_PID_FILE" ] && rm -Rf "$SERVICE_PID_FILE"
 | 
							[ -f "$SERVICE_PID_FILE" ] && rm -Rf "$SERVICE_PID_FILE"
 | 
				
			||||||
    exit 1
 | 
							exit 1
 | 
				
			||||||
  fi
 | 
						fi
 | 
				
			||||||
  return $exitStatus
 | 
						return $exitStatus
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# use this function to update config files - IE: change port
 | 
					# use this function to update config files - IE: change port
 | 
				
			||||||
__update_conf_files() {
 | 
					__update_conf_files() {
 | 
				
			||||||
  local exitCode=0                                               # default exit code
 | 
						local exitCode=0                                               # default exit code
 | 
				
			||||||
  local sysname="${SERVER_NAME:-${FULL_DOMAIN_NAME:-$HOSTNAME}}" # set hostname
 | 
						local sysname="${SERVER_NAME:-${FULL_DOMAIN_NAME:-$HOSTNAME}}" # set hostname
 | 
				
			||||||
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
						# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
  # CD into temp to bybass any permission errors
 | 
						# CD into temp to bybass any permission errors
 | 
				
			||||||
  cd /tmp || false # lets keep shellcheck happy by adding false
 | 
						cd /tmp || false # lets keep shellcheck happy by adding false
 | 
				
			||||||
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
						# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
  # delete files
 | 
						# delete files
 | 
				
			||||||
  #__rm ""
 | 
						#__rm ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
						# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
  # custom commands
 | 
						# custom commands
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
						# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
  # replace variables
 | 
						# replace variables
 | 
				
			||||||
  # __replace "" "" "$CONF_DIR/act_runner.conf"
 | 
						# __replace "" "" "$CONF_DIR/act_runner.conf"
 | 
				
			||||||
  # replace variables recursively
 | 
						# replace variables recursively
 | 
				
			||||||
  #  __find_replace "" "" "$CONF_DIR"
 | 
						#  __find_replace "" "" "$CONF_DIR"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
						# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
  # define actions
 | 
						# define actions
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # exit function
 | 
						# exit function
 | 
				
			||||||
  return $exitCode
 | 
						return $exitCode
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# function to run before executing
 | 
					# function to run before executing
 | 
				
			||||||
__pre_execute() {
 | 
					__pre_execute() {
 | 
				
			||||||
  local exitCode=0                                               # default exit code
 | 
						local exitCode=0                                               # default exit code
 | 
				
			||||||
  local sysname="${SERVER_NAME:-${FULL_DOMAIN_NAME:-$HOSTNAME}}" # set hostname
 | 
						local sysname="${SERVER_NAME:-${FULL_DOMAIN_NAME:-$HOSTNAME}}" # set hostname
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # define commands
 | 
						# define commands
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # execute if directories is empty
 | 
						# execute if directories is empty
 | 
				
			||||||
  __is_dir_empty "" && true
 | 
						__is_dir_empty "" && true
 | 
				
			||||||
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
						# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
  # Set permissions
 | 
						# Set permissions
 | 
				
			||||||
  __fix_permissions "$SERVICE_USER" "$SERVICE_GROUP"
 | 
						__fix_permissions "$SERVICE_USER" "$SERVICE_GROUP"
 | 
				
			||||||
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
						# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
  # Copy /config to /etc
 | 
						# Copy /config to /etc
 | 
				
			||||||
  for config_2_etc in $CONF_DIR $ADDITIONAL_CONFIG_DIRS; do
 | 
						for config_2_etc in $CONF_DIR $ADDITIONAL_CONFIG_DIRS; do
 | 
				
			||||||
    __initialize_system_etc "$config_2_etc" 2>/dev/stderr | tee -p -a "$LOG_DIR/init.txt"
 | 
							__initialize_system_etc "$config_2_etc" 2>/dev/stderr | tee -p -a "$LOG_DIR/init.txt"
 | 
				
			||||||
  done
 | 
						done
 | 
				
			||||||
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
						# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
  # Replace variables
 | 
						# Replace variables
 | 
				
			||||||
  HOSTNAME="$sysname" __initialize_replace_variables "$ETC_DIR" "$CONF_DIR" "$WWW_ROOT_DIR"
 | 
						HOSTNAME="$sysname" __initialize_replace_variables "$ETC_DIR" "$CONF_DIR" "$WWW_ROOT_DIR"
 | 
				
			||||||
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
						# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
  # unset unneeded variables
 | 
						# unset unneeded variables
 | 
				
			||||||
  unset filesperms filename config_2_etc change_user change_user ADDITIONAL_CONFIG_DIRS application_files filedirs
 | 
						unset filesperms filename config_2_etc change_user change_user ADDITIONAL_CONFIG_DIRS application_files filedirs
 | 
				
			||||||
  # Lets wait a few seconds before continuing
 | 
						# Lets wait a few seconds before continuing
 | 
				
			||||||
  sleep 5
 | 
						sleep 5
 | 
				
			||||||
  return $exitCode
 | 
						return $exitCode
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# function to run after executing
 | 
					# function to run after executing
 | 
				
			||||||
__post_execute() {
 | 
					__post_execute() {
 | 
				
			||||||
  local pid=""                                                    # init pid var
 | 
						local pid=""                                                    # init pid var
 | 
				
			||||||
  local retVal=0                                                  # set default exit code
 | 
						local retVal=0                                                  # set default exit code
 | 
				
			||||||
  local waitTime=60                                               # how long to wait before executing
 | 
						local waitTime=60                                               # how long to wait before executing
 | 
				
			||||||
  local postMessageST="Running post commands for $SERVICE_NAME"   # message to show at start
 | 
						local postMessageST="Running post commands for $SERVICE_NAME"   # message to show at start
 | 
				
			||||||
  local postMessageEnd="Finished post commands for $SERVICE_NAME" # message to show at completion
 | 
						local postMessageEnd="Finished post commands for $SERVICE_NAME" # message to show at completion
 | 
				
			||||||
  local sysname="${SERVER_NAME:-${FULL_DOMAIN_NAME:-$HOSTNAME}}"  # set hostname
 | 
						local sysname="${SERVER_NAME:-${FULL_DOMAIN_NAME:-$HOSTNAME}}"  # set hostname
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # wait
 | 
						# wait
 | 
				
			||||||
  sleep $waitTime
 | 
						sleep $waitTime
 | 
				
			||||||
  # execute commands
 | 
						# execute commands
 | 
				
			||||||
  (
 | 
						(
 | 
				
			||||||
    # show message
 | 
							# show message
 | 
				
			||||||
    __banner "$postMessageST"
 | 
							__banner "$postMessageST"
 | 
				
			||||||
    # commands to execute
 | 
							# commands to execute
 | 
				
			||||||
    if [ -f "$RUNNER_DEFAULT_HOME/runners" ] && [ -f "$RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME" ]; then
 | 
							if [ -f "$RUNNER_DEFAULT_HOME/runners" ] && [ -f "$RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME" ]; then
 | 
				
			||||||
      act_runner daemon --config $RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME >>"$RUNNER_DAEMON_LOG" 2>/dev/stderr &
 | 
								act_runner daemon --config $RUNNER_DEFAULT_HOME/$RUNNER_CONFIG_NAME >>"$RUNNER_DAEMON_LOG" 2>/dev/stderr &
 | 
				
			||||||
      pid=$!
 | 
								pid=$!
 | 
				
			||||||
      sleep 5
 | 
								sleep 5
 | 
				
			||||||
      if ps ax | awk '{print $1}' | grep -v 'grep' | grep -q "$pid$"; then
 | 
								if ps ax | awk '{print $1}' | grep -v 'grep' | grep -q "$pid$"; then
 | 
				
			||||||
        echo "$(date)" >"$CONF_DIR/.runner"
 | 
									echo "$(date)" >"$CONF_DIR/.runner"
 | 
				
			||||||
        echo "$pid" >"$RUN_DIR/act_runner.gitea.pid"
 | 
									echo "$pid" >"$RUN_DIR/act_runner.gitea.pid"
 | 
				
			||||||
        echo "Runner: gitea has been started with pid: $pid" | tee -a -p "$LOG_DIR/init.txt"
 | 
									echo "Runner: gitea has been started with pid: $pid" | tee -a -p "$LOG_DIR/init.txt"
 | 
				
			||||||
      else
 | 
								else
 | 
				
			||||||
        echo "Runner: gitea has failed to start" >/dev/stderr
 | 
									echo "Runner: gitea has failed to start" >/dev/stderr
 | 
				
			||||||
        [ -f "$RUN_DIR/act_runner.gitea.pid" ] && rm -f "$RUN_DIR/act_runner.gitea.pid"
 | 
									[ -f "$RUN_DIR/act_runner.gitea.pid" ] && rm -f "$RUN_DIR/act_runner.gitea.pid"
 | 
				
			||||||
      fi
 | 
								fi
 | 
				
			||||||
      unset pid
 | 
								unset pid
 | 
				
			||||||
    fi
 | 
							fi
 | 
				
			||||||
    #
 | 
							#
 | 
				
			||||||
    if [ -f "$CACHE_CONFIG_FILE" ]; then
 | 
							if [ -f "$CACHE_CONFIG_FILE" ]; then
 | 
				
			||||||
      mkdir -p "$DATA_DIR/cache"
 | 
								mkdir -p "$DATA_DIR/cache"
 | 
				
			||||||
      __replace "REPLACE_RUNNER_CACHE_DIR" "$DATA_DIR/cache" "$CACHE_CONFIG_FILE"
 | 
								__replace "REPLACE_RUNNER_CACHE_DIR" "$DATA_DIR/cache" "$CACHE_CONFIG_FILE"
 | 
				
			||||||
      __replace "REPLACE_RUNNER_CACHE_PORT" "$RUNNER_CACHE_PORT" "$CACHE_CONFIG_FILE"
 | 
								__replace "REPLACE_RUNNER_CACHE_PORT" "$RUNNER_CACHE_PORT" "$CACHE_CONFIG_FILE"
 | 
				
			||||||
      act_runner cache-server --config $CACHE_CONFIG_FILE 2>>/dev/stderr >>"$CACHE_LOG_FILE" &
 | 
								act_runner cache-server --config $CACHE_CONFIG_FILE 2>>/dev/stderr >>"$CACHE_LOG_FILE" &
 | 
				
			||||||
      execPid=$!
 | 
								execPid=$!
 | 
				
			||||||
      sleep 5
 | 
								sleep 5
 | 
				
			||||||
      if ps ax | awk '{print $1}' | grep -v grep | grep -q "$execPid$"; then
 | 
								if ps ax | awk '{print $1}' | grep -v grep | grep -q "$execPid$"; then
 | 
				
			||||||
        echo "Cache server has been started and is listening on $RUNNER_CACHE_PORT"
 | 
									echo "Cache server has been started and is listening on $RUNNER_CACHE_PORT"
 | 
				
			||||||
      else
 | 
								else
 | 
				
			||||||
        echo "Failed to start the cache server" >&2
 | 
									echo "Failed to start the cache server" >&2
 | 
				
			||||||
      fi
 | 
								fi
 | 
				
			||||||
      unset pid
 | 
								unset pid
 | 
				
			||||||
    fi
 | 
							fi
 | 
				
			||||||
    # show exit message
 | 
							# show exit message
 | 
				
			||||||
    __banner "$postMessageEnd: Status $retVal"
 | 
							__banner "$postMessageEnd: Status $retVal"
 | 
				
			||||||
  ) 2>"/dev/stderr" | tee -p -a "$LOG_DIR/init.txt" &
 | 
						) 2>"/dev/stderr" | tee -p -a "$LOG_DIR/init.txt" &
 | 
				
			||||||
  pid=$!
 | 
						pid=$!
 | 
				
			||||||
  # set exitCode
 | 
						# set exitCode
 | 
				
			||||||
  ps ax | awk '{print $1}' | grep -v grep | grep -q "$execPid$" && retVal=0 || retVal=10
 | 
						ps ax | awk '{print $1}' | grep -v grep | grep -q "$execPid$" && retVal=0 || retVal=10
 | 
				
			||||||
  return $retVal
 | 
						return $retVal
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# use this function to update config files - IE: change port
 | 
					# use this function to update config files - IE: change port
 | 
				
			||||||
__pre_message() {
 | 
					__pre_message() {
 | 
				
			||||||
  local exitCode=0
 | 
						local exitCode=0
 | 
				
			||||||
  if [ -n "$user_name" ] || [ -n "$user_pass" ] || [ -n "$root_user_name" ] || [ -n "$root_user_pass" ]; then
 | 
						if [ -n "$user_name" ] || [ -n "$user_pass" ] || [ -n "$root_user_name" ] || [ -n "$root_user_pass" ]; then
 | 
				
			||||||
    __banner "User info"
 | 
							__banner "User info"
 | 
				
			||||||
    [ -n "$user_name" ] && __printf_space "40" "username:" "$user_name" && echo "$user_name" >"${USER_FILE_PREFIX}/${SERVICE_NAME}_name"
 | 
							[ -n "$user_name" ] && __printf_space "40" "username:" "$user_name" && echo "$user_name" >"${USER_FILE_PREFIX}/${SERVICE_NAME}_name"
 | 
				
			||||||
    [ -n "$user_pass" ] && __printf_space "40" "password:" "saved to ${USER_FILE_PREFIX}/${SERVICE_NAME}_pass" && echo "$user_pass" >"${USER_FILE_PREFIX}/${SERVICE_NAME}_pass"
 | 
							[ -n "$user_pass" ] && __printf_space "40" "password:" "saved to ${USER_FILE_PREFIX}/${SERVICE_NAME}_pass" && echo "$user_pass" >"${USER_FILE_PREFIX}/${SERVICE_NAME}_pass"
 | 
				
			||||||
    [ -n "$root_user_name" ] && __printf_space "40" "root username:" "$root_user_name" && echo "$root_user_name" >"${ROOT_FILE_PREFIX}/${SERVICE_NAME}_name"
 | 
							[ -n "$root_user_name" ] && __printf_space "40" "root username:" "$root_user_name" && echo "$root_user_name" >"${ROOT_FILE_PREFIX}/${SERVICE_NAME}_name"
 | 
				
			||||||
    [ -n "$root_user_pass" ] && __printf_space "40" "root password:" "saved to ${ROOT_FILE_PREFIX}/${SERVICE_NAME}_pass" && echo "$root_user_pass" >"${ROOT_FILE_PREFIX}/${SERVICE_NAME}_pass"
 | 
							[ -n "$root_user_pass" ] && __printf_space "40" "root password:" "saved to ${ROOT_FILE_PREFIX}/${SERVICE_NAME}_pass" && echo "$root_user_pass" >"${ROOT_FILE_PREFIX}/${SERVICE_NAME}_pass"
 | 
				
			||||||
    __banner ""
 | 
							__banner ""
 | 
				
			||||||
  fi
 | 
						fi
 | 
				
			||||||
  [ -n "$PRE_EXEC_MESSAGE" ] && eval echo "$PRE_EXEC_MESSAGE"
 | 
						[ -n "$PRE_EXEC_MESSAGE" ] && eval echo "$PRE_EXEC_MESSAGE"
 | 
				
			||||||
  # execute commands
 | 
						# execute commands
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # set exitCode
 | 
						# set exitCode
 | 
				
			||||||
  return $exitCode
 | 
						return $exitCode
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# use this function to setup ssl support
 | 
					# use this function to setup ssl support
 | 
				
			||||||
__update_ssl_conf() {
 | 
					__update_ssl_conf() {
 | 
				
			||||||
  local exitCode=0
 | 
						local exitCode=0
 | 
				
			||||||
  local sysname="${SERVER_NAME:-${FULL_DOMAIN_NAME:-$HOSTNAME}}" # set hostname
 | 
						local sysname="${SERVER_NAME:-${FULL_DOMAIN_NAME:-$HOSTNAME}}" # set hostname
 | 
				
			||||||
  # execute commands
 | 
						# execute commands
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # set exitCode
 | 
						# set exitCode
 | 
				
			||||||
  return $exitCode
 | 
						return $exitCode
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
__create_service_env() {
 | 
					__create_service_env() {
 | 
				
			||||||
  cat <<EOF | tee -p "/config/env/${SERVICE_NAME:-$SCRIPT_NAME}.sh" &>/dev/null
 | 
						cat <<EOF | tee -p "/config/env/${SERVICE_NAME:-$SCRIPT_NAME}.sh" &>/dev/null
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# root/admin user info [password/random]
 | 
					# root/admin user info [password/random]
 | 
				
			||||||
#ENV_ROOT_USER_NAME="${ENV_ROOT_USER_NAME:-$ACT_RUNNER_ROOT_USER_NAME}"   # root user name
 | 
					#ENV_ROOT_USER_NAME="${ENV_ROOT_USER_NAME:-$ACT_RUNNER_ROOT_USER_NAME}"   # root user name
 | 
				
			||||||
@@ -458,65 +452,65 @@ __create_service_env() {
 | 
				
			|||||||
#user_pass="${ENV_USER_PASS:-$user_pass}"                                             # normal user password
 | 
					#user_pass="${ENV_USER_PASS:-$user_pass}"                                             # normal user password
 | 
				
			||||||
 | 
					
 | 
				
			||||||
EOF
 | 
					EOF
 | 
				
			||||||
  __file_exists_with_content "/config/env/${SERVICE_NAME:-$SCRIPT_NAME}.sh" || return 1
 | 
						__file_exists_with_content "/config/env/${SERVICE_NAME:-$SCRIPT_NAME}.sh" || return 1
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# script to start server
 | 
					# script to start server
 | 
				
			||||||
__run_start_script() {
 | 
					__run_start_script() {
 | 
				
			||||||
  local runExitCode=0
 | 
						local runExitCode=0
 | 
				
			||||||
  local workdir="$(eval echo "${WORK_DIR:-}")"                   # expand variables
 | 
						local workdir="$(eval echo "${WORK_DIR:-}")"                   # expand variables
 | 
				
			||||||
  local cmd="$(eval echo "${EXEC_CMD_BIN:-}")"                   # expand variables
 | 
						local cmd="$(eval echo "${EXEC_CMD_BIN:-}")"                   # expand variables
 | 
				
			||||||
  local args="$(eval echo "${EXEC_CMD_ARGS:-}")"                 # expand variables
 | 
						local args="$(eval echo "${EXEC_CMD_ARGS:-}")"                 # expand variables
 | 
				
			||||||
  local name="$(eval echo "${EXEC_CMD_NAME:-}")"                 # expand variables
 | 
						local name="$(eval echo "${EXEC_CMD_NAME:-}")"                 # expand variables
 | 
				
			||||||
  local pre="$(eval echo "${EXEC_PRE_SCRIPT:-}")"                # expand variables
 | 
						local pre="$(eval echo "${EXEC_PRE_SCRIPT:-}")"                # expand variables
 | 
				
			||||||
  local extra_env="$(eval echo "${CMD_ENV//,/ }")"               # expand variables
 | 
						local extra_env="$(eval echo "${CMD_ENV//,/ }")"               # expand variables
 | 
				
			||||||
  local lc_type="$(eval echo "${LANG:-${LC_ALL:-$LC_CTYPE}}")"   # expand variables
 | 
						local lc_type="$(eval echo "${LANG:-${LC_ALL:-$LC_CTYPE}}")"   # expand variables
 | 
				
			||||||
  local home="$(eval echo "${workdir//\/root/\/tmp\/docker}")"   # expand variables
 | 
						local home="$(eval echo "${workdir//\/root/\/tmp\/docker}")"   # expand variables
 | 
				
			||||||
  local path="$(eval echo "$PATH")"                              # expand variables
 | 
						local path="$(eval echo "$PATH")"                              # expand variables
 | 
				
			||||||
  local message="$(eval echo "")"                                # expand variables
 | 
						local message="$(eval echo "")"                                # expand variables
 | 
				
			||||||
  local sysname="${SERVER_NAME:-${FULL_DOMAIN_NAME:-$HOSTNAME}}" # set hostname
 | 
						local sysname="${SERVER_NAME:-${FULL_DOMAIN_NAME:-$HOSTNAME}}" # set hostname
 | 
				
			||||||
  [ -f "$CONF_DIR/$SERVICE_NAME.exec_cmd.sh" ] && . "$CONF_DIR/$SERVICE_NAME.exec_cmd.sh"
 | 
						[ -f "$CONF_DIR/$SERVICE_NAME.exec_cmd.sh" ] && . "$CONF_DIR/$SERVICE_NAME.exec_cmd.sh"
 | 
				
			||||||
  #
 | 
						#
 | 
				
			||||||
  __run_pre_execute_checks 2>/dev/stderr | tee -a -p "/data/logs/entrypoint.log" "$LOG_DIR/init.txt" || return 20
 | 
						__run_pre_execute_checks 2>/dev/stderr | tee -a -p "/data/logs/entrypoint.log" "$LOG_DIR/init.txt" || return 20
 | 
				
			||||||
  #
 | 
						#
 | 
				
			||||||
  if [ -z "$cmd" ]; then
 | 
						if [ -z "$cmd" ]; then
 | 
				
			||||||
    __post_execute 2>"/dev/stderr" | tee -p -a "$LOG_DIR/init.txt"
 | 
							__post_execute 2>"/dev/stderr" | tee -p -a "$LOG_DIR/init.txt"
 | 
				
			||||||
    retVal=$?
 | 
							retVal=$?
 | 
				
			||||||
    echo "Initializing $SCRIPT_NAME has completed"
 | 
							echo "Initializing $SCRIPT_NAME has completed"
 | 
				
			||||||
    exit $retVal
 | 
							exit $retVal
 | 
				
			||||||
  else
 | 
						else
 | 
				
			||||||
    # ensure the command exists
 | 
							# ensure the command exists
 | 
				
			||||||
    if [ ! -x "$cmd" ]; then
 | 
							if [ ! -x "$cmd" ]; then
 | 
				
			||||||
      echo "$name is not a valid executable"
 | 
								echo "$name is not a valid executable"
 | 
				
			||||||
      return 2
 | 
								return 2
 | 
				
			||||||
    fi
 | 
							fi
 | 
				
			||||||
    # check and exit if already running
 | 
							# check and exit if already running
 | 
				
			||||||
    if __proc_check "$name" || __proc_check "$cmd"; then
 | 
							if __proc_check "$name" || __proc_check "$cmd"; then
 | 
				
			||||||
      echo "$name is already running" >&2
 | 
								echo "$name is already running" >&2
 | 
				
			||||||
      return 0
 | 
								return 0
 | 
				
			||||||
    else
 | 
							else
 | 
				
			||||||
      # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
								# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
      # show message if env exists
 | 
								# show message if env exists
 | 
				
			||||||
      if [ -n "$cmd" ]; then
 | 
								if [ -n "$cmd" ]; then
 | 
				
			||||||
        [ -n "$SERVICE_USER" ] && echo "Setting up $cmd to run as $SERVICE_USER" || SERVICE_USER="root"
 | 
									[ -n "$SERVICE_USER" ] && echo "Setting up $cmd to run as $SERVICE_USER" || SERVICE_USER="root"
 | 
				
			||||||
        [ -n "$SERVICE_PORT" ] && echo "$name will be running on port $SERVICE_PORT" || SERVICE_PORT=""
 | 
									[ -n "$SERVICE_PORT" ] && echo "$name will be running on port $SERVICE_PORT" || SERVICE_PORT=""
 | 
				
			||||||
      fi
 | 
								fi
 | 
				
			||||||
      if [ -n "$pre" ] && [ -n "$(command -v "$pre" 2>/dev/null)" ]; then
 | 
								if [ -n "$pre" ] && [ -n "$(command -v "$pre" 2>/dev/null)" ]; then
 | 
				
			||||||
        export cmd_exec="$pre $cmd $args"
 | 
									export cmd_exec="$pre $cmd $args"
 | 
				
			||||||
        message="Starting service: $name $args through $pre"
 | 
									message="Starting service: $name $args through $pre"
 | 
				
			||||||
      else
 | 
								else
 | 
				
			||||||
        export cmd_exec="$cmd $args"
 | 
									export cmd_exec="$cmd $args"
 | 
				
			||||||
        message="Starting service: $name $args"
 | 
									message="Starting service: $name $args"
 | 
				
			||||||
      fi
 | 
								fi
 | 
				
			||||||
      [ -n "$su_exec" ] && echo "using $su_exec" | tee -a -p "$LOG_DIR/init.txt"
 | 
								[ -n "$su_exec" ] && echo "using $su_exec" | tee -a -p "$LOG_DIR/init.txt"
 | 
				
			||||||
      echo "$message" | tee -a -p "$LOG_DIR/init.txt"
 | 
								echo "$message" | tee -a -p "$LOG_DIR/init.txt"
 | 
				
			||||||
      su_cmd touch "$SERVICE_PID_FILE"
 | 
								su_cmd touch "$SERVICE_PID_FILE"
 | 
				
			||||||
      __post_execute 2>"/dev/stderr" | tee -p -a "$LOG_DIR/init.txt" &
 | 
								__post_execute 2>"/dev/stderr" | tee -p -a "$LOG_DIR/init.txt" &
 | 
				
			||||||
      if [ "$RESET_ENV" = "yes" ]; then
 | 
								if [ "$RESET_ENV" = "yes" ]; then
 | 
				
			||||||
        env_command="$(echo "env -i HOME=\"$home\" LC_CTYPE=\"$lc_type\" PATH=\"$path\" HOSTNAME=\"$sysname\" USER=\"${SERVICE_USER:-$RUNAS_USER}\" $extra_env")"
 | 
									env_command="$(echo "env -i HOME=\"$home\" LC_CTYPE=\"$lc_type\" PATH=\"$path\" HOSTNAME=\"$sysname\" USER=\"${SERVICE_USER:-$RUNAS_USER}\" $extra_env")"
 | 
				
			||||||
        execute_command="$(__trim "$su_exec $env_command $cmd_exec")"
 | 
									execute_command="$(__trim "$su_exec $env_command $cmd_exec")"
 | 
				
			||||||
        if [ ! -f "$START_SCRIPT" ]; then
 | 
									if [ ! -f "$START_SCRIPT" ]; then
 | 
				
			||||||
          cat <<EOF >"$START_SCRIPT"
 | 
										cat <<EOF >"$START_SCRIPT"
 | 
				
			||||||
#!/usr/bin/env bash
 | 
					#!/usr/bin/env bash
 | 
				
			||||||
trap 'exitCode=\$?;[ \$exitCode -ne 0 ] && [ -f "\$SERVICE_PID_FILE" ] && rm -Rf "\$SERVICE_PID_FILE";exit \$exitCode' EXIT
 | 
					trap 'exitCode=\$?;[ \$exitCode -ne 0 ] && [ -f "\$SERVICE_PID_FILE" ] && rm -Rf "\$SERVICE_PID_FILE";exit \$exitCode' EXIT
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
@@ -534,11 +528,11 @@ checkPID="\$(ps ax | awk '{print \$1}' | grep -v grep | grep "\$execPid$" || fal
 | 
				
			|||||||
exit \$retVal
 | 
					exit \$retVal
 | 
				
			||||||
 | 
					
 | 
				
			||||||
EOF
 | 
					EOF
 | 
				
			||||||
        fi
 | 
									fi
 | 
				
			||||||
      else
 | 
								else
 | 
				
			||||||
        if [ ! -f "$START_SCRIPT" ]; then
 | 
									if [ ! -f "$START_SCRIPT" ]; then
 | 
				
			||||||
          execute_command="$(__trim "$su_exec $cmd_exec")"
 | 
										execute_command="$(__trim "$su_exec $cmd_exec")"
 | 
				
			||||||
          cat <<EOF >"$START_SCRIPT"
 | 
										cat <<EOF >"$START_SCRIPT"
 | 
				
			||||||
#!/usr/bin/env bash
 | 
					#!/usr/bin/env bash
 | 
				
			||||||
trap 'exitCode=\$?;[ \$exitCode -ne 0 ] && [ -f "\$SERVICE_PID_FILE" ] && rm -Rf "\$SERVICE_PID_FILE";exit \$exitCode' EXIT
 | 
					trap 'exitCode=\$?;[ \$exitCode -ne 0 ] && [ -f "\$SERVICE_PID_FILE" ] && rm -Rf "\$SERVICE_PID_FILE";exit \$exitCode' EXIT
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
@@ -556,34 +550,34 @@ checkPID="\$(ps ax | awk '{print \$1}' | grep -v grep | grep "\$execPid$" || fal
 | 
				
			|||||||
exit \$retVal
 | 
					exit \$retVal
 | 
				
			||||||
 | 
					
 | 
				
			||||||
EOF
 | 
					EOF
 | 
				
			||||||
        fi
 | 
									fi
 | 
				
			||||||
      fi
 | 
								fi
 | 
				
			||||||
    fi
 | 
							fi
 | 
				
			||||||
    [ -x "$START_SCRIPT" ] || chmod 755 -Rf "$START_SCRIPT"
 | 
							[ -x "$START_SCRIPT" ] || chmod 755 -Rf "$START_SCRIPT"
 | 
				
			||||||
    [ "$CONTAINER_INIT" = "yes" ] || eval sh -c "$START_SCRIPT"
 | 
							[ "$CONTAINER_INIT" = "yes" ] || eval sh -c "$START_SCRIPT"
 | 
				
			||||||
    runExitCode=$?
 | 
							runExitCode=$?
 | 
				
			||||||
    return $runExitCode
 | 
							return $runExitCode
 | 
				
			||||||
  fi
 | 
						fi
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# username and password actions
 | 
					# username and password actions
 | 
				
			||||||
__run_secure_function() {
 | 
					__run_secure_function() {
 | 
				
			||||||
  if [ -n "$user_name" ] || [ -n "$user_pass" ]; then
 | 
						if [ -n "$user_name" ] || [ -n "$user_pass" ]; then
 | 
				
			||||||
    for filesperms in "${USER_FILE_PREFIX}"/*; do
 | 
							for filesperms in "${USER_FILE_PREFIX}"/*; do
 | 
				
			||||||
      if [ -e "$filesperms" ]; then
 | 
								if [ -e "$filesperms" ]; then
 | 
				
			||||||
        chmod -Rf 600 "$filesperms"
 | 
									chmod -Rf 600 "$filesperms"
 | 
				
			||||||
        chown -Rf $SERVICE_USER:$SERVICE_USER "$filesperms" 2>/dev/null
 | 
									chown -Rf $SERVICE_USER:$SERVICE_USER "$filesperms" 2>/dev/null
 | 
				
			||||||
      fi
 | 
								fi
 | 
				
			||||||
    done 2>/dev/null | tee -p -a "$LOG_DIR/init.txt"
 | 
							done 2>/dev/null | tee -p -a "$LOG_DIR/init.txt"
 | 
				
			||||||
  fi
 | 
						fi
 | 
				
			||||||
  if [ -n "$root_user_name" ] || [ -n "$root_user_pass" ]; then
 | 
						if [ -n "$root_user_name" ] || [ -n "$root_user_pass" ]; then
 | 
				
			||||||
    for filesperms in "${ROOT_FILE_PREFIX}"/*; do
 | 
							for filesperms in "${ROOT_FILE_PREFIX}"/*; do
 | 
				
			||||||
      if [ -e "$filesperms" ]; then
 | 
								if [ -e "$filesperms" ]; then
 | 
				
			||||||
        chmod -Rf 600 "$filesperms"
 | 
									chmod -Rf 600 "$filesperms"
 | 
				
			||||||
        chown -Rf $SERVICE_USER:$SERVICE_USER "$filesperms" 2>/dev/null
 | 
									chown -Rf $SERVICE_USER:$SERVICE_USER "$filesperms" 2>/dev/null
 | 
				
			||||||
      fi
 | 
								fi
 | 
				
			||||||
    done 2>/dev/null | tee -p -a "$LOG_DIR/init.txt"
 | 
							done 2>/dev/null | tee -p -a "$LOG_DIR/init.txt"
 | 
				
			||||||
  fi
 | 
						fi
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# Allow ENV_ variable - Import env file
 | 
					# Allow ENV_ variable - Import env file
 | 
				
			||||||
@@ -611,12 +605,12 @@ __check_service "$1"
 | 
				
			|||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# Database env
 | 
					# Database env
 | 
				
			||||||
if [ "$IS_DATABASE_SERVICE" = "yes" ] || [ "$USES_DATABASE_SERVICE" = "yes" ]; then
 | 
					if [ "$IS_DATABASE_SERVICE" = "yes" ] || [ "$USES_DATABASE_SERVICE" = "yes" ]; then
 | 
				
			||||||
  RESET_ENV="no"
 | 
						RESET_ENV="no"
 | 
				
			||||||
  DATABASE_CREATE="${ENV_DATABASE_CREATE:-$DATABASE_CREATE}"
 | 
						DATABASE_CREATE="${ENV_DATABASE_CREATE:-$DATABASE_CREATE}"
 | 
				
			||||||
  DATABASE_USER="${ENV_DATABASE_USER:-${DATABASE_USER:-$user_name}}"
 | 
						DATABASE_USER="${ENV_DATABASE_USER:-${DATABASE_USER:-$user_name}}"
 | 
				
			||||||
  DATABASE_PASSWORD="${ENV_DATABASE_PASSWORD:-${DATABASE_PASSWORD:-$user_pass}}"
 | 
						DATABASE_PASSWORD="${ENV_DATABASE_PASSWORD:-${DATABASE_PASSWORD:-$user_pass}}"
 | 
				
			||||||
  DATABASE_ROOT_USER="${ENV_DATABASE_ROOT_USER:-${DATABASE_ROOT_USER:-$root_user_name}}"
 | 
						DATABASE_ROOT_USER="${ENV_DATABASE_ROOT_USER:-${DATABASE_ROOT_USER:-$root_user_name}}"
 | 
				
			||||||
  DATABASE_ROOT_PASSWORD="${ENV_DATABASE_ROOT_PASSWORD:-${DATABASE_ROOT_PASSWORD:-$root_user_pass}}"
 | 
						DATABASE_ROOT_PASSWORD="${ENV_DATABASE_ROOT_PASSWORD:-${DATABASE_ROOT_PASSWORD:-$root_user_pass}}"
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# Allow per init script usernames and passwords
 | 
					# Allow per init script usernames and passwords
 | 
				
			||||||
@@ -684,16 +678,16 @@ __pre_execute
 | 
				
			|||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
__run_start_script 2>>/dev/stderr | tee -p -a "/data/logs/entrypoint.log" && errorCode=0 || errorCode=10
 | 
					__run_start_script 2>>/dev/stderr | tee -p -a "/data/logs/entrypoint.log" && errorCode=0 || errorCode=10
 | 
				
			||||||
if [ -n "$EXEC_CMD_BIN" ]; then
 | 
					if [ -n "$EXEC_CMD_BIN" ]; then
 | 
				
			||||||
  if [ "$errorCode" -ne 0 ]; then
 | 
						if [ "$errorCode" -ne 0 ]; then
 | 
				
			||||||
    echo "Failed to execute: ${cmd_exec:-$EXEC_CMD_BIN $EXEC_CMD_ARGS}" | tee -p -a "/data/logs/entrypoint.log" "$LOG_DIR/init.txt"
 | 
							echo "Failed to execute: ${cmd_exec:-$EXEC_CMD_BIN $EXEC_CMD_ARGS}" | tee -p -a "/data/logs/entrypoint.log" "$LOG_DIR/init.txt"
 | 
				
			||||||
    rm -Rf "$SERVICE_PID_FILE"
 | 
							rm -Rf "$SERVICE_PID_FILE"
 | 
				
			||||||
    SERVICE_EXIT_CODE=10
 | 
							SERVICE_EXIT_CODE=10
 | 
				
			||||||
    SERVICE_IS_RUNNING="no"
 | 
							SERVICE_IS_RUNNING="no"
 | 
				
			||||||
  else
 | 
						else
 | 
				
			||||||
    SERVICE_EXIT_CODE=0
 | 
							SERVICE_EXIT_CODE=0
 | 
				
			||||||
    SERVICE_IS_RUNNING="no"
 | 
							SERVICE_IS_RUNNING="no"
 | 
				
			||||||
  fi
 | 
						fi
 | 
				
			||||||
  SERVICE_EXIT_CODE=0
 | 
						SERVICE_EXIT_CODE=0
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
__banner "Initializing of $SERVICE_NAME has completed with statusCode: $SERVICE_EXIT_CODE" | tee -p -a "/data/logs/entrypoint.log" "$LOG_DIR/init.txt"
 | 
					__banner "Initializing of $SERVICE_NAME has completed with statusCode: $SERVICE_EXIT_CODE" | tee -p -a "/data/logs/entrypoint.log" "$LOG_DIR/init.txt"
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user