From 8bba665d8d1acec5014c02d0dd97afd96a1a25a3 Mon Sep 17 00:00:00 2001 From: Luke Heath Date: Tue, 12 May 2026 23:02:43 -0500 Subject: [PATCH] Route heavy CI jobs to larger GitHub-hosted runners (#45284) --- .github/workflows/build-binaries.yaml | 2 +- .github/workflows/e2e-agent.yml | 2 +- .github/workflows/fleet-and-orbit.yml | 4 ++-- .github/workflows/fleetctl-preview-latest.yml | 2 +- .github/workflows/golangci-lint.yml | 8 ++++---- .github/workflows/goreleaser-fleet.yaml | 2 +- .github/workflows/goreleaser-snapshot-fleet.yaml | 2 +- .github/workflows/randokiller-go.yml | 2 +- .github/workflows/release-fleetctl-docker-deps.yaml | 2 +- .github/workflows/test-android.yml | 6 +++--- .github/workflows/test-db-changes.yml | 2 +- .github/workflows/test-go-suite.yaml | 2 +- .github/workflows/test-js.yml | 4 ++-- .github/workflows/test-native-tooling-packaging.yml | 2 +- .github/workflows/test-packaging-build-docker-deps.yml | 2 +- .github/workflows/test-packaging.yml | 2 +- 16 files changed, 23 insertions(+), 23 deletions(-) diff --git a/.github/workflows/build-binaries.yaml b/.github/workflows/build-binaries.yaml index 02fbbfa814..2d082e55e7 100644 --- a/.github/workflows/build-binaries.yaml +++ b/.github/workflows/build-binaries.yaml @@ -22,7 +22,7 @@ permissions: jobs: build-binaries: - runs-on: ubuntu-latest + runs-on: ubuntu-4core steps: - name: Harden Runner uses: step-security/harden-runner@20cf305ff2072d973412fa9b1e3a4f227bda3c76 # v2.14.0 diff --git a/.github/workflows/e2e-agent.yml b/.github/workflows/e2e-agent.yml index 1cdb4684ca..b25ff10132 100644 --- a/.github/workflows/e2e-agent.yml +++ b/.github/workflows/e2e-agent.yml @@ -67,7 +67,7 @@ jobs: run-server: timeout-minutes: 240 - runs-on: ubuntu-latest + runs-on: ubuntu-8core needs: gen steps: - name: Harden Runner diff --git a/.github/workflows/fleet-and-orbit.yml b/.github/workflows/fleet-and-orbit.yml index 9571bcc5df..211a768dcf 100644 --- a/.github/workflows/fleet-and-orbit.yml +++ b/.github/workflows/fleet-and-orbit.yml @@ -65,7 +65,7 @@ jobs: strategy: matrix: mysql: ["mysql:8.0.44"] - runs-on: ubuntu-latest + runs-on: ubuntu-8core needs: gen steps: - name: Harden Runner @@ -262,7 +262,7 @@ jobs: # installed, and installing it is time consuming and unreliable. run-tuf-and-gen-pkgs: timeout-minutes: 60 - runs-on: ubuntu-latest + runs-on: ubuntu-8core needs: [gen, build-macos-targets] steps: - name: Harden Runner diff --git a/.github/workflows/fleetctl-preview-latest.yml b/.github/workflows/fleetctl-preview-latest.yml index b01c479403..2024fc4929 100644 --- a/.github/workflows/fleetctl-preview-latest.yml +++ b/.github/workflows/fleetctl-preview-latest.yml @@ -53,7 +53,7 @@ jobs: # - Linux Docker containers are not supported in Windows. # - Unattended installation of Docker on macOS fails. (see # https://github.com/docker/for-mac/issues/6450) - os: [ubuntu-latest] + os: [ubuntu-4core] runs-on: ${{ matrix.os }} steps: diff --git a/.github/workflows/golangci-lint.yml b/.github/workflows/golangci-lint.yml index e833e91f96..fc46ddc6f7 100644 --- a/.github/workflows/golangci-lint.yml +++ b/.github/workflows/golangci-lint.yml @@ -44,7 +44,7 @@ jobs: fail-fast: false matrix: # See #9943, we just need to add windows-latest here once all issues are fixed. - os: [ubuntu-latest, macos-latest, windows-latest] + os: [ubuntu-4core, macos-latest, windows-latest] runs-on: ${{ matrix.os }} steps: # Tell git not to change line endings when checking out files on Windows. Without this gofmt @@ -64,7 +64,7 @@ jobs: go-version-file: 'go.mod' - name: Install dependencies (Linux) - if: matrix.os == 'ubuntu-latest' + if: matrix.os == 'ubuntu-4core' run: | # The following packages are needed to build Fleet Desktop on Ubuntu. sudo apt update -y && sudo apt install -y gcc libgtk-3-dev libayatana-appindicator3-dev @@ -108,7 +108,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-latest, macos-latest, windows-latest] + os: [ubuntu-4core, macos-latest, windows-latest] runs-on: ${{ matrix.os }} steps: - name: Harden Runner @@ -127,7 +127,7 @@ jobs: go-version-file: 'go.mod' - name: Install dependencies (Linux) - if: matrix.os == 'ubuntu-latest' + if: matrix.os == 'ubuntu-4core' run: | # The following packages are needed to build Fleet Desktop on Ubuntu. sudo apt update -y && sudo apt install -y gcc libgtk-3-dev libayatana-appindicator3-dev diff --git a/.github/workflows/goreleaser-fleet.yaml b/.github/workflows/goreleaser-fleet.yaml index 4b624ac892..0557ca0e5d 100644 --- a/.github/workflows/goreleaser-fleet.yaml +++ b/.github/workflows/goreleaser-fleet.yaml @@ -20,7 +20,7 @@ permissions: jobs: goreleaser: - runs-on: ubuntu-22.04-4-cores + runs-on: ubuntu-16core environment: Docker Hub outputs: binary_uploaded: ${{ steps.check_binary.outputs.exists }} diff --git a/.github/workflows/goreleaser-snapshot-fleet.yaml b/.github/workflows/goreleaser-snapshot-fleet.yaml index 4b2236d9a6..48bb0ddf17 100644 --- a/.github/workflows/goreleaser-snapshot-fleet.yaml +++ b/.github/workflows/goreleaser-snapshot-fleet.yaml @@ -37,7 +37,7 @@ jobs: # # Also not run if author is dependabot (it doesn't have access to Github secrets). if: ${{ (github.repository == 'fleetdm/fleet') && (github.actor != 'dependabot[bot]') && (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository) }} - runs-on: ubuntu-22.04 + runs-on: ubuntu-8core environment: Docker Hub steps: - name: Harden Runner diff --git a/.github/workflows/randokiller-go.yml b/.github/workflows/randokiller-go.yml index a52ac6477e..bb79ed82ce 100644 --- a/.github/workflows/randokiller-go.yml +++ b/.github/workflows/randokiller-go.yml @@ -49,7 +49,7 @@ jobs: needs: parse_config strategy: matrix: - os: [ubuntu-latest] + os: [ubuntu-8core] mysql: ${{fromJson(needs.parse_config.outputs.json).mysql_matrix}} runs-on: ${{ matrix.os }} diff --git a/.github/workflows/release-fleetctl-docker-deps.yaml b/.github/workflows/release-fleetctl-docker-deps.yaml index 92de3e9ec6..c1307d1e45 100644 --- a/.github/workflows/release-fleetctl-docker-deps.yaml +++ b/.github/workflows/release-fleetctl-docker-deps.yaml @@ -26,7 +26,7 @@ permissions: jobs: push_latest: - runs-on: ubuntu-latest + runs-on: ubuntu-4core environment: Docker Hub permissions: contents: write diff --git a/.github/workflows/test-android.yml b/.github/workflows/test-android.yml index 4169323134..e515e31cda 100644 --- a/.github/workflows/test-android.yml +++ b/.github/workflows/test-android.yml @@ -33,7 +33,7 @@ permissions: jobs: build: name: Build and test - runs-on: ubuntu-latest + runs-on: ubuntu-8core steps: - name: Harden Runner @@ -140,7 +140,7 @@ jobs: instrumented-tests: name: Instrumented tests - runs-on: ubuntu-latest + runs-on: ubuntu-8core timeout-minutes: 30 steps: @@ -242,7 +242,7 @@ jobs: scep-integration-test: name: SCEP integration test - runs-on: ubuntu-latest + runs-on: ubuntu-8core timeout-minutes: 15 steps: diff --git a/.github/workflows/test-db-changes.yml b/.github/workflows/test-db-changes.yml index e6ed99fd1c..a23d35d5a7 100644 --- a/.github/workflows/test-db-changes.yml +++ b/.github/workflows/test-db-changes.yml @@ -28,7 +28,7 @@ permissions: jobs: test-db-changes: - runs-on: ubuntu-latest + runs-on: ubuntu-4core steps: - name: Harden Runner uses: step-security/harden-runner@20cf305ff2072d973412fa9b1e3a4f227bda3c76 # v2.14.0 diff --git a/.github/workflows/test-go-suite.yaml b/.github/workflows/test-go-suite.yaml index 6d222edcc7..4f383ddd36 100644 --- a/.github/workflows/test-go-suite.yaml +++ b/.github/workflows/test-go-suite.yaml @@ -43,7 +43,7 @@ jobs: # Don't cancel other jobs if one test suite fails. Since our product teams are tightly coupled, we never want to see our tests fail due # to an unrelated issue in another product area. continue-on-error: true - runs-on: ubuntu-latest + runs-on: ubuntu-16core env: RACE_ENABLED: false diff --git a/.github/workflows/test-js.yml b/.github/workflows/test-js.yml index 84b866dfc2..c522ad19d0 100644 --- a/.github/workflows/test-js.yml +++ b/.github/workflows/test-js.yml @@ -32,7 +32,7 @@ jobs: test-js: strategy: matrix: - os: [ubuntu-latest] + os: [ubuntu-4core] runs-on: ${{ matrix.os }} steps: @@ -77,7 +77,7 @@ jobs: lint-js: strategy: matrix: - os: [ubuntu-latest] + os: [ubuntu-4core] runs-on: ${{ matrix.os }} steps: diff --git a/.github/workflows/test-native-tooling-packaging.yml b/.github/workflows/test-native-tooling-packaging.yml index e0ea59ad96..4cbd60aae8 100644 --- a/.github/workflows/test-native-tooling-packaging.yml +++ b/.github/workflows/test-native-tooling-packaging.yml @@ -42,7 +42,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-latest] + os: [ubuntu-4core] # build_type == 'remote' means this job will test the fleetdm/fleetctl:latest from Docker Hub. # build_type == 'local' means this job will build the the image locally. # diff --git a/.github/workflows/test-packaging-build-docker-deps.yml b/.github/workflows/test-packaging-build-docker-deps.yml index 14077ac2c9..5230bad0c9 100644 --- a/.github/workflows/test-packaging-build-docker-deps.yml +++ b/.github/workflows/test-packaging-build-docker-deps.yml @@ -40,7 +40,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-latest] + os: [ubuntu-4core] runs-on: ${{ matrix.os }} steps: diff --git a/.github/workflows/test-packaging.yml b/.github/workflows/test-packaging.yml index c778aa7ab4..edd039ddee 100644 --- a/.github/workflows/test-packaging.yml +++ b/.github/workflows/test-packaging.yml @@ -55,7 +55,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-latest, macos-15, macos-26] + os: [ubuntu-4core, macos-15, macos-26] runs-on: ${{ matrix.os }} steps: