mirror of
https://github.com/kubernetes/sample-controller.git
synced 2025-03-15 17:11:02 +08:00

Automatic merge from submit-queue (batch tested with PRs 64181, 65737). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. API linter framework and namesMatch API rule **What this PR does / why we need it**: Bump kube-openapi dependency to use the [API linter framework](https://github.com/kubernetes/kube-openapi/pull/83) in k/k OpenAPI spec generation procedure. Currently one API rule is enforced: "Go field names must be CamelCase. JSON field names must be camelCase. Other than capitalization of the initial letter, the two should almost always match. No underscores nor dashes in either." **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 #65244 **Special notes for your reviewer**: Most code change in this PR was generated (~1700 lines). Please see commits for detail. **Release note**: ```release-note NONE ``` /sig api-machinery /cc @pwittrock @mbohlool Kubernetes-commit: 614e3adda05c5d7189c8485ba7abe1ba7ee501a7
code-generator
Golang code-generators used to implement Kubernetes-style API types.
Purpose
These code-generators can be used
- in the context of CustomResourceDefinition to build native, versioned clients, informers and other helpers
- in the context of User-provider API Servers to build conversions between internal and versioned types, defaulters, protobuf codecs, internal and versioned clients and informers.
Resources
- The example sample controller shows a code example of a controller that uses the clients, listers and informers generated by this library.
- The article Kubernetes Deep Dive: Code Generation for CustomResources gives a step by step instruction on how to use this library.
Compatibility
HEAD of this repo will match HEAD of k8s.io/apiserver, k8s.io/apimachinery, and k8s.io/client-go.
Where does it come from?
code-generator
is synced from https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/code-generator.
Code changes are made in that location, merged into k8s.io/kubernetes
and later synced here.