From fc06d10a64dab9acf142e58a30d478960619d6bc Mon Sep 17 00:00:00 2001 From: Dan Williams Date: Wed, 25 Feb 2026 06:41:14 -0600 Subject: [PATCH] Use native arm64 runner; raise riscv64 timeout to 90m CGO compilation (especially mattn/go-sqlite3) is silent and very slow under QEMU emulation. Switch arm64/v8 to GitHub's native ubuntu-24.04-arm runner to eliminate QEMU overhead entirely. Keep riscv64 on ubuntu-latest (no native runner available) but raise the job timeout to 90m to give QEMU-emulated CGO compilation enough room to finish. Also add 30m timeout to the test job. --- .github/workflows/build.yaml | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index f5059a4..a269aa0 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -22,6 +22,7 @@ env: jobs: test: runs-on: ubuntu-latest + timeout-minutes: 30 if: github.ref != 'refs/heads/master' steps: - name: Checkout @@ -74,16 +75,19 @@ jobs: sarif_file: 'trivy-results.sarif' build: - runs-on: ubuntu-latest - timeout-minutes: 60 + runs-on: ${{ matrix.runner }} + timeout-minutes: 90 if: (github.event_name == 'push' || github.event_name == 'workflow_dispatch') && github.ref == 'refs/heads/master' strategy: fail-fast: false matrix: - platform: - - linux/amd64 - - linux/arm64/v8 - - linux/riscv64 + include: + - platform: linux/amd64 + runner: ubuntu-latest + - platform: linux/arm64/v8 + runner: ubuntu-24.04-arm # native arm64 runner, no QEMU needed + - platform: linux/riscv64 + runner: ubuntu-latest # QEMU required; CGO compilation is slow steps: - name: Checkout uses: actions/checkout@v4