Merge getting started into the main page as they're required.
Restructure the main menu, fix up formatting. Signed-off-by: Jorge O. Castro <jorgec@vmware.com>
This commit is contained in:
parent
e5a19ad6d6
commit
67c6f7fe14
|
@ -1,16 +1,26 @@
|
||||||
|
# Welcome
|
||||||
|
|
||||||
|
Have you ever wanted to contribute to the coolest cloud technology?
|
||||||
|
We will help you understand the organization of the Kubernetes project and direct you to the best places to get started.
|
||||||
|
You'll be able to pick up issues, write code to fix them, and get your work reviewed and merged.
|
||||||
|
|
||||||
This document is the single source of truth for how to contribute to the code base.
|
This document is the single source of truth for how to contribute to the code base.
|
||||||
Feel free to browse the [open issues](https://github.com/kubernetes/community/issues?q=is%3Aissue+is%3Aopen+label%3Aarea%2Fcontributor-guide) and file new ones, all feedback welcome!
|
Feel free to browse the [open issues](https://github.com/kubernetes/community/issues?q=is%3Aissue+is%3Aopen+label%3Aarea%2Fcontributor-guide) and file new ones, all feedback welcome!
|
||||||
|
|
||||||
# Welcome
|
## Contributor Guide
|
||||||
|
|
||||||
Welcome to Kubernetes!
|
Welcome to Kubernetes! This guide is broken up into the following sections.
|
||||||
|
It is recommended that you follow these steps in order.
|
||||||
|
|
||||||
|
- [Welcome](#welcome) - this page
|
||||||
|
- [Prerequisites](#prerequisites) - things you need to complete before contributing
|
||||||
|
- [Your First Contribution](first-contribution.md) - things you need to know before your first contribution
|
||||||
|
- [Contributing](contributing.md) - the main guide with contributor information
|
||||||
|
|
||||||
|
## Resources Available
|
||||||
|
|
||||||
- [Welcome](#welcome)
|
|
||||||
- [Before you get started](getting-started.md)
|
|
||||||
- [Your First Contribution](first-contribution.md)
|
|
||||||
- [Contributing](contributing.md)
|
|
||||||
- [Kubernetes Contributor Playground](#kubernetes-contributor-playground)
|
- [Kubernetes Contributor Playground](#kubernetes-contributor-playground)
|
||||||
- [Youtube playlist](#youtube-playlist)
|
- [Contributor Workshops](#contributor-workshops)
|
||||||
- [Community](#community)
|
- [Community](#community)
|
||||||
- [Communication](#communication-1)
|
- [Communication](#communication-1)
|
||||||
- [Events](#events)
|
- [Events](#events)
|
||||||
|
@ -18,11 +28,36 @@ Welcome to Kubernetes!
|
||||||
- [Mentorship](#mentorship)
|
- [Mentorship](#mentorship)
|
||||||
- [Advanced Topics](#advanced-topics)
|
- [Advanced Topics](#advanced-topics)
|
||||||
|
|
||||||
|
# Prerequisites
|
||||||
|
|
||||||
|
Before submitting code to the project you should first take care of the following prerequisites.
|
||||||
|
These steps are checked by a bot during your first submission, so doing these steps first will make your first contribution easier:
|
||||||
|
|
||||||
|
## Sign the CLA
|
||||||
|
|
||||||
|
Before you can contribute, you will need to sign the [Contributor License Agreement](/CLA.md).
|
||||||
|
|
||||||
|
## Code of Conduct
|
||||||
|
|
||||||
|
Please make sure to read and observe our [Code of Conduct](/code-of-conduct.md) and [Community Values](/values.md)
|
||||||
|
|
||||||
|
## Setting up your development environment
|
||||||
|
|
||||||
|
If you haven’t set up your environment, check the [developer resources](/contributors/devel/README.md#setting-up-your-dev-environment-coding-and-debugging).
|
||||||
|
|
||||||
|
## Community Expectations and Roles
|
||||||
|
|
||||||
|
Kubernetes is a community project.
|
||||||
|
Consequently, it is wholly dependent on its community to provide a productive, friendly and collaborative environment.
|
||||||
|
|
||||||
|
- Read and review the [Community Expectations](expectations.md) for an understanding of code and review expectations.
|
||||||
|
- See [Community Membership](/community-membership.md) for a list the various responsibilities of contributor roles. You are encouraged to move up this contributor ladder as you gain experience.
|
||||||
|
|
||||||
# Kubernetes Contributor Playground
|
# Kubernetes Contributor Playground
|
||||||
|
|
||||||
If you are looking for a safe place, where you can familiarize yourself with (some of) the Kubernetes Project's review and pull request processes, then the [Kubernetes Contributor Playground](https://github.com/kubernetes-sigs/contributor-playground/) is the right place for you.
|
If you are looking for a safe place, where you can familiarize yourself with (some of) the Kubernetes Project's review and pull request processes, then the [Kubernetes Contributor Playground](https://github.com/kubernetes-sigs/contributor-playground/) is the right place for you.
|
||||||
|
|
||||||
## Youtube playlist
|
## Contributor Workshops
|
||||||
|
|
||||||
A [Youtube playlist](https://www.youtube.com/playlist?list=PL69nYSiGNLP3M5X7stuD7N4r3uP2PZQUx) of the New Contributor workshop has been posted, and an outline of the video content can be found [here](/events/2018/05-contributor-summit).
|
A [Youtube playlist](https://www.youtube.com/playlist?list=PL69nYSiGNLP3M5X7stuD7N4r3uP2PZQUx) of the New Contributor workshop has been posted, and an outline of the video content can be found [here](/events/2018/05-contributor-summit).
|
||||||
|
|
||||||
|
@ -50,6 +85,7 @@ You may also contact Paris Pittman via direct message on Kubernetes Slack (@pari
|
||||||
|
|
||||||
Please learn about our mentoring initiatives [here](http://git.k8s.io/community/mentoring/README.md).
|
Please learn about our mentoring initiatives [here](http://git.k8s.io/community/mentoring/README.md).
|
||||||
Feel free to ask us anything during our [Meet Our Contributors](https://github.com/kubernetes/community/blob/master/mentoring/programs/meet-our-contributors.md) to connect with us.
|
Feel free to ask us anything during our [Meet Our Contributors](https://github.com/kubernetes/community/blob/master/mentoring/programs/meet-our-contributors.md) to connect with us.
|
||||||
|
|
||||||
# Advanced Topics
|
# Advanced Topics
|
||||||
|
|
||||||
This section includes things that need to be documented, but typical contributors do not need to interact with regularly.
|
This section includes things that need to be documented, but typical contributors do not need to interact with regularly.
|
||||||
|
|
|
@ -43,7 +43,7 @@ To check out code to work on, please refer to [the GitHub Workflow Guide](./gith
|
||||||
|
|
||||||
## Open a Pull Request
|
## Open a Pull Request
|
||||||
|
|
||||||
Pull requests are often called simply "PR".
|
Pull requests are often called a "PR".
|
||||||
Kubernetes generally follows the standard [github pull request](https://help.github.com/articles/about-pull-requests/) process, but there is a layer of additional kubernetes specific (and sometimes SIG specific) differences:
|
Kubernetes generally follows the standard [github pull request](https://help.github.com/articles/about-pull-requests/) process, but there is a layer of additional kubernetes specific (and sometimes SIG specific) differences:
|
||||||
|
|
||||||
- [Kubernetes-specific github workflow](pull-requests.md#the-testing-and-merge-workflow).
|
- [Kubernetes-specific github workflow](pull-requests.md#the-testing-and-merge-workflow).
|
||||||
|
@ -56,7 +56,7 @@ Refer to its [command reference documentation](https://go.k8s.io/bot-commands).
|
||||||
|
|
||||||
Common new contributor PR issues are:
|
Common new contributor PR issues are:
|
||||||
|
|
||||||
* not having correctly signed the CLA ahead of your first PR (see [Sign the CLA](/contributors/guide/getting-started.md#sign-the-cla) section)
|
* not having correctly signed the CLA ahead of your first PR. See the [CLA page](/CLA.md) for troubleshooting help, in some cases you might need to file a ticket with the CNCF to resolve a CLA problem.
|
||||||
* finding the right SIG or reviewer(s) for the PR (see [Code Review](#code-review) section) and following any SIG or repository specific contributing guidelines (see [Learn about SIGs](#learn-about-sigs) section)
|
* finding the right SIG or reviewer(s) for the PR (see [Code Review](#code-review) section) and following any SIG or repository specific contributing guidelines (see [Learn about SIGs](#learn-about-sigs) section)
|
||||||
* dealing with test cases which fail on your PR, unrelated to the changes you introduce (see [Test Flakes](http://velodrome.k8s.io/dashboard/db/bigquery-metrics?orgId=1))
|
* dealing with test cases which fail on your PR, unrelated to the changes you introduce (see [Test Flakes](http://velodrome.k8s.io/dashboard/db/bigquery-metrics?orgId=1))
|
||||||
* Not following [scalability good practices](scalability-good-practices.md)
|
* Not following [scalability good practices](scalability-good-practices.md)
|
||||||
|
|
|
@ -6,21 +6,19 @@ description: |
|
||||||
community.
|
community.
|
||||||
---
|
---
|
||||||
|
|
||||||
Kubernetes is a community project. Consequently, it is wholly dependent on
|
Kubernetes is a community project.
|
||||||
its community to provide a productive, friendly and collaborative environment.
|
Consequently, it is wholly dependent on its community to provide a productive, friendly and collaborative environment.
|
||||||
|
|
||||||
The first and foremost goal of the Kubernetes community is to develop orchestration
|
The first and foremost goal of the Kubernetes community is to develop orchestration
|
||||||
technology that radically simplifies the process of creating reliable
|
technology that radically simplifies the process of creating reliable
|
||||||
distributed systems. However a second, equally important goal is the creation
|
distributed systems.
|
||||||
|
However a second, equally important goal is the creation
|
||||||
of a community that fosters easy, agile development of such orchestration
|
of a community that fosters easy, agile development of such orchestration
|
||||||
systems.
|
systems.
|
||||||
|
|
||||||
We therefore describe the expectations for
|
We therefore describe the expectations for members of the Kubernetes community.
|
||||||
members of the Kubernetes community. This document is intended to be a living one
|
This document is intended to be a living one that evolves as the community evolves via the same PR and code review process that shapes the rest of the project.
|
||||||
that evolves as the community evolves via the same PR and code review process
|
It currently covers the expectations of conduct that govern all members of the community as well as the expectations around code review that govern all active contributors to Kubernetes.
|
||||||
that shapes the rest of the project. It currently covers the expectations
|
|
||||||
of conduct that govern all members of the community as well as the expectations
|
|
||||||
around code review that govern all active contributors to Kubernetes.
|
|
||||||
|
|
||||||
## Code review
|
## Code review
|
||||||
|
|
||||||
|
@ -28,12 +26,11 @@ As a community we believe in the value of code review for all contributions.
|
||||||
Code review increases both the quality and readability of our codebase, which
|
Code review increases both the quality and readability of our codebase, which
|
||||||
in turn produces high quality software.
|
in turn produces high quality software.
|
||||||
|
|
||||||
See the [pull request documentation](/contributors/guide/pull-requests.md) for more information
|
See the [pull request documentation](/contributors/guide/pull-requests.md) for more information on code review.
|
||||||
on code review.
|
|
||||||
|
|
||||||
Consequently, as a community we expect that all active participants in the
|
Consequently, as a community we expect that all active participants in the
|
||||||
community will also be active reviewers. The
|
community will also be active reviewers.
|
||||||
[community membership](/community-membership.md) outlines the responsibilities
|
The [community membership](/community-membership.md) outlines the responsibilities
|
||||||
of the different contributor roles.
|
of the different contributor roles.
|
||||||
|
|
||||||
Expect reviewers to request that you avoid [common go style
|
Expect reviewers to request that you avoid [common go style
|
||||||
|
@ -44,27 +41,26 @@ mistakes](https://github.com/golang/go/wiki/CodeReviewComments) in your PRs.
|
||||||
Because reviewers are often the first points of contact between new members of
|
Because reviewers are often the first points of contact between new members of
|
||||||
the community and can significantly impact the first impression of the
|
the community and can significantly impact the first impression of the
|
||||||
Kubernetes community, reviewers are especially important in shaping the
|
Kubernetes community, reviewers are especially important in shaping the
|
||||||
Kubernetes community. Reviewers are highly encouraged to review the
|
Kubernetes community.
|
||||||
[code of conduct](/governance.md#code-of-conduct) and are strongly
|
Reviewers are highly encouraged to not only abide by the [code of conduct](/governance.md#code-of-conduct) but are strongly encouraged to go above and beyond the code of conduct to promote a collaborative, respectful Kubernetes community.
|
||||||
encouraged to go above and beyond the code of conduct to promote a collaborative,
|
|
||||||
respectful Kubernetes community.
|
|
||||||
|
|
||||||
## Expectations of reviewers: Review latency
|
## Expectations of reviewers: Review latency
|
||||||
|
|
||||||
Reviewers are expected to respond in a timely fashion to PRs that are assigned
|
Reviewers are expected to respond in a timely fashion to PRs that are assigned
|
||||||
to them. Reviewers are expected to respond to an *active* PRs with reasonable
|
to them.
|
||||||
latency, and if reviewers fail to respond, those PRs may be assigned to other
|
Reviewers are expected to respond to an *active* PRs with reasonable latency, and if reviewers fail to respond, those PRs may be assigned to other reviewers.
|
||||||
reviewers.
|
|
||||||
|
|
||||||
If reviewers are unavailable to review for some time, they are expected to set their [user status](https://help.github.com/en/articles/personalizing-your-profile#setting-a-status) to "busy" so that the bot will not request reviews from them on new PRs automatically. If they are unavailable for a longer period of time, they are expected to remove themselves from the OWNERS file and potentially nominate someone else.
|
If reviewers are unavailable to review for some time, they are expected to set their [user status](https://help.github.com/en/articles/personalizing-your-profile#setting-a-status) to "busy" so that the bot will not request reviews from them on new PRs automatically.
|
||||||
|
If they are unavailable for a longer period of time, they are expected to remove themselves from the OWNERS file and potentially nominate someone else.
|
||||||
|
|
||||||
*Active* PRs are considered those which have a proper CLA (`cla:yes`) label
|
*Active* PRs are considered those which have a proper CLA (`cla:yes`) label
|
||||||
and do not need rebase to be merged. PRs that do not have a proper CLA, or
|
and do not need rebase to be merged.
|
||||||
require a rebase are not considered active PRs.
|
PRs that do not have a proper CLA, or require a rebase are not considered active PRs.
|
||||||
|
|
||||||
## Thanks
|
## Thanks
|
||||||
|
|
||||||
Many thanks in advance to everyone who contributes their time and effort to
|
Many thanks in advance to everyone who contributes their time and effort to
|
||||||
making Kubernetes both a successful system as well as a successful community.
|
making Kubernetes both a successful system as well as a successful community.
|
||||||
The strength of our software shines in the strengths of each individual
|
The strength of our software shines in the strengths of each individual
|
||||||
community member. Thanks!
|
community member.
|
||||||
|
Thanks!
|
||||||
|
|
|
@ -17,16 +17,6 @@ description: |
|
||||||
- [SIG-specific contributing guidelines](#sig-specific-contributing-guidelines)
|
- [SIG-specific contributing guidelines](#sig-specific-contributing-guidelines)
|
||||||
- [File an Issue](#file-an-issue)
|
- [File an Issue](#file-an-issue)
|
||||||
|
|
||||||
|
|
||||||
Have you ever wanted to contribute to the coolest cloud technology?
|
|
||||||
We will help you understand the organization of the Kubernetes project and direct you to the best places to get started.
|
|
||||||
You'll be able to pick up issues, write code to fix them, and get your work reviewed and merged.
|
|
||||||
|
|
||||||
Please be aware that due to the large number of issues our triage team deals with, we cannot offer technical support in GitHub issues.
|
|
||||||
If you have questions about the development process, feel free to jump into our [Slack Channel](http://slack.k8s.io/) or join our [mailing list](https://groups.google.com/forum/#!forum/kubernetes-dev).
|
|
||||||
You can also ask questions on [ServerFault](https://serverfault.com/questions/tagged/kubernetes) or [Stack Overflow](https://stackoverflow.com/questions/tagged/kubernetes).
|
|
||||||
The Kubernetes team scans Stack Overflow on a regular basis and will try to ensure your questions don't go unanswered.
|
|
||||||
|
|
||||||
## Find something to work on
|
## Find something to work on
|
||||||
|
|
||||||
Help is always welcome! For example, documentation (like the text you are reading now) can always use improvement.
|
Help is always welcome! For example, documentation (like the text you are reading now) can always use improvement.
|
||||||
|
@ -43,8 +33,6 @@ There are [multiple repositories](https://github.com/kubernetes/) within the Kub
|
||||||
Each repository has beginner-friendly issues that provide a good first issue.
|
Each repository has beginner-friendly issues that provide a good first issue.
|
||||||
For example, [kubernetes/kubernetes](https://git.k8s.io/kubernetes) has [help wanted](https://go.k8s.io/help-wanted) and [good first issue](https://go.k8s.io/good-first-issue) labels for issues that should not need deep knowledge of the system.
|
For example, [kubernetes/kubernetes](https://git.k8s.io/kubernetes) has [help wanted](https://go.k8s.io/help-wanted) and [good first issue](https://go.k8s.io/good-first-issue) labels for issues that should not need deep knowledge of the system.
|
||||||
The `good first issue` label indicates that members have committed to providing [extra assistance](/contributors/guide/help-wanted.md) for new contributors.
|
The `good first issue` label indicates that members have committed to providing [extra assistance](/contributors/guide/help-wanted.md) for new contributors.
|
||||||
<!-- TODO: review removing this note after 3 months or after the 1.12 release -->
|
|
||||||
Please note that while several of the repositories in the Kubernetes community have `good first issue` labels already, they are still being applied throughout the community.
|
|
||||||
|
|
||||||
Another good strategy is to find a documentation improvement, such as a missing/broken link, which will give you exposure to the code submission/review process without the added complication of technical depth. Please see [Contributing](#contributing) below for the workflow.
|
Another good strategy is to find a documentation improvement, such as a missing/broken link, which will give you exposure to the code submission/review process without the added complication of technical depth. Please see [Contributing](#contributing) below for the workflow.
|
||||||
|
|
||||||
|
@ -55,16 +43,18 @@ then the robot will assign the issue to you and your name will present at `Assig
|
||||||
|
|
||||||
### Learn about SIGs
|
### Learn about SIGs
|
||||||
|
|
||||||
#### SIG structure
|
You may have noticed that some repositories in the Kubernetes Organization are owned by [Special Interest Groups](/sig-list.md), or SIGs.
|
||||||
|
|
||||||
You may have noticed that some repositories in the Kubernetes Organization are owned by Special Interest Groups, or SIGs.
|
|
||||||
We organize the community into SIGs in order to improve our workflow and more easily manage what is a very large community project.
|
We organize the community into SIGs in order to improve our workflow and more easily manage what is a very large community project.
|
||||||
The developers within each SIG have autonomy and ownership over that SIG's part of Kubernetes.
|
The developers within each SIG have autonomy and ownership over that SIG's part of Kubernetes. Check out the [list of SIGs](/sig-list.md) for contact information.
|
||||||
|
|
||||||
|
Understanding how to interact with SIGs is an important part of contributing.
|
||||||
|
|
||||||
|
#### SIG structure
|
||||||
|
|
||||||
A SIG is an open, community effort.
|
A SIG is an open, community effort.
|
||||||
Anybody is welcome to jump into a SIG and begin fixing issues, critiquing design proposals and reviewing code.
|
Anybody is welcome to jump into a SIG and begin fixing issues, critiquing design proposals and reviewing code.
|
||||||
SIGs have regular [video meetings](https://kubernetes.io/community/) which everyone is welcome to.
|
SIGs have regular [video meetings](https://kubernetes.io/community/) which everyone is welcome to.
|
||||||
Each SIG has a slack channel that you can join as well.
|
Each SIG has a slack channel, meeting notes, and their own documentation that is useful to read and understand.
|
||||||
|
|
||||||
There is an entire SIG ([sig-contributor-experience](/sig-contributor-experience/README.md)) devoted to improving your experience as a contributor.
|
There is an entire SIG ([sig-contributor-experience](/sig-contributor-experience/README.md)) devoted to improving your experience as a contributor.
|
||||||
Contributing to Kubernetes should be easy.
|
Contributing to Kubernetes should be easy.
|
||||||
|
|
|
@ -1,36 +0,0 @@
|
||||||
---
|
|
||||||
title: "Getting Started"
|
|
||||||
weight: 2
|
|
||||||
description: |
|
|
||||||
A small list of things that you should read and be familiar with before you
|
|
||||||
get started with contributing. This includes such things as signing the
|
|
||||||
Contributor License Agreement, familiarizing yourself with our Code of Conduct
|
|
||||||
and more.
|
|
||||||
---
|
|
||||||
|
|
||||||
# Before you get started
|
|
||||||
|
|
||||||
- [Sign the CLA](#sign-the-cla)
|
|
||||||
- [Code of Conduct](#code-of-conduct)
|
|
||||||
- [Setting up your development environment](#setting-up-your-development-environment)
|
|
||||||
- [Community Expectations and Roles](#community-expectations-and-roles)
|
|
||||||
|
|
||||||
## Sign the CLA
|
|
||||||
|
|
||||||
Before you can contribute, you will need to sign the [Contributor License Agreement](/CLA.md).
|
|
||||||
|
|
||||||
## Code of Conduct
|
|
||||||
|
|
||||||
Please make sure to read and observe our [Code of Conduct](/code-of-conduct.md).
|
|
||||||
|
|
||||||
## Setting up your development environment
|
|
||||||
|
|
||||||
If you haven’t set up your environment, check the [developer resources](/contributors/devel/README.md#setting-up-your-dev-environment-coding-and-debugging).
|
|
||||||
|
|
||||||
## Community Expectations and Roles
|
|
||||||
|
|
||||||
Kubernetes is a community project.
|
|
||||||
Consequently, it is wholly dependent on its community to provide a productive, friendly and collaborative environment.
|
|
||||||
|
|
||||||
- Read and review the [Community Expectations](expectations.md) for an understanding of code and review expectations.
|
|
||||||
- See [Community Membership](/community-membership.md) for a list the various responsibilities of contributor roles. You are encouraged to move up this contributor ladder as you gain experience.
|
|
Loading…
Reference in New Issue