-
Notifications
You must be signed in to change notification settings - Fork 39k
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
kubeadm: Remove feature gates from JoinConfiguration #70755
kubeadm: Remove feature gates from JoinConfiguration #70755
Conversation
/ok-to-test |
/assign @fabriziopandini @luxas @timothysc |
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.
Should we add a failed negative test to fail upgrade/conversion if the field existed before?
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.
looks good. @timothysc suggestion is good to have the extra test.
I will add the conversion test tomorrow. |
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.
@ereslibre Thanks for this PR! Well done!
@luxas @rosti I was expecting fuzzer test or custom roundtrip tests to fail after removing a field in the API, but it doesn't seems the case... what I'm missing?
/this-is-fine |
In response to this:
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. |
/test pull-kubernetes-e2e-gce-100-performance |
@fabriziopandini My educated guess is that the fuzzer works with internal types to start with. Therefore if we have removed this field and its conversion code from an internal type, the fuzzer won't fail (it has nothing to fuzz) even though the field is still present in some of the versioned types. |
/test pull-kubernetes-e2e-gce-100-performance |
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.
given bazel and verify tests are passing.
/lgtm
thanks @ereslibre
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.
Only minor nits
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.
Thanks @ereslibre !
/approve
I left final lgtm to @timothysc
Relay on the feature gates provided by the ClusterConfiguration when downloaded from the cluster during the join process.
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
@@ -542,7 +533,7 @@ func (j *Join) BootstrapKubelet(tlsBootstrapCfg *clientcmdapi.Config) error { | |||
} | |||
|
|||
// This feature is disabled by default in kubeadm | |||
if features.Enabled(j.cfg.FeatureGates, features.DynamicKubeletConfig) { | |||
if features.Enabled(j.initCfg.FeatureGates, features.DynamicKubeletConfig) { |
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.
nit: in the future this should be use/be called ClusterConfiguration
, because the thing returned from the cluster configmap at this stage is a clusterconfig, not an initconfig
This is not specific to this PR though
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.
Yes, I'll file a bug for that later, thank you.
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: ereslibre, fabriziopandini, luxas 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 |
What type of PR is this?
/kind cleanup
What this PR does / why we need it:
Relay on the feature gates provided by the ClusterConfiguration
when downloaded from the cluster during the join process.
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 kubernetes/kubeadm#1088
Special notes for your reviewer:
None
Does this PR introduce a user-facing change?: