mirror of
https://github.com/casjaysdevdocker/gitea
synced 2024-12-04 11:23:04 -05:00
🗃️ Committing everything that changed 🗃️
rootfs/usr/local/etc/docker/init.d/zz-act_runner.sh
This commit is contained in:
parent
cc3e81d3b7
commit
46f7de65ae
@ -204,7 +204,9 @@ CMD_ENV=""
|
|||||||
# Overwrite based on file/directory
|
# Overwrite based on file/directory
|
||||||
RUNNER_CACHE_HOST="${RUNNER_CACHE_HOST:-localhost}"
|
RUNNER_CACHE_HOST="${RUNNER_CACHE_HOST:-localhost}"
|
||||||
RUNNER_CACHE_PORT="${RUNNER_CACHE_PORT:-$SERVICE_PORT}"
|
RUNNER_CACHE_PORT="${RUNNER_CACHE_PORT:-$SERVICE_PORT}"
|
||||||
|
RUNNER_MULTI_DIR="${RUNNER_MULTI_DIR:-$CONF_DIR/multi}"
|
||||||
RUNNER_CONFIG_NAME="${RUNNER_CONFIG_NAME:-runner.yaml}"
|
RUNNER_CONFIG_NAME="${RUNNER_CONFIG_NAME:-runner.yaml}"
|
||||||
|
RUNNER_CONFIG_DEFAULT="${RUNNER_CONFIG_DEFAULT:-$ETC_DIR/default_config.yaml}"
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
# Per Application Variables or imports
|
# Per Application Variables or imports
|
||||||
|
|
||||||
@ -216,7 +218,7 @@ __execute_prerun() {
|
|||||||
|
|
||||||
# Define other actions/commands
|
# Define other actions/commands
|
||||||
while :; do
|
while :; do
|
||||||
pgrep gitea && 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
|
||||||
}
|
}
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
@ -231,6 +233,7 @@ __run_pre_execute_checks() {
|
|||||||
{
|
{
|
||||||
[ -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"
|
||||||
|
if [ -f "$RUNNER_CONFIG_DEFAULT" ]; then
|
||||||
if [ ! -f "$CONF_DIR/reg/default.sample" ]; then
|
if [ ! -f "$CONF_DIR/reg/default.sample" ]; then
|
||||||
cat <<EOF >"$CONF_DIR/reg/default.sample"
|
cat <<EOF >"$CONF_DIR/reg/default.sample"
|
||||||
# Edit this file and execute it
|
# Edit this file and execute it
|
||||||
@ -257,7 +260,7 @@ EOF
|
|||||||
cat <<EOF >"$CONF_DIR/reg/runner-1.reg"
|
cat <<EOF >"$CONF_DIR/reg/runner-1.reg"
|
||||||
# Settings for the default gitea runner
|
# Settings for the default gitea runner
|
||||||
RUNNER_NAME="runner-1"
|
RUNNER_NAME="runner-1"
|
||||||
RUNNER_HOME="$CONF_DIR/multi/\$RUNNER_NAME"
|
RUNNER_HOME="$RUNNER_MULTI_DIR/\$RUNNER_NAME"
|
||||||
RUNNER_HOSTNAME="http://${INSTANCE_HOSTNAME:-127.0.0.1:$GITEA_PORT}"
|
RUNNER_HOSTNAME="http://${INSTANCE_HOSTNAME:-127.0.0.1:$GITEA_PORT}"
|
||||||
RUNNER_REGISTER_URL="http://127.0.0.1:$GITEA_PORT"
|
RUNNER_REGISTER_URL="http://127.0.0.1:$GITEA_PORT"
|
||||||
RUNNER_AUTH_TOKEN="${RUNNER_AUTH_TOKEN:-$SYS_AUTH_TOKEN}"
|
RUNNER_AUTH_TOKEN="${RUNNER_AUTH_TOKEN:-$SYS_AUTH_TOKEN}"
|
||||||
@ -269,7 +272,7 @@ EOF
|
|||||||
cat <<EOF >"$CONF_DIR/reg/runner-2.reg"
|
cat <<EOF >"$CONF_DIR/reg/runner-2.reg"
|
||||||
# Settings for the default local runner
|
# Settings for the default local runner
|
||||||
RUNNER_NAME="runner-2"
|
RUNNER_NAME="runner-2"
|
||||||
RUNNER_HOME="$CONF_DIR/multi/\$RUNNER_NAME"
|
RUNNER_HOME="$RUNNER_MULTI_DIR/\$RUNNER_NAME"
|
||||||
RUNNER_HOSTNAME="http://${INSTANCE_HOSTNAME:-127.0.0.1:$GITEA_PORT}"
|
RUNNER_HOSTNAME="http://${INSTANCE_HOSTNAME:-127.0.0.1:$GITEA_PORT}"
|
||||||
RUNNER_REGISTER_URL="http://127.0.0.1:$GITEA_PORT"
|
RUNNER_REGISTER_URL="http://127.0.0.1:$GITEA_PORT"
|
||||||
RUNNER_AUTH_TOKEN="${RUNNER_AUTH_TOKEN:-$SYS_AUTH_TOKEN}"
|
RUNNER_AUTH_TOKEN="${RUNNER_AUTH_TOKEN:-$SYS_AUTH_TOKEN}"
|
||||||
@ -278,10 +281,9 @@ RUNNER_LABELS="$RUNNER_LABELS"
|
|||||||
EOF
|
EOF
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -f "$ETC_DIR/default_config.yaml" ]; then
|
|
||||||
mkdir -p "$CONF_DIR/default"
|
mkdir -p "$CONF_DIR/default"
|
||||||
[ -f "$CONF_DIR/default/$RUNNER_CONFIG_NAME" ] || copy "$ETC_DIR/default_config.yaml" "$CONF_DIR/default/$RUNNER_CONFIG_NAME"
|
[ -f "$CONF_DIR/default/$RUNNER_CONFIG_NAME" ] || copy "$RUNNER_CONFIG_DEFAULT" "$CONF_DIR/default/$RUNNER_CONFIG_NAME"
|
||||||
if [ ! -f "$ETC_DIR/runners" ] && [ -f "$CONF_DIR/default/$RUNNER_CONFIG_NAME" ] && [ -n "$SYS_AUTH_TOKEN" ]; then
|
if [ -n "$SYS_AUTH_TOKEN" ] && [ ! -f "$ETC_DIR/runners" ] && [ -f "$CONF_DIR/default/$RUNNER_CONFIG_NAME" ]; then
|
||||||
__replace "REPLACE_RUNNER_TEMP" "$TMP_DIR/gitea" "$CONF_DIR/default/$RUNNER_CONFIG_NAME"
|
__replace "REPLACE_RUNNER_TEMP" "$TMP_DIR/gitea" "$CONF_DIR/default/$RUNNER_CONFIG_NAME"
|
||||||
__replace "REPLACE_RUNNER_HOME" "$CONF_DIR/default" "$CONF_DIR/default/$RUNNER_CONFIG_NAME"
|
__replace "REPLACE_RUNNER_HOME" "$CONF_DIR/default" "$CONF_DIR/default/$RUNNER_CONFIG_NAME"
|
||||||
__replace "REPLACE_RUNNER_CACHE_HOST" "$RUNNER_CACHE_HOST" "$CONF_DIR/default/$RUNNER_CONFIG_NAME"
|
__replace "REPLACE_RUNNER_CACHE_HOST" "$RUNNER_CACHE_HOST" "$CONF_DIR/default/$RUNNER_CONFIG_NAME"
|
||||||
@ -289,17 +291,17 @@ EOF
|
|||||||
echo "creating gitea in $CONF_DIR/default and registering with http://$INSTANCE_HOSTNAME"
|
echo "creating gitea in $CONF_DIR/default and registering with http://$INSTANCE_HOSTNAME"
|
||||||
act_runner register --config "$CONF_DIR/default/$RUNNER_CONFIG_NAME" --labels "$RUNNER_LABELS" --name "gitea" --instance "http://127.0.0.1:$GITEA_PORT" --token "$SYS_AUTH_TOKEN" --no-interactive 2>/dev/stdout
|
act_runner register --config "$CONF_DIR/default/$RUNNER_CONFIG_NAME" --labels "$RUNNER_LABELS" --name "gitea" --instance "http://127.0.0.1:$GITEA_PORT" --token "$SYS_AUTH_TOKEN" --no-interactive 2>/dev/stdout
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
|
|
||||||
for runner in "$CONF_DIR/reg"/*.reg; do
|
for runner in "$CONF_DIR/reg"/*.reg; do
|
||||||
while :; do
|
|
||||||
[ -f "$runner" ] && . "$runner"
|
[ -f "$runner" ] && . "$runner"
|
||||||
|
while :; do
|
||||||
RUNNER_LABELS="${RUNNER_LABELS:-act_runner}"
|
RUNNER_LABELS="${RUNNER_LABELS:-act_runner}"
|
||||||
RUNNER_NAME="${RUNNER_NAME:-$(basename "${runner//.reg/}")}"
|
RUNNER_NAME="${RUNNER_NAME:-$(basename "${runner//.reg/}")}"
|
||||||
RUNNER_HOME="${RUNNER_HOME:-$CONF_DIR/multi/$RUNNER_NAME}"
|
RUNNER_HOME="${RUNNER_HOME:-$RUNNER_MULTI_DIR/$RUNNER_NAME}"
|
||||||
RUNNER_AUTH_TOKEN="${RUNNER_AUTH_TOKEN:-$(__gen_auth_token)}"
|
RUNNER_AUTH_TOKEN="${RUNNER_AUTH_TOKEN:-$(__gen_auth_token)}"
|
||||||
RUNNER_HOSTNAME="${RUNNER_HOSTNAME:-http://$INSTANCE_HOSTNAME}"
|
RUNNER_HOSTNAME="${RUNNER_HOSTNAME:-http://$INSTANCE_HOSTNAME}"
|
||||||
RUNNER_REGISTER_URL="${RUNNER_REGISTER_URL:-http://127.0.0.1:$GITEA_PORT}"
|
RUNNER_REGISTER_URL="${RUNNER_REGISTER_URL:-http://127.0.0.1:$GITEA_PORT}"
|
||||||
|
#
|
||||||
[ -d "$RUNNER_HOME" ] || mkdir -p "$RUNNER_HOME"
|
[ -d "$RUNNER_HOME" ] || mkdir -p "$RUNNER_HOME"
|
||||||
[ -d "$CONF_DIR/tokens" ] || mkdir -p "$CONF_DIR/tokens"
|
[ -d "$CONF_DIR/tokens" ] || mkdir -p "$CONF_DIR/tokens"
|
||||||
[ -f "$CONF_DIR/tokens/system" ] && { grep -qs '.' "$CONF_DIR/tokens/system" || rm -Rf "$CONF_DIR/tokens/system"; }
|
[ -f "$CONF_DIR/tokens/system" ] && { grep -qs '.' "$CONF_DIR/tokens/system" || rm -Rf "$CONF_DIR/tokens/system"; }
|
||||||
@ -320,7 +322,7 @@ EOF
|
|||||||
sleep 120
|
sleep 120
|
||||||
else
|
else
|
||||||
echo "creating $RUNNER_NAME in $RUNNER_HOME and registering with $RUNNER_REGISTER_URL"
|
echo "creating $RUNNER_NAME in $RUNNER_HOME and registering with $RUNNER_REGISTER_URL"
|
||||||
[ -f "$RUNNER_HOME/$RUNNER_CONFIG_NAME" ] || copy "$ETC_DIR/default_config.yaml" "$RUNNER_HOME/$RUNNER_CONFIG_NAME"
|
[ -f "$RUNNER_HOME/$RUNNER_CONFIG_NAME" ] || copy "$RUNNER_CONFIG_DEFAULT" "$RUNNER_HOME/$RUNNER_CONFIG_NAME"
|
||||||
__replace "REPLACE_RUNNER_HOME" "$RUNNER_HOME" "$RUNNER_HOME/$RUNNER_CONFIG_NAME"
|
__replace "REPLACE_RUNNER_HOME" "$RUNNER_HOME" "$RUNNER_HOME/$RUNNER_CONFIG_NAME"
|
||||||
__replace "REPLACE_RUNNER_TEMP" "$TMP_DIR/$RUNNER_NAME" "$RUNNER_HOME/$RUNNER_CONFIG_NAME"
|
__replace "REPLACE_RUNNER_TEMP" "$TMP_DIR/$RUNNER_NAME" "$RUNNER_HOME/$RUNNER_CONFIG_NAME"
|
||||||
__replace "REPLACE_RUNNER_CACHE_HOST" "$RUNNER_CACHE_HOST" "$RUNNER_HOME/$RUNNER_CONFIG_NAME"
|
__replace "REPLACE_RUNNER_CACHE_HOST" "$RUNNER_CACHE_HOST" "$RUNNER_HOME/$RUNNER_CONFIG_NAME"
|
||||||
@ -343,9 +345,12 @@ EOF
|
|||||||
echo "Something seems to have gone wrong modifying $RUNNER_HOME/$RUNNER_CONFIG_NAME" >&2
|
echo "Something seems to have gone wrong modifying $RUNNER_HOME/$RUNNER_CONFIG_NAME" >&2
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
echo "$RUNNER_NAME seems to be configured"
|
||||||
unset RUNNER_HOME RUNNER_NAME RUNNER_AUTH_TOKEN RUNNER_HOSTNAME RUNNER_REGISTER_URL
|
unset RUNNER_HOME RUNNER_NAME RUNNER_AUTH_TOKEN RUNNER_HOSTNAME RUNNER_REGISTER_URL
|
||||||
done
|
done
|
||||||
|
echo "Done proccessing $runner"
|
||||||
done 2>"/dev/stderr" | tee -p -a "$LOG_DIR/init.txt" >/dev/null
|
done 2>"/dev/stderr" | tee -p -a "$LOG_DIR/init.txt" >/dev/null
|
||||||
|
fi
|
||||||
chown -Rf "$SERVICE_USER":"$SERVICE_GROUP" "$CONF_DIR" "$ETC_DIR" "$DATA_DIR" 2>/dev/null
|
chown -Rf "$SERVICE_USER":"$SERVICE_GROUP" "$CONF_DIR" "$ETC_DIR" "$DATA_DIR" 2>/dev/null
|
||||||
return $exitStatus
|
return $exitStatus
|
||||||
}
|
}
|
||||||
@ -447,8 +452,9 @@ __post_execute() {
|
|||||||
fi
|
fi
|
||||||
unset pid is_running
|
unset pid is_running
|
||||||
fi
|
fi
|
||||||
if [ -d "$CONF_DIR/multi" ]; then
|
#
|
||||||
for multi_dir in "$CONF_DIR/multi"/*; do
|
if [ -d "$RUNNER_MULTI_DIR" ]; then
|
||||||
|
for multi_dir in "$RUNNER_MULTI_DIR"/*; do
|
||||||
if [ -n "$multi_dir" ] && [ -d "$multi_dir" ]; then
|
if [ -n "$multi_dir" ] && [ -d "$multi_dir" ]; then
|
||||||
name="$(basename "$multi_dir")"
|
name="$(basename "$multi_dir")"
|
||||||
conf="$multi_dir/$RUNNER_CONFIG_NAME"
|
conf="$multi_dir/$RUNNER_CONFIG_NAME"
|
||||||
@ -468,8 +474,8 @@ __post_execute() {
|
|||||||
unset pid is_running name
|
unset pid is_running name
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
if [ -f "$CONF_DIR/cache_server.yaml" ]; then
|
if [ -f "$ETC_DIR/cache_server.yaml" ]; then
|
||||||
act_runner cache-server --config $CONF_DIR/cache_server.yaml -s 0.0.0.0 -p $RUNNER_CACHE_PORT 2>>/dev/stderr | tee -a -p "$LOG_DIR/act_runner_cache.log" &
|
act_runner cache-server --config $ETC_DIR/cache_server.yaml -s 0.0.0.0 -p $RUNNER_CACHE_PORT 2>>/dev/stderr | tee -a -p "$LOG_DIR/act_runner_cache.log" &
|
||||||
execPid=$!
|
execPid=$!
|
||||||
sleep 5 && ps ax | awk '{print $1}' | grep -v grep | grep -q "$execPid$" && return 0 || return 2
|
sleep 5 && ps ax | awk '{print $1}' | grep -v grep | grep -q "$execPid$" && return 0 || return 2
|
||||||
fi
|
fi
|
||||||
|
Loading…
Reference in New Issue
Block a user