Skip to content

Commit cd99fbb

Browse files
Migrate workflows to Blacksmith (#23)
Co-authored-by: blacksmith-sh[bot] <157653362+blacksmith-sh[bot]@users.noreply.github.com>
1 parent ff7df78 commit cd99fbb

2 files changed

Lines changed: 16 additions & 15 deletions

File tree

‎.github/workflows/go-cli.yml‎

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ on:
1313

1414
jobs:
1515
lint-and-test:
16-
runs-on: ubuntu-latest
16+
runs-on: blacksmith-4vcpu-ubuntu-2404
1717
permissions:
1818
contents: read
1919
steps:
@@ -47,7 +47,7 @@ jobs:
4747
if-no-files-found: error
4848

4949
e2e:
50-
runs-on: ubuntu-latest
50+
runs-on: blacksmith-4vcpu-ubuntu-2404
5151
needs: lint-and-test
5252
steps:
5353
- uses: actions/checkout@v7
@@ -75,7 +75,7 @@ jobs:
7575
# Hermetic parity gate: read-configuration golden comparison + the contract
7676
# lane of the parity matrix (flag validation / output contract, no Docker).
7777
parity:
78-
runs-on: ubuntu-latest
78+
runs-on: blacksmith-4vcpu-ubuntu-2404
7979
needs: lint-and-test
8080
steps:
8181
- uses: actions/checkout@v7
@@ -125,7 +125,7 @@ jobs:
125125
# on quiet days. Runs on schedule/dispatch so the daily lanes' `needs:` is satisfied.
126126
daily-changes:
127127
if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
128-
runs-on: ubuntu-latest
128+
runs-on: blacksmith-4vcpu-ubuntu-2404
129129
outputs:
130130
run: ${{ steps.check.outputs.run }}
131131
steps:
@@ -161,7 +161,7 @@ jobs:
161161
&& needs.lint-and-test.result == 'success'
162162
&& (github.event_name == 'push' || github.event_name == 'pull_request'
163163
|| needs.daily-changes.outputs.run == 'true')
164-
runs-on: ubuntu-latest
164+
runs-on: blacksmith-4vcpu-ubuntu-2404
165165
strategy:
166166
fail-fast: false
167167
matrix:
@@ -240,7 +240,7 @@ jobs:
240240
parity-publish-full:
241241
needs: [lint-and-test, daily-changes]
242242
if: needs.daily-changes.outputs.run == 'true'
243-
runs-on: ubuntu-latest
243+
runs-on: blacksmith-4vcpu-ubuntu-2404
244244
steps:
245245
- uses: actions/checkout@v7
246246
with:
@@ -268,7 +268,7 @@ jobs:
268268
# publish) into the one true cross-lane number.
269269
parity-runtime-gate:
270270
if: always()
271-
runs-on: ubuntu-latest
271+
runs-on: blacksmith-4vcpu-ubuntu-2404
272272
needs: [lint-and-test, e2e, parity, parity-runtime, parity-publish-full]
273273
steps:
274274
- uses: actions/checkout@v7
@@ -313,7 +313,7 @@ jobs:
313313
done
314314
315315
cross-compile:
316-
runs-on: ubuntu-latest
316+
runs-on: blacksmith-4vcpu-ubuntu-2404
317317
needs: lint-and-test
318318
steps:
319319
- uses: actions/checkout@v7

‎.github/workflows/release.yml‎

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ jobs:
2626
# exists; on dispatch we compute the version and validate the tag is free, but
2727
# DO NOT tag yet (the `tag` job below tags only after the gates pass).
2828
prepare:
29-
runs-on: ubuntu-latest
29+
runs-on: blacksmith-4vcpu-ubuntu-2404
3030
outputs:
3131
version: ${{ steps.resolve.outputs.version }}
3232
tag: ${{ steps.resolve.outputs.tag }}
@@ -76,7 +76,7 @@ jobs:
7676
# Hermetic gates — the same task targets CI runs on every push/PR.
7777
# The release is blocked unless these pass.
7878
gate:
79-
runs-on: ubuntu-latest
79+
runs-on: blacksmith-4vcpu-ubuntu-2404
8080
needs: prepare
8181
steps:
8282
- uses: actions/checkout@v7
@@ -106,7 +106,7 @@ jobs:
106106

107107
# Runtime lane (real Docker containers). ubuntu-latest ships Docker.
108108
gate-runtime:
109-
runs-on: ubuntu-latest
109+
runs-on: blacksmith-4vcpu-ubuntu-2404
110110
needs: prepare
111111
steps:
112112
- uses: actions/checkout@v7
@@ -144,7 +144,7 @@ jobs:
144144
# skipped (the tag already exists). The GITHUB_TOKEN push does not re-trigger the
145145
# workflow, so there is no second run.
146146
tag:
147-
runs-on: ubuntu-latest
147+
runs-on: blacksmith-4vcpu-ubuntu-2404
148148
needs: [prepare, gate, gate-runtime]
149149
if: github.event_name == 'workflow_dispatch'
150150
steps:
@@ -160,7 +160,7 @@ jobs:
160160
git push origin "${{ needs.prepare.outputs.tag }}"
161161
162162
goreleaser:
163-
runs-on: ubuntu-latest
163+
runs-on: blacksmith-4vcpu-ubuntu-2404
164164
needs: [prepare, gate, gate-runtime, tag]
165165
# `tag` is skipped on the push path, so gate on explicit success/skip rather
166166
# than the default all-succeeded semantics.
@@ -193,7 +193,8 @@ jobs:
193193
# Multi-arch image build (arm64 emulated) + buildx driver for the
194194
# dockers:/docker_manifests: blocks in .goreleaser.yml.
195195
- uses: docker/setup-qemu-action@v4
196-
- uses: docker/setup-buildx-action@v4
196+
- name: Setup Blacksmith Builder
197+
uses: useblacksmith/setup-docker-builder@v1
197198

198199
# GHCR login. Only reached on the tag path (this workflow is push.tags),
199200
# never on PRs, so images are pushed exclusively from an approved tag run.
@@ -270,7 +271,7 @@ jobs:
270271
271272
# Non-gating: perf/distribution metrics recorded per release, never blocks.
272273
metrics:
273-
runs-on: ubuntu-latest
274+
runs-on: blacksmith-4vcpu-ubuntu-2404
274275
needs: [prepare, goreleaser]
275276
continue-on-error: true
276277
steps:

0 commit comments

Comments
 (0)