Skip to content

Commit e6e3d78

Browse files
lmnzxantondlr
andauthored
CI workflows to use warpbuild ci runner (#8343)
Self hosted GitHub Runners review and improvements local testnet workflow now uses warpbuild ci runner Co-Authored-By: lemon <snyxmk@gmail.com> Co-Authored-By: antondlr <anton@sigmaprime.io>
1 parent f387090 commit e6e3d78

File tree

2 files changed

+15
-49
lines changed

2 files changed

+15
-49
lines changed

.github/workflows/local-testnet.yml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ concurrency:
1414

1515
jobs:
1616
dockerfile-ubuntu:
17-
runs-on: ${{ github.repository == 'sigp/lighthouse' && fromJson('["self-hosted", "linux", "CI", "large"]') || 'ubuntu-latest' }}
17+
runs-on: ${{ github.repository == 'sigp/lighthouse' && 'warp-ubuntu-latest-x64-8x' || 'ubuntu-latest' }}
1818
steps:
1919
- uses: actions/checkout@v5
2020

@@ -31,7 +31,7 @@ jobs:
3131
retention-days: 3
3232

3333
run-local-testnet:
34-
runs-on: ubuntu-22.04
34+
runs-on: ${{ github.repository == 'sigp/lighthouse' && 'warp-ubuntu-latest-x64-8x' || 'ubuntu-latest' }}
3535
needs: dockerfile-ubuntu
3636
steps:
3737
- uses: actions/checkout@v5
@@ -89,7 +89,7 @@ jobs:
8989
${{ steps.assertoor_test_result.outputs.failed_test_details }}
9090
EOF
9191
)
92-
92+
9393
echo "Test Result: $test_result"
9494
echo "$test_status"
9595
if ! [ "$test_result" == "success" ]; then
@@ -100,7 +100,7 @@ jobs:
100100
101101
doppelganger-protection-success-test:
102102
needs: dockerfile-ubuntu
103-
runs-on: ubuntu-22.04
103+
runs-on: ubuntu-latest
104104
steps:
105105
- uses: actions/checkout@v5
106106

@@ -136,7 +136,7 @@ jobs:
136136

137137
doppelganger-protection-failure-test:
138138
needs: dockerfile-ubuntu
139-
runs-on: ubuntu-22.04
139+
runs-on: ubuntu-latest
140140
steps:
141141
- uses: actions/checkout@v5
142142

@@ -173,7 +173,7 @@ jobs:
173173
# Tests checkpoint syncing to a live network (current fork) and a running devnet (usually next scheduled fork)
174174
checkpoint-sync-test:
175175
name: checkpoint-sync-test-${{ matrix.network }}
176-
runs-on: ubuntu-latest
176+
runs-on: ${{ github.repository == 'sigp/lighthouse' && 'warp-ubuntu-latest-x64-8x' || 'ubuntu-latest' }}
177177
needs: dockerfile-ubuntu
178178
if: contains(github.event.pull_request.labels.*.name, 'syncing')
179179
continue-on-error: true
@@ -216,7 +216,7 @@ jobs:
216216
# Test syncing from genesis on a local testnet. Aims to cover forward syncing both short and long distances.
217217
genesis-sync-test:
218218
name: genesis-sync-test-${{ matrix.fork }}-${{ matrix.offline_secs }}s
219-
runs-on: ubuntu-latest
219+
runs-on: ${{ github.repository == 'sigp/lighthouse' && 'warp-ubuntu-latest-x64-8x' || 'ubuntu-latest' }}
220220
needs: dockerfile-ubuntu
221221
strategy:
222222
matrix:
@@ -259,7 +259,7 @@ jobs:
259259
# a PR is safe to merge. New jobs should be added here.
260260
local-testnet-success:
261261
name: local-testnet-success
262-
runs-on: ubuntu-latest
262+
runs-on: ${{ github.repository == 'sigp/lighthouse' && 'warp-ubuntu-latest-x64-8x' || 'ubuntu-latest' }}
263263
needs: [
264264
'dockerfile-ubuntu',
265265
'run-local-testnet',
@@ -272,4 +272,4 @@ jobs:
272272
- name: Check that success job is dependent on all others
273273
run: |
274274
exclude_jobs='checkpoint-sync-test'
275-
./scripts/ci/check-success-job.sh ./.github/workflows/local-testnet.yml local-testnet-success "$exclude_jobs"
275+
./scripts/ci/check-success-job.sh ./.github/workflows/local-testnet.yml local-testnet-success "$exclude_jobs"

.github/workflows/test-suite.yml

Lines changed: 6 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,6 @@ env:
2222
# NOTE: this token is a personal access token on Jimmy's account due to the default GITHUB_TOKEN
2323
# not having access to other repositories. We should eventually devise a better solution here.
2424
LIGHTHOUSE_GITHUB_TOKEN: ${{ secrets.LIGHTHOUSE_GITHUB_TOKEN }}
25-
# Enable self-hosted runners for the sigp repo only.
26-
SELF_HOSTED_RUNNERS: ${{ github.repository == 'sigp/lighthouse' }}
2725
# Disable incremental compilation
2826
CARGO_INCREMENTAL: 0
2927
# Enable portable to prevent issues with caching `blst` for the wrong CPU type
@@ -78,8 +76,7 @@ jobs:
7876
name: release-tests-ubuntu
7977
needs: [check-labels]
8078
if: needs.check-labels.outputs.skip_ci != 'true'
81-
# Use self-hosted runners only on the sigp repo.
82-
runs-on: ${{ github.repository == 'sigp/lighthouse' && fromJson('["self-hosted", "linux", "CI", "large"]') || 'ubuntu-latest' }}
79+
runs-on: ${{ github.repository == 'sigp/lighthouse' && 'warp-ubuntu-latest-x64-8x' || 'ubuntu-latest' }}
8380
steps:
8481
- uses: actions/checkout@v5
8582
# Set Java version to 21. (required since Web3Signer 24.12.0).
@@ -88,7 +85,6 @@ jobs:
8885
distribution: 'temurin'
8986
java-version: '21'
9087
- name: Get latest version of stable Rust
91-
if: env.SELF_HOSTED_RUNNERS == 'false'
9288
uses: moonrepo/setup-rust@v1
9389
with:
9490
channel: stable
@@ -97,7 +93,6 @@ jobs:
9793
env:
9894
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
9995
- name: Install Foundry (anvil)
100-
if: env.SELF_HOSTED_RUNNERS == 'false'
10196
uses: foundry-rs/foundry-toolchain@v1
10297
with:
10398
version: nightly-ca67d15f4abd46394b324c50e21e66f306a1162d
@@ -111,48 +106,36 @@ jobs:
111106
name: beacon-chain-tests
112107
needs: [check-labels]
113108
if: needs.check-labels.outputs.skip_ci != 'true'
114-
# Use self-hosted runners only on the sigp repo.
115-
runs-on: ${{ github.repository == 'sigp/lighthouse' && fromJson('["self-hosted", "linux", "CI", "large"]') || 'ubuntu-latest' }}
109+
runs-on: ${{ github.repository == 'sigp/lighthouse' && 'warp-ubuntu-latest-x64-8x' || 'ubuntu-latest' }}
116110
env:
117111
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
118112
steps:
119113
- uses: actions/checkout@v5
120114
- name: Get latest version of stable Rust
121-
if: env.SELF_HOSTED_RUNNERS == 'false'
122115
uses: moonrepo/setup-rust@v1
123116
with:
124117
channel: stable
125118
cache-target: release
126119
bins: cargo-nextest
127120
- name: Run beacon_chain tests for all known forks
128121
run: make test-beacon-chain
129-
- name: Show cache stats
130-
if: env.SELF_HOSTED_RUNNERS == 'true'
131-
continue-on-error: true
132-
run: sccache --show-stats
133122
http-api-tests:
134123
name: http-api-tests
135124
needs: [check-labels]
136125
if: needs.check-labels.outputs.skip_ci != 'true'
137-
# Use self-hosted runners only on the sigp repo.
138-
runs-on: ${{ github.repository == 'sigp/lighthouse' && fromJson('["self-hosted", "linux", "CI", "large"]') || 'ubuntu-latest' }}
126+
runs-on: ${{ github.repository == 'sigp/lighthouse' && 'warp-ubuntu-latest-x64-8x' || 'ubuntu-latest' }}
139127
env:
140128
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
141129
steps:
142130
- uses: actions/checkout@v5
143131
- name: Get latest version of stable Rust
144-
if: env.SELF_HOSTED_RUNNERS == 'false'
145132
uses: moonrepo/setup-rust@v1
146133
with:
147134
channel: stable
148135
cache-target: release
149136
bins: cargo-nextest
150137
- name: Run http_api tests for all recent forks
151138
run: make test-http-api
152-
- name: Show cache stats
153-
if: env.SELF_HOSTED_RUNNERS == 'true'
154-
continue-on-error: true
155-
run: sccache --show-stats
156139
op-pool-tests:
157140
name: op-pool-tests
158141
needs: [check-labels]
@@ -220,29 +203,22 @@ jobs:
220203
name: debug-tests-ubuntu
221204
needs: [check-labels]
222205
if: needs.check-labels.outputs.skip_ci != 'true'
223-
# Use self-hosted runners only on the sigp repo.
224-
runs-on: ${{ github.repository == 'sigp/lighthouse' && fromJson('["self-hosted", "linux", "CI", "large"]') || 'ubuntu-latest' }}
206+
runs-on: ${{ github.repository == 'sigp/lighthouse' && 'warp-ubuntu-latest-x64-8x' || 'ubuntu-latest' }}
225207
env:
226208
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
227209
steps:
228210
- uses: actions/checkout@v5
229211
- name: Get latest version of stable Rust
230-
if: env.SELF_HOSTED_RUNNERS == 'false'
231212
uses: moonrepo/setup-rust@v1
232213
with:
233214
channel: stable
234215
bins: cargo-nextest
235216
- name: Install Foundry (anvil)
236-
if: env.SELF_HOSTED_RUNNERS == 'false'
237217
uses: foundry-rs/foundry-toolchain@v1
238218
with:
239219
version: nightly-ca67d15f4abd46394b324c50e21e66f306a1162d
240220
- name: Run tests in debug
241221
run: make test-debug
242-
- name: Show cache stats
243-
if: env.SELF_HOSTED_RUNNERS == 'true'
244-
continue-on-error: true
245-
run: sccache --show-stats
246222
state-transition-vectors-ubuntu:
247223
name: state-transition-vectors-ubuntu
248224
needs: [check-labels]
@@ -261,25 +237,19 @@ jobs:
261237
name: ef-tests-ubuntu
262238
needs: [check-labels]
263239
if: needs.check-labels.outputs.skip_ci != 'true'
264-
# Use self-hosted runners only on the sigp repo.
265-
runs-on: ${{ github.repository == 'sigp/lighthouse' && fromJson('["self-hosted", "linux", "CI", "small"]') || 'ubuntu-latest' }}
240+
runs-on: ${{ github.repository == 'sigp/lighthouse' && 'warp-ubuntu-latest-x64-8x' || 'ubuntu-latest' }}
266241
env:
267242
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
268243
steps:
269244
- uses: actions/checkout@v5
270245
- name: Get latest version of stable Rust
271-
if: env.SELF_HOSTED_RUNNERS == 'false'
272246
uses: moonrepo/setup-rust@v1
273247
with:
274248
channel: stable
275249
cache-target: release
276250
bins: cargo-nextest
277251
- name: Run consensus-spec-tests with blst and fake_crypto
278252
run: make test-ef
279-
- name: Show cache stats
280-
if: env.SELF_HOSTED_RUNNERS == 'true'
281-
continue-on-error: true
282-
run: sccache --show-stats
283253
basic-simulator-ubuntu:
284254
name: basic-simulator-ubuntu
285255
needs: [check-labels]
@@ -328,21 +298,17 @@ jobs:
328298
name: execution-engine-integration-ubuntu
329299
needs: [check-labels]
330300
if: needs.check-labels.outputs.skip_ci != 'true'
331-
runs-on: ${{ github.repository == 'sigp/lighthouse' && fromJson('["self-hosted", "linux", "CI", "small"]') || 'ubuntu-latest' }}
301+
runs-on: ${{ github.repository == 'sigp/lighthouse' && 'warp-ubuntu-latest-x64-8x' || 'ubuntu-latest' }}
332302
steps:
333303
- uses: actions/checkout@v5
334304
- name: Get latest version of stable Rust
335-
if: env.SELF_HOSTED_RUNNERS == 'false'
336305
uses: moonrepo/setup-rust@v1
337306
with:
338307
channel: stable
339308
cache-target: release
340309
cache: false
341310
env:
342311
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
343-
- name: Add go compiler to $PATH
344-
if: env.SELF_HOSTED_RUNNERS == 'true'
345-
run: echo "/usr/local/go/bin" >> $GITHUB_PATH
346312
- name: Run exec engine integration tests in release
347313
run: make test-exec-engine
348314
check-code:

0 commit comments

Comments
 (0)