#!/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 "act_runner 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 bashio::log.info "register act_runner !" # Load configuration from Home Assistant GITEA_URL=$(bashio::config 'gitea_url') GITEA_TOKEN=$(bashio::config 'gitea_token') RUNNER_NAME=$(bashio::config 'runner_name') RUNNER_LABEL=$(bashio::config 'runner_label') # Register the runner /usr/local/bin/act_runner register --no-interactive --instance "${GITEA_URL}" --token "${GITEA_TOKEN}" --name "${RUNNER_NAME}" --labels "${RUNNER_LABEL}" # Check if registration was successful if [ $? -ne 0 ]; then bashio::log.error "Failed to register act_runner." exit 1 fi bashio::log.info "Registration complete. Starting act_runner in daemon mode..." exec exec /usr/local/bin/act_runner daemon