Skip to content
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

Run upgrade tests #1656

Closed
1 task done
ccfishk opened this issue Aug 4, 2021 · 4 comments
Closed
1 task done

Run upgrade tests #1656

ccfishk opened this issue Aug 4, 2021 · 4 comments
Assignees

Comments

@ccfishk
Copy link
Contributor

ccfishk commented Aug 4, 2021

Is there an existing issue for this?

  • I have searched the existing issues

Problem Statement

We have breaking changes in 2.0, user would have broken controller after upgrade.

Proposed Solution

We need ensure there is no regression when user upgrade from 1.3 to 2.0
Run upgrade tests against beta
Run upgrade tests against Kong Enterprise

Additional information

No response

Acceptance Criteria

No response

@ccfishk ccfishk added this to the Blockers for KIC 2.0 GA milestone Aug 4, 2021
@ccfishk ccfishk self-assigned this Aug 4, 2021
@shaneutt
Copy link
Contributor

shaneutt commented Aug 4, 2021

We do basic upgrade tests from v1 to v2 in the https://github.com/kong/charts repository on each PR right now, just a heads up.

@rainest
Copy link
Contributor

rainest commented Aug 11, 2021

I ran through https://gist.github.com/rainest/cf4db9b0e607f0e719470166f3cf2634 (install all the 1.3 flat manifests, confirm some basic Ingress handling, install the equivalent 2.0.0-alpha.3 manifest over top, confirm updated Pods come online and that the Ingress still routes) successfully earlier. The caveats then were:

  1. 2.x deployment files weren't updated to reflect the latest image available. We need to remember to do that during a release.
  2. The alpha.3 images still fail because we accidentally restored a bug that requires Knative CRDs to start unless you explicitly disable that controller. use AutoHandlers instead of custom enablement logic #1585 should resolve that.
  3. The RBAC role names and bindings do differ between 1.x and 2.x. This does not cause any direct issue, since that role is what the 2.x Deployments reference. It will leave the now-unused 1.x role and binding around. They should be deleted for cleanliness, but are benign.

All but the third of those has been addressed in the beta, and the third we can't really address beyond documentation (you just have to manually delete the old SA and binding). Is there anything further we wanted to test?

@ccfishk
Copy link
Contributor Author

ccfishk commented Aug 17, 2021

Image kong/kubernetes-ingress-controller:2.0.0-beta.2 should have resolved issue 1 &2.

Interms of of 3, I would propose a prepare/cleanup function within 2.x controller, which basically remove all non-used (1.x) RBAC role names and bindings before KIC ready for work. Or put it another word, only keep 2.x required RBAC role in the cluster.

actionable item
#1718

@mflendrich
Copy link
Contributor

Kong/charts#450 is a known upgrade regression in KIC 2.0.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants