54 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
#!/command/with-contenv bashio
 | 
						|
# shellcheck shell=bash
 | 
						|
# ==============================================================================
 | 
						|
# Home Assistant Community Add-on: Example
 | 
						|
# Example init script, runs before any other service
 | 
						|
# ==============================================================================
 | 
						|
 | 
						|
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 /usr/local/bin/act_runner daemon |