tree: 3a540f97dbbe9495f1f357efc62f4d11352969de [path history] [tgz]
  1. .github/
  2. buffer/
  3. clock/
  4. diff/
  5. env/
  6. exec/
  7. field/
  8. hack/
  9. inotify/
  10. integer/
  11. io/
  12. keymutex/
  13. mount/
  14. net/
  15. nsenter/
  16. path/
  17. pointer/
  18. semantic/
  19. strings/
  20. temp/
  21. third_party/
  22. trace/
  23. .gitignore
  24. code-of-conduct.md
  25. CONTRIBUTING.md
  26. go.mod
  27. go.sum
  28. HOWTOMOVE.md
  29. LICENSE
  30. Makefile
  31. OWNERS
  32. README.md
  33. SECURITY_CONTACTS
README.md

Utils

Build Status 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.