The Central Go Modules Repository

To use GoCenter:
export GOPROXY=
May 25th 2020
Last Modified

Go Report Card

Kubernetes controller-runtime Project

The Kubernetes controller-runtime Project is a set of go libraries for building Controllers. It is leveraged by Kubebuilder and Operator SDK. Both are a great place to start for new projects. See Kubebuilder’s Quick Start to see how it can be used.


Versioning, Maintenance, and Compatibility

The full documentation can be found at, but TL;DR:


  • We follow Semantic Versioning (semver)
  • Use releases with your dependency management to ensure that you get compatible code
  • The master branch contains all the latest code, some of which may break compatibility (so “normal” go get is not recommended)


  • All code PR must be labeled with :bug: (patch fixes), :sparkles: (backwards-compatible features), or :warning: (breaking changes)
  • Breaking changes will find their way into the next major release, other changes will go into an semi-immediate patch or minor release
  • For a quick PR template suggesting the right information, use one of these PR templates:
    • Breaking Changes/Features
    • Backwards-Compatible Features
    • Bug fixes
    • Documentation Changes
    • Test/Build/Other Changes



Community, discussion, contribution, and support

Learn how to engage with the Kubernetes community on the community page.

controller-runtime is a subproject of the kubebuilder project in sig apimachinery.

You can reach the maintainers of this project at:


Contributions are greatly appreciated. The maintainers actively manage the issues list, and try to highlight issues suitable for newcomers. The project follows the typical GitHub pull request model. See for more details. Before starting any work, please either comment on an existing issue, or file a new one.

Code of conduct

Participation in the Kubernetes community is governed by the Kubernetes Code of Conduct.