diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b447ef2e..fae01644 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -30,7 +30,7 @@ jobs: # named release-please-- and inherits sentinel passes for free. guard: name: Guard - runs-on: ubuntu-latest + runs-on: blacksmith-2vcpu-ubuntu-2404 timeout-minutes: 2 outputs: mode: ${{ steps.classify.outputs.mode }} @@ -200,7 +200,7 @@ jobs: # match local `make quality-check`. pre-check: name: Pre-check (format + lint) - runs-on: ubuntu-latest + runs-on: blacksmith-2vcpu-ubuntu-2404 needs: [guard] if: ${{ needs.guard.outputs.mode == 'full' }} timeout-minutes: 3 @@ -222,7 +222,7 @@ jobs: quality-gates: name: Quality Gates - runs-on: ubuntu-latest + runs-on: blacksmith-4vcpu-ubuntu-2404 needs: [guard, pre-check] if: ${{ needs.guard.outputs.mode == 'full' }} strategy: @@ -284,7 +284,7 @@ jobs: build: name: Build Package - runs-on: ubuntu-latest + runs-on: blacksmith-2vcpu-ubuntu-2404 needs: [guard, quality-gates] if: ${{ needs.guard.outputs.mode == 'full' && needs.guard.outputs.should_build == 'true' }} timeout-minutes: 5 @@ -311,15 +311,15 @@ jobs: # Build and check the optional Nix flake, so the packaged CLI # (`nix run github:runpod/flash`) can't silently break -- its runtime # dependency list is maintained separately from pyproject.toml. The uv path - # above is untouched, and this job only runs on - # x86_64-linux (ubuntu-latest). `nix flake check` runs the flake's own gate + # above is untouched, and this job only runs on x86_64-linux + # (blacksmith-2vcpu-ubuntu-2404). `nix flake check` runs the flake's own gate # (ruff lint + format, nixfmt, shellcheck, the pytest suite) in a sandbox; # the build + smoke-test confirm the packaged CLI on the pinned Python 3.14. # # A failed Nix build blocks validation, protecting the advertised Nix CLI. nix: name: Nix flake - runs-on: ubuntu-latest + runs-on: blacksmith-2vcpu-ubuntu-2404 needs: [guard] if: ${{ needs.guard.outputs.mode == 'full' }} timeout-minutes: 30 @@ -348,7 +348,7 @@ jobs: # job in `needs:` and the results array. validation: name: Validation - runs-on: ubuntu-latest + runs-on: blacksmith-2vcpu-ubuntu-2404 needs: [guard, pre-check, quality-gates, build, nix] if: always() timeout-minutes: 1 diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index 199fbd38..fd0d4e10 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -22,7 +22,7 @@ jobs: # rerun a previous run. e2e: name: E2E - runs-on: ubuntu-latest + runs-on: blacksmith-4vcpu-ubuntu-2404 timeout-minutes: 45 steps: diff --git a/.github/workflows/release-please.yml b/.github/workflows/release-please.yml index 851e49b8..396dd344 100644 --- a/.github/workflows/release-please.yml +++ b/.github/workflows/release-please.yml @@ -20,7 +20,7 @@ jobs: # duplicate ~24 min of compute per merge for zero added signal. release-please: name: Release Please - runs-on: ubuntu-latest + runs-on: blacksmith-2vcpu-ubuntu-2404 outputs: release_created: ${{ steps.release.outputs.release_created }} @@ -42,7 +42,7 @@ jobs: pypi-publish: name: PyPI Publish - runs-on: ubuntu-latest + runs-on: blacksmith-2vcpu-ubuntu-2404 needs: [release-please] if: ${{ needs.release-please.outputs.release_created == 'true' }} @@ -75,7 +75,7 @@ jobs: linear-sync: name: Linear Release Sync needs: release-please - runs-on: ubuntu-latest + runs-on: blacksmith-2vcpu-ubuntu-2404 permissions: contents: read steps: @@ -94,7 +94,7 @@ jobs: name: Linear Release Complete if: ${{ needs.release-please.outputs.release_created == 'true' }} needs: [release-please, linear-sync] - runs-on: ubuntu-latest + runs-on: blacksmith-2vcpu-ubuntu-2404 permissions: contents: read steps: