If you are using a released version of Kubernetes, you should refer to the docs that go with that version.
Documentation for other releases can be found at releases.k8s.io.
Kubernetes is one of the largest open source Go projects, so good tooling a solid understanding of Go is critical to Kubernetes development. This document provides a collection of resources, tools and tips that our developers have found useful.
- Kubernetes Go development environment
- Go Tour - Official Go tutorial.
- Effective Go - A good collection of Go advice.
- Kubernetes Code conventions - Style guide for Kubernetes code.
- Three Go Landmines - Surprising behavior in the Go language. These have caused real bugs!
- godep - Used for Kubernetes dependency management. See also Kubernetes godep and dependency management
- Go Version Manager - A handy tool for managing Go versions.
- godepq - A tool for analyzing go import trees.
- Godoc bookmarklet - navigate from a github page to the corresponding godoc page.
- Consider making a separate Go tree for each project, which can make overlapping dependency management much easier. Remember to set the
$GOPATH
correctly! Consider scripting this. - Emacs users - setup go-mode