mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-02-26 15:47:21 +00:00
This PR does a few things: - Sets the gh actions runner sizes for lint (s) and test (l) workflows - Runs the tests on gh actions in parallel - Skips fetching the spec tests when unnecessary (on windows in appveyor) - Removes ubuntu appveyor runner since it's essentially duplicate of the gh action workflow now The gh test seems to go down from ~35min to ~13min.
58 lines
1.2 KiB
YAML
58 lines
1.2 KiB
YAML
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
pull_request:
|
|
branches:
|
|
- master
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
lint:
|
|
name: Lint
|
|
runs-on: [self-hosted-ghr, size-s-x64]
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
submodules: false
|
|
|
|
# Cache build tools to avoid downloading them each time
|
|
- uses: actions/cache@v4
|
|
with:
|
|
path: build/cache
|
|
key: ${{ runner.os }}-build-tools-cache-${{ hashFiles('build/checksums.txt') }}
|
|
|
|
- name: Set up Go
|
|
uses: actions/setup-go@v5
|
|
with:
|
|
go-version: 1.25
|
|
cache: false
|
|
|
|
- name: Run linters
|
|
run: |
|
|
go run build/ci.go lint
|
|
go run build/ci.go check_generate
|
|
go run build/ci.go check_baddeps
|
|
|
|
test:
|
|
name: Test
|
|
needs: lint
|
|
runs-on: [self-hosted-ghr, size-l-x64]
|
|
strategy:
|
|
matrix:
|
|
go:
|
|
- '1.25'
|
|
- '1.24'
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
submodules: true
|
|
|
|
- name: Set up Go
|
|
uses: actions/setup-go@v5
|
|
with:
|
|
go-version: ${{ matrix.go }}
|
|
cache: false
|
|
|
|
- name: Run tests
|
|
run: go run build/ci.go test -p 8
|