update act runner addons

This commit is contained in:
ai-dev
2024-11-01 20:34:12 +01:00
parent ee66b044c3
commit f7f4e7393a
35 changed files with 845 additions and 34 deletions

View File

@ -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

View File

@ -1,10 +1,10 @@
#!/usr/bin/with-contenv bashio
#!/command/with-contenv bashio
# shellcheck shell=bash
# ==============================================================================
# Home Assistant Add-on: actrunner
# Runs actrunner
# Home Assistant Community Add-on: actrunner
# Runs actrunner script
# ==============================================================================
readonly PROMTAIL_CONFIG='/etc/promtail/config.yaml'
declare log_level
bashio::log.info 'Starting actrunner...'
@ -47,4 +47,4 @@ curl -X POST "$GITEA_URL/api/v1/repos/$REPOSITORY/actions/runners" \
-d '{ "name": "Act Runner", "labels": ["self-hosted"] }'
bashio::log.info "Handing over control to actrunner..."
exec s6-setuidgid actrunner act $ACT_OPTIONS
exec /usr/local/bin/act $ACT_OPTIONS

View File

@ -1,15 +0,0 @@
#!/usr/bin/env bashio
# ==============================================================================
# Take down the S6 supervision tree when actrunner fails
# s6-overlay docs: https://github.com/just-containers/s6-overlay
# ==============================================================================
declare APP_EXIT_CODE=${1}
if [[ "${APP_EXIT_CODE}" -ne 0 ]] && [[ "${APP_EXIT_CODE}" -ne 256 ]]; then
bashio::log.warning "Halt add-on with exit code ${APP_EXIT_CODE}"
echo "${APP_EXIT_CODE}" > /run/s6-linux-init-container-results/exitcode
exec /run/s6/basedir/bin/halt
fi
bashio::log.info "Service restart after closing"