-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
Exclude CRD schema from transformation, fix #1737. #3456
Conversation
Thanks for your pull request. It looks like this may be your first contribution to a Google open source project (if not, look below for help). Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). 📝 Please visit https://cla.developers.google.com/ to sign. Once you've signed (or fixed any issues), please reply here with What to do if you already signed the CLAIndividual signers
Corporate signers
ℹ️ Googlers: Go here for more info. |
@googlebot I signed it! |
CLAs look good, thanks! ℹ️ Googlers: Go here for more info. |
Codecov Report
|
9f9f875
to
054a5c1
Compare
Replaces the fuzzy `Replacer`/`Matcher` interfaces with a simple `FieldVisitor` interface. In case the provided manifest is not a `CustomResourceDefinition` the provided visitor is decorated to perform recursion.
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. I'd like to wait for @tejal29's review
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.
nice!
Fixes #1737.
Description
Replaces the fuzzy
Replacer
/Matcher
interfaces with a simpleFieldVisitor
interface.In case the provided manifest is not a
CustomResourceDefinition
the provided visitor is decorated to perform recursion.My issue comment here provides some background information.
Using this approach other transformation rules could be implemented as decorators of
FieldVisitor
objects as well.cc @tejal29
User facing changes
Users will be able to deploy CRDs using skaffold.
Before
CRD deployment failed since skaffold added labels to the
metadata
specification within the CRD's OpenAPI schema which should actually remain untouched.After
CRD fields other than in the first level are not traversed. Therefore CRD schemas remain untouched while the CRD is still labeled.
Submitter Checklist
Reviewer Notes
Release Notes