fix: stabilize Chainsaw tests and add govulncheck to CI gate#95
Merged
Conversation
Chainsaw tests that assert transient operator states (InsufficientData) race with the reconcile loop when minimumDataPoints is low. Add testing convention to prefer stable state assertions or script-based polls that accept multiple valid states. Signed-off-by: Sebastien Tardif <sebtardif@ncf.ca>
Replace static InsufficientData assertions in observe-mode and opt-out Chainsaw tests with script-based polls that accept either InsufficientData or Monitoring. This prevents the same transient-state race fixed in recommend-mode (PR #92): with minimumDataPoints=1, the operator can transition past InsufficientData before the assert evaluates. Add govulncheck as a CI gate job so PRs are blocked when known vulnerabilities exist in the dependency tree. The existing govulncheck in security.yaml continues to run on the weekly schedule. Closes #93 Closes #72 Signed-off-by: Sebastien Tardif <sebtardif@ncf.ca>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changes
Chainsaw transient-state flake fix (#93)
Replace static
InsufficientDataassertions in observe-mode and opt-outChainsaw tests with script-based polls that accept either
InsufficientDataor
Monitoring. This is the same fix pattern applied to recommend-mode inPR #92: with
minimumDataPoints: 1, the operator can transition pastInsufficientDatabefore the assert evaluates, causing a 2-minute timeout.Tests fixed:
test/e2e/observe-mode/chainsaw-test.yamltest/e2e/opt-out/chainsaw-test.yamlGovulncheck CI gate (#72)
Add govulncheck as a job in
ci.yamlgated by thegopath filter, andinclude it in the
ci-gaterequired status check. PRs with knownvulnerabilities in the dependency tree are now blocked from merging.
The existing govulncheck in
security.yamlcontinues to run on the weeklyschedule for proactive detection.
Closes #93
Closes #72