-
Notifications
You must be signed in to change notification settings - Fork 562
fix: check installplan status in bundle e2e test #1631
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: check installplan status in bundle e2e test #1631
Conversation
test/e2e/bundle_e2e_test.go
Outdated
|
||
// Wait for the installplan to complete (5 minute timeout) | ||
Eventually(func() error { | ||
_, err := fetchInstallPlan(GinkgoT(), operatorClient, installPlanRef, buildInstallPlanPhaseCheckFunc(v1alpha1.InstallPlanPhaseComplete)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can a subscription be at latest if the InstallPlan isn't complete?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I assumed so but let me double check - that's basically my concern with this fix
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From what I can see the, the answer is yes. The SubscriptionStateAtLatest
state is applied only considering whether an update exists for that given CSV rather than the actual status of the CSV's InstallPlan.
see
func (o *Operator) ensureSubscriptionCSVState(logger *logrus.Entry, sub *v1alpha1.Subscription, querier resolver.SourceQuerier) (*v1alpha1.Subscription, bool, error) { |
^ Sample failure here. If this is what we're seeing in general, I think there may be a deeper issue with conflicting test setup or even with OLM's reconciliation. The fact that it still doesn't exist after 60 seconds is suspicious to me. |
I was troubleshooting this with @ecordell locally and it looks like the VPA CRD installplan stepresource gets stuck in I think there was also a question of whether the VPA is shipped in OpenShift by default and the provided CRD is unnecessary - but I could not find a reference to the VPA CRD in a stock clusterbot cluster. |
Do we ensure CRDs are ordered before any CRs? If so, what happens if the CR is applied by the InstallPlan while the API is unavailable? Are we resyncing InstallPlans in this state when CRDs they've applied have changed? |
We do ensure that CRDs are created first (they are the first thing that gets reconciled in Yes, we should be re-syncing the installplan with respect to the CRDs. The code certainly looks that way. The issue here is that it looks like the sync is not happening fast enough? |
df0cd49
to
37b2d42
Compare
So with this change instead of creating VPA CRs before the VPA CRD is Complete, the InstallPlan check will fail and the test will fail there. A little confusing since a lot of the flakes we saw were around the PDB not so much the VPA. I think this fix helps with the PDB check (we were checking too early, before the installplan got a chance to create it) but uncovered another issue with the VPA object. |
/lgtm |
/approve |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: ecordell, exdx The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/retest Please review the full test history for this PR and help us cut down flakes. |
10 similar comments
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
28 similar comments
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
/retest Please review the full test history for this PR and help us cut down flakes. |
Description of the change:
Motivation for the change:
Reduce flakiness of bundle with additional objects e2e test.
Reviewer Checklist
/docs