ci: switch integration tests to ARM runners

Switch all integration test jobs (build, build-postgres, test
template) from ubuntu-latest (x86_64) to ubuntu-24.04-arm (aarch64).

ARM runners on GitHub Actions are free for public repos and tend
to have more consistent performance characteristics than the
shared x86_64 pool. This should reduce flakiness caused by
resource contention on congested runners.

Updates #3125
This commit is contained in:
Kristoffer Dalby
2026-03-31 17:50:14 +00:00
parent a9a2001ae7
commit a76b4bd46c
2 changed files with 3 additions and 3 deletions

View File

@@ -16,7 +16,7 @@ on:
jobs: jobs:
test: test:
runs-on: ubuntu-latest runs-on: ubuntu-24.04-arm
env: env:
# Github does not allow us to access secrets in pull requests, # Github does not allow us to access secrets in pull requests,
# so this env var is used to check if we have the secret or not. # so this env var is used to check if we have the secret or not.

View File

@@ -12,7 +12,7 @@ jobs:
# sqlite: Runs all integration tests with SQLite backend. # sqlite: Runs all integration tests with SQLite backend.
# postgres: Runs a subset of tests with PostgreSQL to verify database compatibility. # postgres: Runs a subset of tests with PostgreSQL to verify database compatibility.
build: build:
runs-on: ubuntu-latest runs-on: ubuntu-24.04-arm
outputs: outputs:
files-changed: ${{ steps.changed-files.outputs.files }} files-changed: ${{ steps.changed-files.outputs.files }}
steps: steps:
@@ -119,7 +119,7 @@ jobs:
path: tailscale-head-image.tar.gz path: tailscale-head-image.tar.gz
retention-days: 10 retention-days: 10
build-postgres: build-postgres:
runs-on: ubuntu-latest runs-on: ubuntu-24.04-arm
needs: build needs: build
if: needs.build.outputs.files-changed == 'true' if: needs.build.outputs.files-changed == 'true'
steps: steps: