From 17a5457c6292948023643fa0b0222a9f32a58956 Mon Sep 17 00:00:00 2001 From: Mike Odnis Date: Tue, 29 Sep 2026 07:27:48 -0400 Subject: [PATCH 01/10] ci: route conventional-title-labeler.yml to self-hosted runner --- .github/workflows/conventional-title-labeler.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/conventional-title-labeler.yml b/.github/workflows/conventional-title-labeler.yml index 790ac18..88fd55d 100644 --- a/.github/workflows/conventional-title-labeler.yml +++ b/.github/workflows/conventional-title-labeler.yml @@ -21,7 +21,7 @@ jobs: permissions: contents: read pull-requests: write - runs-on: ubuntu-latest + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && fromJSON('["self-hosted","linux","x64","zima"]') || 'ubuntu-latest' }} steps: - name: Map conventional title prefix to a C-* label # TITLE is read from env (never interpolated into the script) to avoid From e1207ab00b6f53aaec11e3b9794f66014d0ce108 Mon Sep 17 00:00:00 2001 From: Mike Odnis Date: Tue, 29 Sep 2026 07:27:49 -0400 Subject: [PATCH 02/10] ci: route dependency-licences.yml to self-hosted runner --- .github/workflows/dependency-licences.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/dependency-licences.yml b/.github/workflows/dependency-licences.yml index 259c173..2bd13e1 100644 --- a/.github/workflows/dependency-licences.yml +++ b/.github/workflows/dependency-licences.yml @@ -20,7 +20,7 @@ permissions: {} jobs: licence-check: name: licence check (warn-only) - runs-on: ubuntu-latest + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && fromJSON('["self-hosted","linux","x64","zima"]') || 'ubuntu-latest' }} permissions: contents: read steps: From 3e26d352bf4b3eb4cdaa831f2dfaea55b5822703 Mon Sep 17 00:00:00 2001 From: Mike Odnis Date: Tue, 29 Sep 2026 07:27:50 -0400 Subject: [PATCH 03/10] ci: route hooks-sync.yml to self-hosted runner --- .github/workflows/hooks-sync.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/hooks-sync.yml b/.github/workflows/hooks-sync.yml index 4fffa46..42b3515 100644 --- a/.github/workflows/hooks-sync.yml +++ b/.github/workflows/hooks-sync.yml @@ -31,7 +31,7 @@ permissions: jobs: lint: name: shellcheck + parse - runs-on: ubuntu-latest + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && fromJSON('["self-hosted","linux","x64","zima"]') || 'ubuntu-latest' }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: @@ -55,7 +55,7 @@ jobs: smoke: name: smoke — raw-fetch fallback path - runs-on: ubuntu-latest + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && fromJSON('["self-hosted","linux","x64","zima"]') || 'ubuntu-latest' }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: From 4b249e163958ebf66bda0dd5db850ffb25a5f096 Mon Sep 17 00:00:00 2001 From: Mike Odnis Date: Tue, 29 Sep 2026 07:27:51 -0400 Subject: [PATCH 04/10] ci: route hooks-tests.yml to self-hosted runner --- .github/workflows/hooks-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/hooks-tests.yml b/.github/workflows/hooks-tests.yml index 046bad6..92a45c7 100644 --- a/.github/workflows/hooks-tests.yml +++ b/.github/workflows/hooks-tests.yml @@ -32,7 +32,7 @@ permissions: jobs: bats: name: bats - runs-on: ubuntu-latest + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && fromJSON('["self-hosted","linux","x64","zima"]') || 'ubuntu-latest' }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: From 95eb726d456cc9f7b92902d4bf7f76639fbf2fb7 Mon Sep 17 00:00:00 2001 From: Mike Odnis Date: Tue, 29 Sep 2026 07:27:52 -0400 Subject: [PATCH 05/10] ci: route label-sync.yml to self-hosted runner --- .github/workflows/label-sync.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/label-sync.yml b/.github/workflows/label-sync.yml index 0fd95ea..fc9eeb6 100644 --- a/.github/workflows/label-sync.yml +++ b/.github/workflows/label-sync.yml @@ -28,7 +28,7 @@ permissions: jobs: sync: name: Sync Labels - runs-on: ubuntu-latest + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && fromJSON('["self-hosted","linux","x64","zima"]') || 'ubuntu-latest' }} steps: - name: Checkout uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 From 6e3c5a93abba157922ae2a199d43c51421c6ce8f Mon Sep 17 00:00:00 2001 From: Mike Odnis Date: Tue, 29 Sep 2026 07:27:53 -0400 Subject: [PATCH 06/10] ci: route labeler.yml to self-hosted runner --- .github/workflows/labeler.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/labeler.yml b/.github/workflows/labeler.yml index 4708263..6ffb237 100644 --- a/.github/workflows/labeler.yml +++ b/.github/workflows/labeler.yml @@ -26,7 +26,7 @@ jobs: permissions: contents: read pull-requests: write - runs-on: ubuntu-latest + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && fromJSON('["self-hosted","linux","x64","zima"]') || 'ubuntu-latest' }} steps: - uses: actions/labeler@bf12e9b00b37c5c0ca2b87b79b2daf7891dbda13 # v7.0.0 with: From a721eb07ae5862c5a438eb43faae15ed67863c06 Mon Sep 17 00:00:00 2001 From: Mike Odnis Date: Tue, 29 Sep 2026 07:27:55 -0400 Subject: [PATCH 07/10] ci: route pr-size-labeler.yml to self-hosted runner --- .github/workflows/pr-size-labeler.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr-size-labeler.yml b/.github/workflows/pr-size-labeler.yml index c563fd3..9a83ad9 100644 --- a/.github/workflows/pr-size-labeler.yml +++ b/.github/workflows/pr-size-labeler.yml @@ -26,7 +26,7 @@ jobs: permissions: contents: read pull-requests: write - runs-on: ubuntu-latest + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && fromJSON('["self-hosted","linux","x64","zima"]') || 'ubuntu-latest' }} steps: - uses: pascalgn/size-label-action@56b489b027932ec0cf60438a1a5f1a19c8fc71ff # v0.5.7 env: From 730e1778982733d8a87368a7c2c96d53cba1d178 Mon Sep 17 00:00:00 2001 From: Mike Odnis Date: Tue, 29 Sep 2026 07:27:56 -0400 Subject: [PATCH 08/10] ci: route repo-drift.yml to self-hosted runner --- .github/workflows/repo-drift.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/repo-drift.yml b/.github/workflows/repo-drift.yml index e041f93..47bf44e 100644 --- a/.github/workflows/repo-drift.yml +++ b/.github/workflows/repo-drift.yml @@ -46,7 +46,7 @@ concurrency: jobs: drift: name: installer repo list matches the org - runs-on: ubuntu-latest + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && fromJSON('["self-hosted","linux","x64","zima"]') || 'ubuntu-latest' }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: From 0543f45d38c2bc38631fb5aa881643cbdd65392f Mon Sep 17 00:00:00 2001 From: Mike Odnis Date: Tue, 29 Sep 2026 07:27:57 -0400 Subject: [PATCH 09/10] ci: route required.yml to self-hosted runner --- .github/workflows/required.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/required.yml b/.github/workflows/required.yml index 4c7335e..259f763 100644 --- a/.github/workflows/required.yml +++ b/.github/workflows/required.yml @@ -32,7 +32,7 @@ concurrency: jobs: shellcheck: name: shellcheck (install.sh + scripts) - runs-on: ubuntu-latest + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && fromJSON('["self-hosted","linux","x64","zima"]') || 'ubuntu-latest' }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: @@ -443,7 +443,7 @@ jobs: powershell: name: PowerShell parse + analyze (*.ps1) - runs-on: ubuntu-latest + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && fromJSON('["self-hosted","linux","x64","zima"]') || 'ubuntu-latest' }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: @@ -533,7 +533,7 @@ jobs: worker: name: worker (get.resq.software) - runs-on: ubuntu-latest + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && fromJSON('["self-hosted","linux","x64","zima"]') || 'ubuntu-latest' }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: @@ -592,7 +592,7 @@ jobs: name: required needs: [shellcheck, powershell, worker] if: always() - runs-on: ubuntu-latest + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && fromJSON('["self-hosted","linux","x64","zima"]') || 'ubuntu-latest' }} steps: - name: Gate on required checks run: | From 63ebe06963c5bb05f0ee3b5be330d4c50de15dcb Mon Sep 17 00:00:00 2001 From: Mike Odnis Date: Tue, 29 Sep 2026 07:27:58 -0400 Subject: [PATCH 10/10] ci: route worker-live.yml to self-hosted runner --- .github/workflows/worker-live.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/worker-live.yml b/.github/workflows/worker-live.yml index 240b4ca..f2e9a97 100644 --- a/.github/workflows/worker-live.yml +++ b/.github/workflows/worker-live.yml @@ -44,7 +44,7 @@ concurrency: jobs: live: name: live endpoint matches main - runs-on: ubuntu-latest + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && fromJSON('["self-hosted","linux","x64","zima"]') || 'ubuntu-latest' }} # Backstop only. The script enforces its own DEADLINE_MS (20 minutes) and # prints a diagnosis when it expires; this must stay comfortably above that # or the job is killed first and that diagnosis is lost. It exists so a