From e91d6c0b0911aca75b78f57429fbd7680f9b1851 Mon Sep 17 00:00:00 2001 From: Will Anderson Date: Tue, 24 Mar 2026 13:07:56 -0500 Subject: [PATCH] fix: gitea runner Docker execution mode with catthehacker/ubuntu MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Switch from :host to :docker execution so jobs run inside containers. - Labels use docker://ghcr.io/catthehacker/ubuntu:act-22.04 (Python 3.10, Node 18, Docker CLI — everything CI jobs need pre-installed) - config.yaml passes docker.sock through to job containers for build/push - Capacity set to 2 parallel jobs Fixes: 'Cannot find: node in PATH' — actions/checkout@v4 requires Node --- servers/legion/apps/gitea-runner.yaml | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/servers/legion/apps/gitea-runner.yaml b/servers/legion/apps/gitea-runner.yaml index 122baf5..5d01b95 100644 --- a/servers/legion/apps/gitea-runner.yaml +++ b/servers/legion/apps/gitea-runner.yaml @@ -26,8 +26,20 @@ spec: --instance "$GITEA_INSTANCE_URL" \ --token "$GITEA_RUNNER_REGISTRATION_TOKEN" \ --name legion \ - --labels self-hosted,linux,x64,legion \ + --labels "self-hosted:docker://ghcr.io/catthehacker/ubuntu:act-22.04,linux:docker://ghcr.io/catthehacker/ubuntu:act-22.04,x64:docker://ghcr.io/catthehacker/ubuntu:act-22.04,legion:docker://ghcr.io/catthehacker/ubuntu:act-22.04" \ --no-interactive + # Write runner config enabling docker socket passthrough for build jobs + cat > /data/config.yaml << 'EOF' + runner: + capacity: 2 + envs: {} + timeout: 3h + container: + network: bridge + options: "-v /var/run/docker.sock:/var/run/docker.sock" + docker_host: "unix:///var/run/docker.sock" + force_pull: false + EOF envFrom: - secretRef: name: gitea-runner-secret @@ -38,7 +50,7 @@ spec: - name: runner image: gitea/act_runner:latest workingDir: /data - command: ["act_runner", "daemon"] + command: ["act_runner", "daemon", "--config", "/data/config.yaml"] envFrom: - secretRef: name: gitea-runner-secret