MCPcopy
hub / github.com/kubernetes/code-generator

github.com/kubernetes/code-generator @kubernetes-1.36.2 sqlite

repository ↗ · DeepWiki ↗ · release kubernetes-1.36.2 ↗
4,709 symbols 12,805 edges 884 files 2,538 documented · 54%
README

⚠️ This is an automatically published staged repository for Kubernetes.
Contributions, including issues and pull requests, should be made to the main Kubernetes repository: https://github.com/kubernetes/kubernetes.
This repository is read-only for importing, and not used for direct contributions.
See CONTRIBUTING.md for more details.

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

Usage

The examples above are dated. The current recommended script to use is kube_codegen.sh.

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.

Extension points exported contracts — how you extend this code

TagValidator (Interface)
TagValidator describes a single validation tag and how to use it. To be findable by validation-gen, a TagValidator must [31 …
cmd/validation-gen/validators/validators.go
ClusterTestTypesGetter (Interface)
ClusterTestTypesGetter has a method to return a ClusterTestTypeInterface. A group's client should implement this interfa [12 …
examples/HyphenGroup/clientset/versioned/typed/example/v1/clustertesttype.go
ClusterTestTypesGetter (Interface)
ClusterTestTypesGetter has a method to return a ClusterTestTypeInterface. A group's client should implement this interfa [12 …
examples/crd/clientset/versioned/typed/example/v1/clustertesttype.go
ClusterTestTypesGetter (Interface)
ClusterTestTypesGetter has a method to return a ClusterTestTypeInterface. A group's client should implement this interfa [12 …
examples/MixedCase/clientset/versioned/typed/example/v1/clustertesttype.go
TestTypesGetter (Interface)
TestTypesGetter has a method to return a TestTypeInterface. A group's client should implement this interface. [44 implementers]
examples/apiserver/clientset/versioned/typed/example/v1/testtype.go
ClusterTestTypesGetter (Interface)
ClusterTestTypesGetter has a method to return a ClusterTestTypeInterface. A group's client should implement this interfa [12 …
examples/single/clientset/versioned/typed/api/v1/clustertesttype.go
Object (Interface)
(no doc) [59 implementers]
cmd/deepcopy-gen/output_tests/otherpkg/interfaces.go
ProtobufFromGoNamer (Interface)
ProtobufFromGoNamer finds the protobuf name of a type (and its package, and the package path) from its Go name. [1 implementers]
cmd/go-to-protobuf/protobuf/generator.go

Core symbols most depended-on inside this repo

Value
called by 629
cmd/validation-gen/testscheme/testscheme.go
ExpectValid
called by 339
cmd/validation-gen/testscheme/testscheme.go
ExpectMatches
called by 235
cmd/validation-gen/testscheme/testscheme.go
OldValue
called by 190
cmd/validation-gen/testscheme/testscheme.go
AddValidationFunc
called by 180
cmd/validation-gen/testscheme/testscheme.go
Test
called by 164
cmd/validation-gen/testscheme/testscheme.go
Type
called by 160
cmd/client-gen/args/gvtype.go
Register
called by 146
cmd/validation-gen/testscheme/testscheme.go

Shape

Method 1,879
Function 1,629
Struct 770
TypeAlias 233
Interface 179
FuncType 19

Languages

Go100%

Modules by API surface

examples/apiserver/openapi/zz_generated.openapi.go75 symbols
cmd/validation-gen/validators/validators.go59 symbols
cmd/deepcopy-gen/output_tests/wholepkg/zz_generated.deepcopy.go59 symbols
cmd/conversion-gen/generators/conversion.go57 symbols
cmd/defaulter-gen/generators/defaulter.go44 symbols
cmd/validation-gen/validators/limits.go43 symbols
cmd/validation-gen/validation.go39 symbols
cmd/deepcopy-gen/generators/deepcopy.go39 symbols
examples/crd/clientset/versioned/typed/extensions/v1/testtype.go36 symbols
examples/apiserver/apis/example/v1/zz_generated.conversion.go34 symbols
cmd/validation-gen/validators/list.go34 symbols
examples/crd/informers/externalversions/factory.go33 symbols

Dependencies from manifests, versioned

github.com/davecgh/go-spewv1.1.2-0.20180830191 · 1×
github.com/emicklei/go-restful/v3v3.13.0 · 1×
github.com/fxamacker/cbor/v2v2.9.0 · 1×
github.com/go-logr/logrv1.4.3 · 1×
github.com/go-openapi/jsonpointerv0.21.0 · 1×
github.com/go-openapi/jsonreferencev0.20.2 · 1×
github.com/go-openapi/swagv0.23.0 · 1×
github.com/google/gnostic-modelsv0.7.0 · 1×
github.com/josharian/internv1.0.0 · 1×

For agents

$ claude mcp add code-generator \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact