kubernetes/utils

Non-Kubernetes-specific utility libraries which are consumed by multiple projects.

380

stars

890

commits

Go

primary language

Jul 7, 2026

updated

golang
kubernetes
Browse cluster: Kubernetes Core API and Control Plane

README

Utils

Test GoDoc

A set of Go libraries that provide low-level, kubernetes-independent packages supplementing the Go standard libs.

Purpose

As Kubernetes grows and spins functionality out of its core and into cooperating repositories like apiserver, kubectl, kubeadm, etc., the need arises for leaf repositories to house shared code and avoid cycles in repository relationships.

This repository is intended to hold shared utilities with no Kubernetes dependencies that may be of interest to any Go project. See these instructions for moving an existing package to this repository.

Criteria for adding code here

  • Used by multiple Kubernetes repositories.

  • Complex enough to be worth vendoring, rather than copying (e.g. not 5 LOC).

  • Can be fully exercised by unit tests (e.g. no dependencies on kernels).

  • Has full unit test coverage.

  • Stable, or backward compatible, API, with complete godocs.

  • Go tools compliant (go get, go test, etc.).

  • Very few (ideally zero) external dependencies.

  • No dependencies on any other Kubernetes repository.

Contributing

Please see CONTRIBUTING.md for instructions on how to contribute.

Contributors

(top 30 of 157)

k8s-ci-robot

175 commits

ixdy

58 commits

dims

51 commits

jsafrane

38 commits

kubernetes/utils

Non-Kubernetes-specific utility libraries which are consumed by multiple projects.

380

stars

890

commits

Go

primary language

Jul 7, 2026

updated

golang
kubernetes
Browse cluster: Kubernetes Core API and Control Plane

README

Utils

Test GoDoc

A set of Go libraries that provide low-level, kubernetes-independent packages supplementing the Go standard libs.

Purpose

As Kubernetes grows and spins functionality out of its core and into cooperating repositories like apiserver, kubectl, kubeadm, etc., the need arises for leaf repositories to house shared code and avoid cycles in repository relationships.

This repository is intended to hold shared utilities with no Kubernetes dependencies that may be of interest to any Go project. See these instructions for moving an existing package to this repository.

Criteria for adding code here

  • Used by multiple Kubernetes repositories.

  • Complex enough to be worth vendoring, rather than copying (e.g. not 5 LOC).

  • Can be fully exercised by unit tests (e.g. no dependencies on kernels).

  • Has full unit test coverage.

  • Stable, or backward compatible, API, with complete godocs.

  • Go tools compliant (go get, go test, etc.).

  • Very few (ideally zero) external dependencies.

  • No dependencies on any other Kubernetes repository.

Contributing

Please see CONTRIBUTING.md for instructions on how to contribute.

Contributors

(top 30 of 157)

k8s-ci-robot

175 commits

ixdy

58 commits

dims

51 commits

jsafrane

38 commits

Languages

Go

97.5%

Shell

2.3%