-
Notifications
You must be signed in to change notification settings - Fork 1.4k
⚠️ Add v1beta2 API for ExtensionConfig #12197
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
⚠️ Add v1beta2 API for ExtensionConfig #12197
Conversation
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.
This looks mostly like a copy/paste of the existing types and updating to the v1beta2 conditions. I left a couple of comments about API things I noticed but I'm not expecting those to be fixed here.
Are there known changes we want to make for v1beta2 for this API?
|
||
// ClientConfig contains the information to make a client | ||
// connection with an Extension server. | ||
type ClientConfig struct { |
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.
ClientConfig is required but does not have any required fields within it, so I could just created something with
clientConfig: {}
What would that mean? Is that valid? Should this actually be optional/have a required field/have a MinProperties
?
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.
As long as this is the only potential change (?), we could consider doing it here. Otherwise we should add it to:
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.
I think lets track it and tackle separately. We could probably do a more thorough API review of these types to be honest
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.
+1 to make a thorough API review
In this case, exactly one of url
or service
must be specified so clientConfig cannot be nil
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.
A lot of this might be aligned to Mutating/ValidatingWebhookConfiguration (not saying it has to stay that way, just to explain why it currently might be as it is)
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.
@chrischdi Feel free to add a follow-up to the umbrella issue
3cb61c4
to
95f2916
Compare
/lgtm |
LGTM label has been added. Git tree hash: 2ebc5a11324105549987e1c506689a8a6ff7ea54
|
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.
Great to see ExtensionConfig making progress, thanks!
only one nit from my side
… for v1beta2 api package
a2d943a
to
6f7a122
Compare
/lgtm /assign @fabriziopandini @JoelSpeed |
LGTM label has been added. Git tree hash: 4bc856dfc3333fcb5834c6827ff21f733c2a311f
|
/test pull-cluster-api-e2e-main |
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
/approve
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: fabriziopandini 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 |
* Introduce ExtensionConfig v1beta2 * change import to v1beta2 * implement conversion * fixup webhook * rename deprecated status to v1beta1 * fixup linter * fixup conversion tests * remove again binary * fixup * delete import restrictions for runtime v1alpha1 * fix * generate * extensionconfig: fixes and revert v1beta1 related changes suited only for v1beta2 api package
What this PR does / why we need it:
Adds v1beta2 ExtensionConfig
Keeps using v1beta1 conditions for v1alpha1
Keeps lifecyclehooks on v1alpha1
Part of:
Which issue(s) this PR fixes (optional, in
fixes #<issue number>(, fixes #<issue_number>, ...)
format, will close the issue(s) when PR gets merged):Fixes #
/area runtime-sdk