mirror of
https://github.com/burrowers/garble.git
synced 2026-04-22 15:47:04 +08:00
split check-third-party in CI and disable github.com/samber/lo
The main "linux" job is the slowest by far at over 20 minutes. The CPU on the hosted Actions runners is very slow, but luckily, we get 20 concurrent Linux runners. Split the main Linux job further. Also, now that generics in Go are widespread, we no longer need a Go generics library for good coverage. While here, time each of the third party project commands.
This commit is contained in:
@@ -48,11 +48,6 @@ jobs:
|
|||||||
|
|
||||||
# Static checks from this point forward. Only run on one Go version and on
|
# Static checks from this point forward. Only run on one Go version and on
|
||||||
# linux, since it's the fastest platform, and the tools behave the same.
|
# linux, since it's the fastest platform, and the tools behave the same.
|
||||||
- name: Test third-party project builds
|
|
||||||
if: matrix.os == 'ubuntu-latest' && matrix.go-version == '1.26.x'
|
|
||||||
run: |
|
|
||||||
go install
|
|
||||||
./scripts/check-third-party.sh
|
|
||||||
- if: matrix.os == 'ubuntu-latest' && matrix.go-version == '1.26.x'
|
- if: matrix.os == 'ubuntu-latest' && matrix.go-version == '1.26.x'
|
||||||
run: ./scripts/crlf-test.sh
|
run: ./scripts/crlf-test.sh
|
||||||
- if: matrix.os == 'ubuntu-latest' && matrix.go-version == '1.26.x'
|
- if: matrix.os == 'ubuntu-latest' && matrix.go-version == '1.26.x'
|
||||||
@@ -95,3 +90,14 @@ jobs:
|
|||||||
go-version: 1.26.x
|
go-version: 1.26.x
|
||||||
cache: false
|
cache: false
|
||||||
- run: go test -short -race ./...
|
- run: go test -short -race ./...
|
||||||
|
|
||||||
|
test-third-party:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v5
|
||||||
|
- uses: actions/setup-go@v5
|
||||||
|
with:
|
||||||
|
go-version: 1.26.x
|
||||||
|
cache: false
|
||||||
|
- run: go install
|
||||||
|
- run: ./scripts/check-third-party.sh
|
||||||
|
|||||||
@@ -21,11 +21,6 @@ modules=(
|
|||||||
# Note that the latest tag does not build on Go 1.23.
|
# Note that the latest tag does not build on Go 1.23.
|
||||||
golang.zx2c4.com/wireguard v0.0.0-20231211153847-12269c276173
|
golang.zx2c4.com/wireguard v0.0.0-20231211153847-12269c276173
|
||||||
|
|
||||||
# Lo helps cover generics.
|
|
||||||
# TODO: would be nice to find a more popular alternative,
|
|
||||||
# at least once generics are more widespread.
|
|
||||||
github.com/samber/lo v1.47.0
|
|
||||||
|
|
||||||
# Brotli is a compression algorithm popular with HTTP.
|
# Brotli is a compression algorithm popular with HTTP.
|
||||||
# It's also transpiled from C with a gitlab.com/cznic/ccgo,
|
# It's also transpiled from C with a gitlab.com/cznic/ccgo,
|
||||||
# so this helps stress garble with Go code that few humans would write.
|
# so this helps stress garble with Go code that few humans would write.
|
||||||
@@ -45,7 +40,7 @@ exit_code=0
|
|||||||
|
|
||||||
show() {
|
show() {
|
||||||
echo "> ${@}"
|
echo "> ${@}"
|
||||||
if ! "${@}"; then
|
if ! time "${@}"; then
|
||||||
echo "FAIL"
|
echo "FAIL"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user