-
Notifications
You must be signed in to change notification settings - Fork 56
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
Update controller runtime to v0.9.5 and k8s dependencies to v0.21.3 #540
Conversation
a2d20a7
to
b24fa5e
Compare
One note about the updated controller-runtime dependency: the latest controller-runtime releases suggest updating to go 1.16, which we currently cannot do since no 1.16 UBI8 images appear to be available at this time. This isn't a huge problem, but some internal packages in controller-runtime make use of the I've tried to sync everything to match go 1.15.13, which is used in our current UBI image, but we should update to 1.16 once that image becomes available. |
b24fa5e
to
3274700
Compare
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.
LGTM
3274700
to
f605d9e
Compare
rebased against main to fix PR checks |
/test v7-devworkspaces-operator-e2e, v7-devworkspace-happy-path |
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.
LGTM
/test v7-devworkspaces-operator-e2e, v7-devworkspace-happy-path |
Great news: turns out prow CI is using some older version of Go and so checks will always fail due to #540 (comment) |
f605d9e
to
2f0afec
Compare
Added to PR:
|
0639367
to
3d31311
Compare
Prep code for supporting k8s 1.21: * Add context.Context parameter to Reconcile() functions [1] * Add RBAC get/create/update coordination.k8s.io/v1 Leases (replacing a configmap for leader election locks) [2] * Adapt event handler code to reflect simplification [3] * Adapt to apimachinery/pkg/runtime Log deprecation (replaced with pkg/client Log) [4] * client.Object is preferred in favor of runtime.Object (v0.7.0 release) [5] * Use admission/v1 instead of v1beta1 for webhook requests [6] [1] - kubernetes-sigs/controller-runtime#1054 [2] - kubernetes-sigs/controller-runtime#1144 [3] - kubernetes-sigs/controller-runtime#1119 [4] - kubernetes-sigs/controller-runtime#1105 [5] - kubernetes-sigs/controller-runtime#898 kubernetes-sigs/controller-runtime#1118 [6] - kubernetes-sigs/controller-runtime#1284 kubernetes-sigs/controller-runtime@a32b29d Signed-off-by: Angel Misevski <[email protected]>
Update sigs.k8s.io/controller-runtime to version v0.9.5, and match other dependencies to those used by controller-runtime, notably: * k8s.io/api, k8s.io/apimachinery, k8s.io/client-go updated to v0.21.3 * Go version should be upgraded to 1.16 but isn't since there isn't a Go 1.16 UBI image we can use as builder. Signed-off-by: Angel Misevski <[email protected]>
extensions/v1beta1 Ingresses are deprecated as of k8s v1.14 and will be removed in v1.22 Signed-off-by: Angel Misevski <[email protected]>
Update the devfile/api dependency to the latest commit, to match the update to k8s v0.21.3. Signed-off-by: Angel Misevski <[email protected]>
Required as v1beta1 webhooks will be unavailable soon. Also update webhooks configs to apply to v1 Ingresses on k8s (networking.k8s.io API group) Signed-off-by: Angel Misevski <[email protected]>
Signed-off-by: Angel Misevski <[email protected]>
3d31311
to
87e377d
Compare
/test v7-devworkspaces-operator-e2e, v7-devworkspace-happy-path |
/test v7-devworkspaces-operator-e2e |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: amisevsk, JPinkney, metlos, sleshchenko 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 |
Actually, I would prefer if there were 2 PRs, if possible - one for ingress v1 and the other for the controller runtime upgrade. Upgrading the controller runtime in che-operator (which depends on DWO) is going to be a much harder task and we should not block progress on v1beta1 removal there by requiring a simulatenous upgrade of controller runtime. |
@amisevsk: PR needs rebase. 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/test-infra repository. |
@amisevsk: The following tests failed, say
Full PR test history. Your PR dashboard. 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/test-infra repository. I understand the commands that are listed here. |
What does this PR do?
Update controller-runtime to
v0.9.5
and associated dependencies to match (mainly, k8s deps tov0.21.3
)Commits walk through required changes step-by-step -- we're going through 3 versions of breaking changes so there's a lot of scattered updates needed.
What issues does this PR fix or reference?
Fixes #516
Fixes #543
Is it tested? How?
Should test controller thoroughly; I've done basic testing and found no issues.
PR Checklist
/test v7-devworkspaces-operator-e2e, v7-devworkspace-happy-path
to trigger)v7-devworkspaces-operator-e2e
: DevWorkspace e2e testv7-devworkspace-happy-path
: DevWorkspace e2e test