Skip to content

Commit 333a30c

Browse files
committed
ci: retain free GitHub integration runners
1 parent c4e196f commit 333a30c

2 files changed

Lines changed: 4 additions & 5 deletions

File tree

‎.github/CI.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ SEO depends on workspace UI and server code: landing pages reuse workspace prici
2424

2525
Affected type-checks follow the package graph too; repository audits and lint always run. Workspace-only unit jobs use a free GitHub runner and do not start the app test shards.
2626

27-
Lightweight HTTP suites run on free standard GitHub runners. Database integration uses 2-vCPU Blacksmith: a same-source comparison of 16 jobs per provider (32 total) had a slowest shard of 6m 04s versus 6m 55s on free GitHub, with identical coverage. The existing `CI_PROVIDER` switch retains that tested GitHub fallback; provider changes also select the matching cache setup. This is one paired sample, not a long-run percentile estimate.
27+
Database integration and lightweight HTTP suites run on free standard GitHub runners with matching GitHub cache setup. A same-source integration comparison of 16 jobs per provider (32 total) had a slowest shard of 6m 04s on 2-vCPU Blacksmith versus 6m 55s on free GitHub, with identical coverage. GitHub trades the observed 51 seconds for zero runner compute cost. This is one paired sample, not a long-run percentile estimate. These explicitly selected GitHub jobs do not follow `CI_PROVIDER`.
2828

2929
Memory-heavy builds and browser jobs retain appropriately sized Blacksmith runners. Electron uses 4-vCPU Blacksmith: both shards passed within 14 seconds of the 8-vCPU control; the free GitHub rest shard was slower and its lease run stalled.
3030

‎.github/workflows/checks.yml‎

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -71,12 +71,11 @@ jobs:
7171
# The two paths build different schemas (migrations add triggers, checks and NOT VALID
7272
# constraints that `db:push` does not), so each runs the whole suite. Vitest splits each
7373
# suite's files across eight shards by measured duration (DurationBalancedSequencer in vitest.shared.ts); a
74-
# shard runs its files one at a time against its own database. Blacksmith keeps the critical
75-
# integration path fast; standard GitHub runners retain a free, validated fallback.
74+
# shard runs its files one at a time against its own database.
7675
name: integration (${{ matrix.provision }}, ${{ matrix.shard }}/8)
7776
needs: changes
7877
if: needs.changes.outputs.integration == 'true'
79-
runs-on: ${{ (vars.CI_PROVIDER == '' || vars.CI_PROVIDER == 'blacksmith') && 'blacksmith-2vcpu-ubuntu-2404' || 'ubuntu-24.04' }}
78+
runs-on: ubuntu-24.04
8079
timeout-minutes: 20
8180
strategy:
8281
fail-fast: false
@@ -135,7 +134,7 @@ jobs:
135134
- name: Setup workspace
136135
uses: ./.github/actions/setup
137136
with:
138-
provider: ${{ vars.CI_PROVIDER }}
137+
provider: github
139138

140139
- name: Provision a fresh database through the supported command
141140
working-directory: packages/db

0 commit comments

Comments
 (0)