-
Notifications
You must be signed in to change notification settings - Fork 552
go.*,pkg,vendor: Bump controller-runtime to v0.10.1 #2368
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
go.*,pkg,vendor: Bump controller-runtime to v0.10.1 #2368
Conversation
0273ed2
to
1c3da5a
Compare
181ed76
to
bfe84d4
Compare
@@ -30,15 +30,15 @@ var _ = Describe("Not found APIs", func() { | |||
// each entry is an installplan with a deprecated resource | |||
type payload struct { | |||
name string | |||
ip *operatorsv1alpha1.InstallPlan | |||
IP *operatorsv1alpha1.InstallPlan |
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.
Non-blocking: Why was this exported?
/approve |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: awgreene, timflannagan 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 |
Is there potentially a race condition here? |
/retest |
crds.OperatorGroup(), | ||
crds.Operator(), | ||
crds.OperatorCondition(), | ||
CRDs: []apiextensionsv1.CustomResourceDefinition{ |
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.
nb: Is this something we should move to across the board when using controller-runtime moving forward?
/lgtm |
/retest-required Please review the full test history for this PR and help us cut down flakes. |
1 similar comment
/retest-required Please review the full test history for this PR and help us cut down flakes. |
Holding so the bot doesn't go crazy. /hold |
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.
It seems like we're continuously running into the following errors:
Summarizing 2 Failures:
[Fail] Operator API [It] should surface components in its status
/home/runner/work/operator-lifecycle-manager/operator-lifecycle-manager/test/e2e/util_test.go:838
[Fail] Operator API when a subscription to a package exists [It] should automatically adopt components
/home/runner/work/operator-lifecycle-manager/operator-lifecycle-manager/test/e2e/operator_test.go:346
When poking around these errors locally, it seems like both of the test failures are around existing ServiceAccount's that aren't being propagated to the list of status.components.refs array. Maybe we're missing that cache event entirely in some cases?
Note: in the context of the second test case, it looks like the ServiceAccount in the kiali bundle was labeled with the operator component. Is the adoption controller, which also uses metadata-only watches for a subset of the resource watches, responsible for ensuring that resource gets labeled?
bfe84d4
to
ffb4b0f
Compare
bbe44c5
to
babce58
Compare
Hmm weird it looks like we do get the mapping function event properly but we're somehow not able to update the Operator resource:
I'm going to try and update to also collect the state of that Operator resource. |
e136f98
to
6cb7f2d
Compare
ad0cf83
to
5e3ee03
Compare
@timflannagan hoping #2515 doesn't screw this PR up. @dinhxuanvu and I needed to get unblocked for constraint stuff added to api. |
Signed-off-by: timflannagan <[email protected]>
Update the CRD field to use the apiextensionsv1.CustomResourceDefinition type instead of the client.Object interface. It looks like this change was introduced during the sweep to k8s 1.22 bump: kubernetes-sigs/controller-runtime@b5eeb71 Signed-off-by: timflannagan <[email protected]>
Update the o/api dependency and pull in a new version that contains v1 CRDs. Newer controller-runtime versions don't support v1beta1 CRDs Signed-off-by: timflannagan <[email protected]>
…pendency Signed-off-by: timflannagan <[email protected]>
Update the adoption controller test subscription fixture and remove the status sub-resource block that's shared between tests. When an object is created, it's status sub-resource is now removed, so changes are centered around setting this resource before firing off any Update calls used throughout this test package. Update any test/e2e APIs that also follow a similiar pattern. Signed-off-by: timflannagan <[email protected]>
05bd756
to
83c4cad
Compare
/lgtm |
// Patch for a race condition involving metadata-only | ||
// informers until it can be resolved upstream: | ||
sigs.k8s.io/controller-runtime v0.9.2 => github.com/benluddy/controller-runtime v0.9.3-0.20210720171926-9bcb99bd9bd3 | ||
sigs.k8s.io/controller-runtime v0.10.0 => github.com/timflannagan/controller-runtime v0.10.1-0.20211210161403-6756a4203e70 |
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.
Tracking the removal of this pin in #2353 (comment).
Description of the change:
Bumps the controller runtime dependency to v0.10.1 which contains the race condition fix around metadata-only watchers.
Motivation for the change:
Removes the replace pin in the root go.mod.
Reviewer Checklist
/doc
Fixes #2353