ci: run the plugins suite in parallel processes

With the compilation cache warm the suite is bound by spec execution, which
splits cleanly across processes. Run it as its own step with the ginkgo CLI,
already declared as a tool in go.mod, and drop the package from the main go
test invocation so it is not run twice.

Locally, with -race: 69s to 19s warm, and 256s to 96s cold.
This commit is contained in:
Deluan 2026-08-30 16:26:45 -04:00
parent 2a35d65d21
commit e407c63f8d

View File

@ -148,7 +148,12 @@ jobs:
restore-keys: wazero-${{ runner.os }}-
- name: Test
run: go test -shuffle=on -tags netgo,sqlite_fts5 -race ./... -v
run: go test -shuffle=on -tags netgo,sqlite_fts5 -race -v $(go list ./... | grep -v '/plugins$')
# Run separately: this suite is long enough that splitting it across
# processes beats running it alongside the other packages.
- name: Test plugins
run: go tool ginkgo -p -race -tags netgo,sqlite_fts5 ./plugins/
- name: Test ndpgen
run: |