Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.Sign up
Move config local to every controller in KCM #72800
What type of PR is this?
What this PR does / why we need it:
Which issue(s) this PR fixes:
Special notes for your reviewer:
Does this PR introduce a user-facing change?:
luxas left a comment
Thanks very much @stewart-yu!
Overall this looks ok. We have the struggle of wanting the config to be close to the controller, but still be publicly available. I think we need to move the conversions from
We should make these configuration types decodable by marking them with the deepcopy runtime.Object & TypeMeta tags, idk if we should do that in this PR or not. Maybe you could make that change in a dedicated commit (in k8s.io/kube-controller-manager/config) so we can easily rip it out if we don't want to have it
The end goal here is that every controller config kind is encodable/decodable on its own. Hence every schemebuilder in every package should register what's needed for it to work, and the
The OWNERS files are ok as-is for now, we can make those more suitable in a future PR.
@sttts does this sound ok?
Please discuss in #sig-release in slack if it's urgent this land as part of v1.14. Otherwise it will land once we hit code thaw.