-
Notifications
You must be signed in to change notification settings - Fork 594
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 remaining resource ingress.class behaviors #815
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Always list global KongPlugins without a class annotation. Previously, the store listed these resources using its matching criteria for Ingress objects. This change more or less preserves the older global KongPlugin behavior, which would match KongPlugins with a matching class annotation and KongPlugins with no class annotation (if using the default ingress class). Behavior is now slightly different as it will match classless KongPlugins even if using a custom ingress class. As this function is only used to warn users about these KongPlugins (they are no longer supported), legacy-ish behavior is desirable here.
hbagdi
suggested changes
Aug 27, 2020
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.
Thank you for arranging the commits the way you have. That allows for rebasing and merging in.
Please add test cases in each commit for the change you have done (doesn't apply to test commit, but others do need additional tests).
mflendrich
suggested changes
Aug 28, 2020
Co-authored-by: Michał Flendrich <michal@flendrich.pro>
mflendrich
approved these changes
Aug 31, 2020
This was referenced Aug 31, 2020
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What this PR does / why we need it:
"kong"
string in tests.Which issue this PR fixes
fixes #739
fixes #731
Special notes for your reviewer:
Changes for #731 are a composite of this and the implementation for #732, which was merged in #767. See comments in #731 for additional details.
We had originally discussed also rolling removal of the
ListGlobalKongPlugins()
store function into this, but on further review, we should leave that in. We list them only to report that they're there and instruct users to convert them to KongClusterPlugins:kubernetes-ingress-controller/internal/ingress/controller/parser/parser.go
Lines 1593 to 1601 in de29e98
ListGlobalKongPlugins()
is still a bit odd as it sorta still used the legacy matching behavior: it tracked the Ingress matching behavior, but that has since changed. Tracking it now would omit warnings for global KongPlugins with no class annotation (which were previously processed if you used the default "kong" class). As such, this PR preserves the function, but always uses ExactOrEmptyMatching to try and match the old behavior as best possible.