Repository navigation
ci: Run the test suite once, in the required check - #982
Conversation
The required check, ci / Build and test, runs go test ./... with envtest on every pull request and on main. IAM API testing ran the same go test ./... on every push, gated nothing, and doubled each run. It goes, and CI takes the concurrency group the other workflows share.
ecv
left a comment
There was a problem hiding this comment.
Approve.
"IAM API testing" ran the same go test ./... with envtest 1.37.0 that the required ci / Build and test already runs (ci.yaml installs setup-envtest, uses 1.37.0, and runs go test ./... -timeout 10m), so deleting it removes a duplicate run without dropping coverage. ci / Build and test stays the only check the required-ci ruleset names, so no gate disappears.
ci.yamlgains the same concurrency group the deleted workflow had: pull-request and branch runs cancel superseded ones,mainruns never cancel.- The deleted job ran on every push that touched Go, including branches without a PR; those now get a run only once a PR is opened, which is where the gate is.
Follow-ups:
- The deleted job had a 5-minute test timeout against
ci.yaml's 10; a suite that drifts past 5 minutes will no longer be noticed early. Fine, but worth knowing if test time is watched.
|
On the timeout: |
Related to #978.
The required check,
ci / Build and test, runsgo test ./...with envtest 1.37.0 on every pull request and onmain. "IAM API testing" ran the samego test ./...on every push that changed Go files. It is not required, so it gated nothing, and each pull request ran the suite twice. It goes, as datum-cloud/network-services-operator#849 did for NSO, and CI takes the concurrency group the other workflows share.Where each step of IAM API testing runs now
go mod downloadgo testdownloads what it needssetup-envtest use 1.37.0, pinned by commitgo test ./...Corner cases
main.maincancel-in-progressis false on the default branch.Test plan
ci / Build and testran the suite on fix: Decide a claim's requests of one type together #978's pull request and on this one: the quota controller package's envtests took 51.7 s and 52.3 s.actionlintpasses onci.yaml. The concurrency group is the one infix-newlines.yaml,test-environment-validation.yamlandtest-prometheus-rules.yaml, word for word.testing.yamlor "IAM API testing".mainran CI's suite (run, the quota controller package in 52.6 s), and "IAM API testing" did not run.