update act runner addons
This commit is contained in:
@ -0,0 +1,45 @@
|
||||
#!/command/with-contenv bashio
|
||||
# shellcheck shell=bash
|
||||
# ==============================================================================
|
||||
# Home Assistant Community Add-on: Example
|
||||
# ==============================================================================
|
||||
declare exit_code
|
||||
readonly exit_code_container=$(</run/s6-linux-init-container-results/exitcode)
|
||||
readonly exit_code_service="${1}"
|
||||
readonly exit_code_signal="${2}"
|
||||
readonly service="actrunner"
|
||||
|
||||
bashio::log.info \
|
||||
"Service ${service} exited with code ${exit_code_service}" \
|
||||
"(by signal ${exit_code_signal})"
|
||||
|
||||
# Received a signal
|
||||
if [[ "${exit_code_service}" -eq 256 ]]; then
|
||||
|
||||
# The signal might be a result of another service crashing. Only
|
||||
# overwrite the container exit code if it is not already set.
|
||||
if [[ "${exit_code_container}" -eq 0 ]]; then
|
||||
echo $((128 + $exit_code_signal)) > /run/s6-linux-init-container-results/exitcode
|
||||
fi
|
||||
|
||||
# If the signal is SIGTERM, we should halt the container and take down
|
||||
# the whole process tree.
|
||||
[[ "${exit_code_signal}" -eq 15 ]] && exec /run/s6/basedir/bin/halt
|
||||
|
||||
# The service exited with a non-zero exit code, which means it crashed.
|
||||
elif [[ "${exit_code_service}" -ne 0 ]]; then
|
||||
|
||||
# The service might be a result of another service crashing. Only
|
||||
# overwrite the container exit code if it is not already set.
|
||||
if [[ "${exit_code_container}" -eq 0 ]]; then
|
||||
echo "${exit_code_service}" > /run/s6-linux-init-container-results/exitcode
|
||||
fi
|
||||
|
||||
# We should halt the container and take down the whole process tree.
|
||||
exec /run/s6/basedir/bin/halt
|
||||
|
||||
# The service exited with a zero exit code, which means it exited, let
|
||||
# S6 supervision restart it.
|
||||
else
|
||||
bashio::log.info "Service ${service} restarting..."
|
||||
fi
|
50
gitea_act_runner/rootfs/etc/s6-overlay/s6-rc.d/actrunner/run
Normal file
50
gitea_act_runner/rootfs/etc/s6-overlay/s6-rc.d/actrunner/run
Normal file
@ -0,0 +1,50 @@
|
||||
#!/command/with-contenv bashio
|
||||
# shellcheck shell=bash
|
||||
# ==============================================================================
|
||||
# Home Assistant Community Add-on: actrunner
|
||||
# Runs actrunner script
|
||||
# ==============================================================================
|
||||
|
||||
declare log_level
|
||||
|
||||
bashio::log.info 'Starting actrunner...'
|
||||
|
||||
journal_path='/var/log/journal'
|
||||
if ! bashio::fs.directory_exists "${journal_path}" || [ -z "$(ls -A ${journal_path})" ]; then
|
||||
bashio::log.info "No journal at ${journal_path}, looking for journal in /run/log/journal instead"
|
||||
journal_path='/run/log/journal'
|
||||
fi
|
||||
|
||||
case "$(bashio::config 'log_level')" in \
|
||||
trace) ;& \
|
||||
debug) log_level='debug' ;; \
|
||||
notice) ;& \
|
||||
warning) log_level='warn' ;; \
|
||||
error) ;& \
|
||||
fatal) log_level='error' ;; \
|
||||
*) log_level='info' ;; \
|
||||
esac;
|
||||
bashio::log.info "Promtail log level set to ${log_level}"
|
||||
|
||||
export "JOURNAL_PATH=${journal_path}"
|
||||
export "LOG_LEVEL=${log_level}"
|
||||
|
||||
# Activate the Ansible virtual environment
|
||||
source /opt/ansible-venv/bin/activate
|
||||
|
||||
# Load configuration from Home Assistant
|
||||
GITEA_URL=$(bashio::config 'gitea_url')
|
||||
GITEA_TOKEN=$(bashio::config 'gitea_token')
|
||||
REPOSITORY=$(bashio::config 'repository')
|
||||
ACT_OPTIONS=$(bashio::config 'act_runner_options')
|
||||
|
||||
# Activate the Ansible virtual environment
|
||||
source /opt/ansible-venv/bin/activate
|
||||
|
||||
# Register Act runner with Gitea (if needed)
|
||||
curl -X POST "$GITEA_URL/api/v1/repos/$REPOSITORY/actions/runners" \
|
||||
-H "Authorization: token $GITEA_TOKEN" \
|
||||
-d '{ "name": "Act Runner", "labels": ["self-hosted"] }'
|
||||
|
||||
bashio::log.info "Handing over control to actrunner..."
|
||||
exec /usr/local/bin/act $ACT_OPTIONS
|
Reference in New Issue
Block a user