OPRUN-4392,OPRUN-4393: Add OLMv1 progress deadline QE tests#745
OPRUN-4392,OPRUN-4393: Add OLMv1 progress deadline QE tests#745bandrade wants to merge 3 commits into
Conversation
Automate the ClusterExtension rollout failure coverage for OCP-88331 and OCP-88332 by building in-cluster bundle and catalog images for successful and failing bundle versions. The new QE specs verify ProgressDeadlineExceeded on an initial failed rollout and ProbeFailure while upgrading to a bad revision under the BoxCutter runtime. Signed-off-by: Bruno Andrade <bruno.balint@gmail.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository: openshift/coderabbit/.coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (2)
🚧 Files skipped from review as they are similar to previous changes (1)
WalkthroughAdds a Ginkgo suite for ClusterExtension progress-deadline and rollout failure behavior. The tests build synthetic bundle and catalog images, validate install and upgrade status conditions, and register two Boxcutter runtime cases in the OLMv1 test payload. ChangesClusterExtension Progress-Deadline Coverage
Estimated code review effort: 4 (Complex) | ~45 minutes Sequence Diagram(s)sequenceDiagram
participant QE Spec
participant BuildConfig
participant ClusterCatalog
participant ClusterExtension
participant ClusterObjectSet
QE Spec->>BuildConfig: Build synthetic bundle and catalog images
QE Spec->>ClusterCatalog: Create catalog reference
ClusterCatalog-->>QE Spec: Report Serving
QE Spec->>ClusterExtension: Create or upgrade extension
ClusterExtension->>ClusterObjectSet: Reconcile bundle revision
ClusterObjectSet-->>ClusterExtension: Report rollout and probe conditions
ClusterExtension-->>QE Spec: Report deadline and active revisions
Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 14 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (14 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: bandrade The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
openshift/tests-extension/test/qe/specs/olmv1_ce_progress_deadline.go (1)
34-36: 💤 Low valueRemove ineffective
GinkgoRecover()call.
defer g.GinkgoRecover()at the Describe level is dead code. The Describe callback executes during test tree construction, not test execution, so this deferred call runs before any specs execute. GinkgoRecover is designed to catch panics within goroutines spawned fromItblocks, not at the suite construction level.🧹 Suggested fix
var _ = g.Describe("[sig-olmv1][Jira:OLM][OCPFeatureGate:NewOLMBoxCutterRuntime] clusterextension progress deadline", g.Label("NonHyperShiftHOST"), func() { - defer g.GinkgoRecover() - var oc = exutil.NewCLIWithoutNamespace("default")🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@openshift/tests-extension/test/qe/specs/olmv1_ce_progress_deadline.go` around lines 34 - 36, Remove the ineffective deferred call to g.GinkgoRecover() from the Describe callback: locate the anonymous function passed to g.Describe (the function literal in the declaration starting with var _ = g.Describe(..., func() { ... })) and delete the line containing defer g.GinkgoRecover(); if panic recovery is needed for goroutines spawned during tests, move a g.GinkgoRecover() call into the appropriate It/BeforeEach/AfterEach block or the goroutine entrypoint instead.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Nitpick comments:
In `@openshift/tests-extension/test/qe/specs/olmv1_ce_progress_deadline.go`:
- Around line 34-36: Remove the ineffective deferred call to g.GinkgoRecover()
from the Describe callback: locate the anonymous function passed to g.Describe
(the function literal in the declaration starting with var _ = g.Describe(...,
func() { ... })) and delete the line containing defer g.GinkgoRecover(); if
panic recovery is needed for goroutines spawned during tests, move a
g.GinkgoRecover() call into the appropriate It/BeforeEach/AfterEach block or the
goroutine entrypoint instead.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: 9db03a8f-8565-4538-ba1f-c5d77f3957d3
📒 Files selected for processing (1)
openshift/tests-extension/test/qe/specs/olmv1_ce_progress_deadline.go
Regenerate the tests-extension metadata after adding the ClusterExtension progress deadline QE coverage. Signed-off-by: Bruno Andrade <bruno.balint@gmail.com>
|
/test openshift-e2e-aws |
|
/test openshift-e2e-aws-techpreview |
|
@bandrade: all tests passed! Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
|
Needs a Jira ticket or |
|
/retitle OPRUN-4392,OPRUN-4393: Add OLMv1 progress deadline QE tests |
|
@bandrade: This pull request references OPRUN-4392 which is a valid jira issue. Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "5.0.0" version, but no target version was set. This pull request references OPRUN-4393 which is a valid jira issue. Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "5.0.0" version, but no target version was set. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
/jira refresh |
|
@perdasilva: This pull request references OPRUN-4392 which is a valid jira issue. This pull request references OPRUN-4393 which is a valid jira issue. Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "5.0.0" version, but no target version was set. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
/test payload-job |
|
@dtfranz: The specified target(s) for The following commands are available to trigger optional jobs: Use DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
|
Don't think this will work but... /test e2e-aws-ovn-techpreview-extended-f1 |
|
@dtfranz: The specified target(s) for The following commands are available to trigger optional jobs: Use DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
Signed-off-by: Bruno Andrade <bruno.balint@gmail.com>
Summary
Validation
go test -mod=vendor ./test/qe/specsmake build./bin/olmv1-tests-ext list -o names | rg '88331|88332'\n-make verify GO=/Users/bandrade/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.7.darwin-arm64/bin/goSummary by CodeRabbit