From 0a9a709a3f78faa0d7953edb97226e98a82cc873 Mon Sep 17 00:00:00 2001 From: Steve Degosserie <723552+stiiifff@users.noreply.github.com> Date: Thu, 2 Apr 2026 12:20:10 +0200 Subject: [PATCH] ci: migrate Rust workflow jobs from self-hosted to standard GitHub runners Self-hosted DH-runners have been decommissioned. Switch all Rust build, test, and lint workflows to ubuntu-latest and use apt-based dependency installation (install-deps: true default) instead of the self-hosted path. Co-Authored-By: Claude Opus 4.6 (1M context) --- .github/workflows/actions/setup-env/action.yml | 10 +++++----- .github/workflows/task-build-operator.yml | 4 +--- .github/workflows/task-build-static-operator.yaml | 5 +---- .github/workflows/task-publish-binary.yml | 3 +-- .github/workflows/task-rust-lint.yml | 11 +++-------- .github/workflows/task-rust-tests.yml | 4 +--- .github/workflows/task-warm-sccache.yml | 4 +--- 7 files changed, 13 insertions(+), 28 deletions(-) diff --git a/.github/workflows/actions/setup-env/action.yml b/.github/workflows/actions/setup-env/action.yml index 90a3998b..e3fa0d89 100644 --- a/.github/workflows/actions/setup-env/action.yml +++ b/.github/workflows/actions/setup-env/action.yml @@ -8,7 +8,7 @@ inputs: default: "cache" install-deps: - description: "Whether to install system dependencies. Set to false for self-hosted runners with pre-installed deps" + description: "Whether to install system dependencies via apt. Set to false to install dependencies locally without sudo." required: false default: "true" @@ -128,9 +128,9 @@ runs: shell: bash run: sudo apt-get update && sudo apt-get install -y libpq-dev libclang-dev - # Auto-install missing dependencies when install-deps is false (for self-hosted runners) + # Auto-install missing dependencies locally when install-deps is false (no sudo required) # Note: PATH and env vars are already set up in "Setup paths for cached tools" step - - name: Setup system dependencies (self-hosted) + - name: Setup system dependencies (local install) if: inputs.install-deps == 'false' shell: bash run: | @@ -226,8 +226,8 @@ runs: with: repo-token: ${{ github.token }} - # Auto-install protoc when install-deps is false (for self-hosted runners) - - name: Setup Protoc (self-hosted) + # Auto-install protoc locally when install-deps is false (no sudo required) + - name: Setup Protoc (local install) if: inputs.install-deps == 'false' shell: bash run: | diff --git a/.github/workflows/task-build-operator.yml b/.github/workflows/task-build-operator.yml index e5204b37..c796f3b6 100644 --- a/.github/workflows/task-build-operator.yml +++ b/.github/workflows/task-build-operator.yml @@ -20,8 +20,7 @@ jobs: outputs: binary-hash: ${{ steps.hash-binary.outputs.datahaven-node-hash }} name: Build operator binary - runs-on: - group: DH-runners + runs-on: ubuntu-latest env: RUSTC_WRAPPER: "sccache" CARGO_INCREMENTAL: "0" @@ -42,7 +41,6 @@ jobs: - uses: ./.github/workflows/actions/setup-env with: cache-key: BUILD-RELEASE - install-deps: false - name: Set build flags run: echo "RUSTFLAGS=${{ env.RUSTFLAGS }} -C linker=clang -C link-arg=-fuse-ld=mold" >> $GITHUB_ENV diff --git a/.github/workflows/task-build-static-operator.yaml b/.github/workflows/task-build-static-operator.yaml index 2001f75e..8c9ac8ce 100644 --- a/.github/workflows/task-build-static-operator.yaml +++ b/.github/workflows/task-build-static-operator.yaml @@ -10,8 +10,7 @@ on: jobs: build-node: name: Build operator binary - runs-on: - group: DH-runners + runs-on: ubuntu-latest env: RUSTC_WRAPPER: "sccache" CARGO_INCREMENTAL: "0" @@ -29,8 +28,6 @@ jobs: - uses: ./.github/workflows/actions/setup-env with: cache-key: BUILD-RELEASE - install-deps: false - skip-libpq: true - name: Set build flags run: echo "RUSTFLAGS=-C linker=clang -C link-arg=-fuse-ld=mold" >> $GITHUB_ENV diff --git a/.github/workflows/task-publish-binary.yml b/.github/workflows/task-publish-binary.yml index cfbc757a..7eb9ebfb 100644 --- a/.github/workflows/task-publish-binary.yml +++ b/.github/workflows/task-publish-binary.yml @@ -31,8 +31,7 @@ jobs: retention-days: 1 build-binary: - runs-on: - group: DH-runners + runs-on: ubuntu-latest needs: ["prepare-sources"] permissions: contents: read diff --git a/.github/workflows/task-rust-lint.yml b/.github/workflows/task-rust-lint.yml index 8cd39e05..1a6622d1 100644 --- a/.github/workflows/task-rust-lint.yml +++ b/.github/workflows/task-rust-lint.yml @@ -27,8 +27,7 @@ env: jobs: cargo-fmt: name: "Check format with rustfmt" - runs-on: - group: DH-runners + runs-on: ubuntu-latest defaults: run: working-directory: ${{ env.WORKING_DIR }} @@ -38,15 +37,13 @@ jobs: - uses: ./.github/workflows/actions/setup-env with: cache-key: FMT - install-deps: false # Self-hosted runners have deps pre-installed - name: Run cargo fmt run: cargo fmt --all -- --check check-rust-lint: name: "Check lint with clippy" - runs-on: - group: DH-runners + runs-on: ubuntu-latest defaults: run: working-directory: ${{ env.WORKING_DIR }} @@ -56,7 +53,6 @@ jobs: - uses: ./.github/workflows/actions/setup-env with: cache-key: LINT - install-deps: false # Self-hosted runners have deps pre-installed - name: Set build flags run: echo "RUSTFLAGS=${{ env.RUSTFLAGS }} -C linker=clang -C link-arg=-fuse-ld=mold" >> $GITHUB_ENV @@ -66,8 +62,7 @@ jobs: check-cargo-sort: name: "Check Cargo sort" - runs-on: - group: DH-runners + runs-on: ubuntu-latest defaults: run: diff --git a/.github/workflows/task-rust-tests.yml b/.github/workflows/task-rust-tests.yml index 96db943d..56d78ab6 100644 --- a/.github/workflows/task-rust-tests.yml +++ b/.github/workflows/task-rust-tests.yml @@ -13,8 +13,7 @@ permissions: jobs: rust-tests: name: Run Operator Rust tests - runs-on: - group: DH-runners + runs-on: ubuntu-latest env: RUSTC_WRAPPER: "sccache" CARGO_INCREMENTAL: "0" @@ -32,7 +31,6 @@ jobs: - uses: ./.github/workflows/actions/setup-env with: cache-key: "TEST" - install-deps: false - name: Set build flags run: echo "RUSTFLAGS=${{ env.RUSTFLAGS }} -C linker=clang -C link-arg=-fuse-ld=mold" >> $GITHUB_ENV diff --git a/.github/workflows/task-warm-sccache.yml b/.github/workflows/task-warm-sccache.yml index eef54905..9c90bc85 100644 --- a/.github/workflows/task-warm-sccache.yml +++ b/.github/workflows/task-warm-sccache.yml @@ -15,8 +15,7 @@ permissions: jobs: warm-cache: name: Warm sccache cache - runs-on: - group: DH-runners + runs-on: ubuntu-latest env: RUSTC_WRAPPER: "sccache" CARGO_INCREMENTAL: "0" @@ -34,7 +33,6 @@ jobs: - uses: ./.github/workflows/actions/setup-env with: cache-key: WARM - install-deps: false - name: Set build flags run: echo "RUSTFLAGS=${{ env.RUSTFLAGS }} -C linker=clang -C link-arg=-fuse-ld=mold" >> $GITHUB_ENV