This guide covers how to start contributing to kind 😄
1. Familiarize Yourself With Contributing to Kubernetes Projects 🔗︎
Read the Kubernetes Community Guidelines 🔗︎
Additionally, note that
Setup GitHub Account 🔗︎
Kubernetes and kind are developed on GitHub and will require an account to contribute.
Sign CNCF CLA 🔗︎
You'll need to get the CLA signed to contribute.
Check The Kubernetes Contributor Guides 🔗︎
You may come back to this later, but we highly recommend reading these:
- Kubernetes Contributor Guide
- Main contributor documentation, or you can just jump directly to the contributing section
- Contributor Cheat Sheet
- Common resources for existing developers
2. Install Tools 🔗︎
Install Git 🔗︎
Our source code is managed with
git, to develop locally you
will need to install
You can check if
git is already on your system and properly installed with
the following command:
Install Docker 🔗︎
Currently, to create clusters you will need to install Docker.
To check if
docker has been installed:
This documentation is written using Docker version 18.09.2.
Install Go (optional) 🔗︎
KIND is written in Go, however our makefiles automatically ensure the correct version of go when building or testing.
You may still wish to install go on your machine to make it easier to integrate
into your editor etc. You can find the version of go we're currently using to develop kind in the
.go-version file in the kind repo.
Install or upgrade Go using the instructions for your operating system. You can check if Go is in your system with the following command:
3. Read The Docs 🔗︎
4. Reaching Out 🔗︎
Issues are tracked on GitHub. Please check the issue tracker to see if there is any existing discussion or work related to your interests.
In particular, if you're just getting started, you may want to look for issues labeled good first issue or help wanted which are standard labels in the Kubernetes project. The help wanted label marks issues we're actively seeking help with while good first issue is additionally applied to a subset of issues we think will be particularly good for newcomers.
If you're interested in working on any of these, leave a comment to let us know!
If you do not see anything, please file a new issue.
NOTE: Please file an enhancement / feature request issue to discuss features before filing a PR (ideally even before writing any code), we have a lot to consider with respect to our existing users and future support when accepting any new feature.
To streamline the process, please reach out and discuss the concept and design / approach ASAP so the maintainers and community can get involved early.
Also – Please reach out in general for bugs, feature requests, and other issues!
The maintainers of this project are reachable via:
- Kubernetes Slack in the #kind channel (most active, along with the community)
- The issue tracker by filing an issue
- The Kubernetes SIG-Testing Mailing List
See also: the Kubernetes community page.
5. Next Steps 🔗︎
Okay, so you've gotten your development environment setup, you've read all the contributor guides, signed the CLA … now what?
If you're planning to contribute code changes, you'll want to read the development guide next.
If you're looking to contribute documentation improvements, first: Thank you! 🎉🤗 You'll specifically want to see the documentation section of the development guide.