Open-Source Wikis

/

Kubernetes

/

Packages

kubernetes/kubernetes

Packages

The staging/src/k8s.io/ tree is the source-of-truth for 35 published Go modules that external projects import. Code is developed here; release tooling mirrors each subdirectory to its own kubernetes/<module> GitHub repo at release time. This page is the catalog.

Why staging exists

Before staging, projects that wanted to depend on Kubernetes' API types or client library had to vendor k8s.io/kubernetes directly. That worked, but it forced consumers to take on the entire kubernetes/kubernetes module graph and Go-version requirements. Staging splits the public API surface into many smaller modules with their own go.mod, each independently consumable.

The mirroring is one-directional. Bug fixes and new features land here, in the staging path; the publishing tool synchronizes them outward. There is no source-of-truth in the published mirror repos.

The catalog

Module Purpose Published as
api API types for every built-in group/version (core/v1, apps/v1, batch/v1, …) k8s.io/api
apiextensions-apiserver The CRD API server library k8s.io/apiextensions-apiserver
apimachinery Shared API plumbing: scheme, codec, watch, runtime types k8s.io/apimachinery
apiserver Generic apiserver framework k8s.io/apiserver
cli-runtime Shared CLI helpers (factory, printers, resource builders) k8s.io/cli-runtime
client-go The dominant Kubernetes client library k8s.io/client-go
cloud-provider Cloud-controller-manager library + interface k8s.io/cloud-provider
cluster-bootstrap Bootstrap-token utilities k8s.io/cluster-bootstrap
code-generator The codegen toolchain (deepcopy, clientset, informer, lister, openapi, …) k8s.io/code-generator
component-base Shared base for every component (logs, metrics, CLI, leader election, feature gates, config) k8s.io/component-base
component-helpers Cross-component helpers that don't fit elsewhere k8s.io/component-helpers
controller-manager Shared controller-manager library k8s.io/controller-manager
cri-api The CRI gRPC contract k8s.io/cri-api
cri-client CRI gRPC client k8s.io/cri-client
cri-streaming The CRI exec/attach/port-forward streaming server k8s.io/cri-streaming
csi-translation-lib In-tree → CSI volume translation k8s.io/csi-translation-lib
dynamic-resource-allocation DRA library k8s.io/dynamic-resource-allocation
endpointslice EndpointSlice helpers shared by controller and proxy k8s.io/endpointslice
externaljwt External JWT issuer integration k8s.io/externaljwt
kms KMS plugin contract k8s.io/kms
kube-aggregator The API aggregation layer k8s.io/kube-aggregator
kube-controller-manager KCM types and helpers k8s.io/kube-controller-manager
kube-proxy kube-proxy types k8s.io/kube-proxy
kube-scheduler Scheduler types k8s.io/kube-scheduler
kubectl kubectl library — what cmd/kubectl is built from k8s.io/kubectl
kubelet Kubelet types k8s.io/kubelet
metrics Metrics server types and client k8s.io/metrics
mount-utils Mount helpers (Linux/Windows) k8s.io/mount-utils
pod-security-admission PodSecurity admission library k8s.io/pod-security-admission
sample-apiserver Reference: a tiny aggregated API server k8s.io/sample-apiserver
sample-cli-plugin Reference: a tiny kubectl plugin k8s.io/sample-cli-plugin
sample-controller Reference: a tiny controller k8s.io/sample-controller
streaming Generic streaming framework k8s.io/streaming

How to read this catalog

Three tiers, by external popularity:

  1. The big four: api, apimachinery, client-go, apiserver. Every external Kubernetes-aware project depends on at least one of these.
  2. The toolkit: cli-runtime, code-generator, component-base, kubectl, apiextensions-apiserver, kube-aggregator, pod-security-admission. Pulled in by tools that build on top of the API server, by code generators, by kubectl plugin authors, and by admission webhooks.
  3. The protocol contracts: cri-api, cri-client, cri-streaming, csi-translation-lib, dynamic-resource-allocation, endpointslice, kms, externaljwt. Used by runtime authors, CSI driver authors, DRA driver authors, and KMS implementations.

A handful of "samples" (sample-apiserver, sample-cli-plugin, sample-controller) are reference implementations rather than libraries to import.

Sub-pages

For a single page covering all the staging modules with a paragraph each, see staging-modules.md.

Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.

Packages – Kubernetes wiki | Factory