Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
explicit kubelet config key in Node.Spec.ConfigSource.ConfigMap #59847
This makes the Kubelet config key in the ConfigMap an explicit part of
As part of this change, we are retiring ConfigMapRef for ConfigMap.
requested review from
Feb 14, 2018
changed the title from
WIP explicit kubelet config key in Node.Spec.ConfigSource.ConfigMap
explicit kubelet config key in Node.Spec.ConfigSource.ConfigMap
Mar 6, 2018
[MILESTONENOTIFIER] Milestone Pull Request: Up-to-date for process
Pull Request Labels
Whether to move SerializedNodeConfigSource from core API group (current state of this PR) to kubeletconfig isn't an easy question to answer.
On one hand, the Kubelet is the only component that uses the serializable wrapper type right now (for locally tracking assigned and last-known-good config), which was the reason behind @liggitt's recommendation to move it.
On the other hand, the feature the type pertains to (dynamic Kubelet config) is part of the core API group (NodeConfigSource). The kubeletconfig API group is concerned with the structure of the Kubelet's configuration, and I'm not sure it should also include delivery mechanisms for that API (nobody would even think of embedding ConfigMapVolumeSource in the componentconfig API group of a component that runs in a Pod; they'd just use ConfigMapVolumeSource to deliver the config).
I was initially comfortable moving it, but these points are making me think twice.
I thought SerializedObjectReference in core would be a good argument for SerializedNodeConfigSource in core, but the history of that field (#7322) suggests it instead fits the core purpose of "serving REST APIs," which SerializedNodeConfigSource would not.
The kubeletconfig API group can assume the purpose of managing "versioned inputs to the Kubelet," and SerializedNodeConfigSource fits this description.
[APPROVALNOTIFIER] This PR is APPROVED
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