Contributing
Welcome!! And thank you for taking the first step to contributing to the KubeVirt project. On this page you should be able to find all the information required to get started on your contirbution journey, as well as information on how to become a community member and grow into roles of responsibility.
If you think something might be missing from this page, please help us by raising a bug!
Prerequisites
Reviewing the following will prepare you for contributing:
- If this is your first step in the world of open source, consider reading the CNCF’s Start Contributing to Open Source page for an introduction to key concepts.
- You should be comfortable with git. Most contributions follow the GitHub workflow of fork, branch, commit, open pull request, review changes, and merge to work effectively in the KubeVirt community. If you’re new to git, git-scm.com has a nice set of tutorials.
- Familiarize yourself with the various repositories of the KubeVirt GitHub organization.
- Try the one of our quick start labs on killercoda, minikube, or kind.
- See the “Other ways to contribute” section below.
For code contributors:
- You need to be familiar with writing code in golang. See the golang tour to familiarize yourself.
- To contribute to the core of the project, read the Developer contribution page and the getting started page in the kubevirt/kubevirt repo.
- Alternatively, to contribute to its storage management add-on, check out the kubevirt/containerized-data-importer (CDI) repo, and their contribution page.
Your first contribution
The following will help you decide where to start:
- Check a repository issues list and label
good-first-issue
for issues that make good entry points. - Open a pull request using GitHub to documentation. The tutorials found here can be helpful https://lab.github.com/
- Review a pull request from other community members for accuracy and language.
Important community resources
You should familiarize yourself with the following documents, which are critical to being a member of the community:
- Code of Conduct: Everyone is expected to abide by the CoC to ensure an open and welcoming environment. Our CoC is based off the CNCF Code of conduct which also has a variety of translations.
- Our community membership policy: How to become a member and grow into roles of responsibility.
- Project governance: Project Maintainer responsibilities.
Other ways to contribute
- Visit the KubeVirt community page, participate on Twitter or Slack, learn about local meetups and events.
- Visit the KubeVirt website repository and submit a blog post, case study or lab.
- Visit the KubeVirt user-guide repository and find feature documentation that could use an update.