From adc9eddc086c4a7ee266591e3fea9b97eab861b3 Mon Sep 17 00:00:00 2001 From: Alexandru Macocian Date: Tue, 5 May 2026 14:37:25 +0200 Subject: [PATCH] Restore [self-hosted, host] runs-on; fix routing-loss regression --- .gitea/workflows/deploy-stack.yml | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/.gitea/workflows/deploy-stack.yml b/.gitea/workflows/deploy-stack.yml index 81176bf..cd661bd 100644 --- a/.gitea/workflows/deploy-stack.yml +++ b/.gitea/workflows/deploy-stack.yml @@ -77,13 +77,17 @@ on: jobs: deploy: - # Single-label `runs-on` (not the [self-hosted, ] array form). In - # Gitea/act_runner, the array is matched loosely — a runner advertising - # only `self-hosted` will pick up jobs intended for a specific host. Using - # the bare host label routes deterministically to the correct runner. - # Every runner advertises both `self-hosted` and its host short name (see - # Charlie/runners envs/.env GITEA_RUNNER_LABELS). - runs-on: ${{ inputs.host }} + # Both labels required: + # `self-hosted` — magic label that puts act_runner in host-execution + # mode (no docker image pulled for the job container). + # `` — the host short name. Each runner advertises its host + # label uniquely so this disambiguates which runner picks up the job. + # + # Gitea's label matching IS supposed to be AND for arrays, but in + # practice the host label alone is more reliable. We keep both because + # dropping `self-hosted` makes act default to docker mode and pull an + # ubuntu image, which we don't want. + runs-on: [self-hosted, "${{ inputs.host }}"] steps: - name: Resolve stack path and ref id: resolve