Contribution Guide to Kubernetes

Contribution Guide to Kubernetes

Submit your first PR to Kubernetes

It is true that many beginners face the problem of contributing to Kubernetes for the first time.

I felt the same way but after shamelessly asking multiple times, I finally submitted my first pull request.

Let me walk you through what is needed to submit your first pull request to Kubernetes.

  • Join the social channels

  • Be sure where you want to contribute

  • Attend the SIG meetings

  • Have Git & GitHub skills

  • Find a mentor instead of finding a good-first-issue

  • Raise your first PR

I have created a video about this topic also that you can check out.

Join the social channels

If you want to contribute to Kubernetes, the first step is to visit their website, join their social channels, and read their contribution guidelines properly so you understand them. I would recommend you few resources to join like:

Be sure where you want to contribute

After joining a Slack channel, you'll be bombarded with tons of groups to collaborate with. As a beginner, I was also very confused about them.

I would recommend you to look for your interest. If you like development, go for the #sig-api-machinery group, if you like networking join the #sig-network group.

You can check out the list of groups and their details:

Attend the SIG meetings

Once you know where you want to contribute, the next step is to join SIG (Special Interest Group) meetings.

These are the weekly/monthly meetings that many experts hold and invite everyone to attend.

Where to find those meetings?

  • Go to the Kubernetes Community Repository and click on any sign directory. This will open a file for you to read. If you scroll down, you'll see a contact section where you can join the mailing list.

  • Once you join, you will receive a notification to your email address every time they schedule a meeting.

Have Git & GitHub skills

Contributing to open source requires familiarity with Git and GitHub. This is the first step you need to take to start contributing. Once you've forked and cloned the repository, the next step is to create a git branch and make the changes you want to the project.

Once the changes are made, just add them and commit. Next, push the newly created branch to the Kubernetes project.

If you don't know these things, I've explained them a bit in the video above or you can check out my 60 Days DevOps series where I explain everything in detail.

Find a mentor instead of finding a good-first-issue

When people start their open-source journey, they tend to focus more on finding good problems first. This happened to me too but after some time, Antoine Pelisse told me and I also realized that I needed a mentor instead of looking for a problem.

That's where I asked people to guide me and give me the resources to learn more about the project instead of looking for good problems first. I met some nice people who helped like:

Raise your first PR

Now the interesting part begins when you need to raise your first pull request. It's not easy though. It took me a month to raise my first PR but here are some good first issues you can contribute to.

CLA Process

If you don't know about the CLA process. This is the Contributor License Agreement that you must sign when contributing to Kubernetes.

Note: You can sign this agreement only after you submit your first PR.

When you submit your first PR, there will be some checks going on. In these checks, you will see an option "Easy CLA".

Just click on the details link and it will take you to another page where you have to click on permission.

Once you click on it, it will take you to another page where you have to click on the individual contributor option and then click on the Sign CLA button.

Once you click on the Sign CLA button, it will open a file for you then you need to continue and add the following details.

  • Your Signature

  • Date

  • Full name

  • Mailing address

  • Country

  • Email

After filling in the details, click on the finish button. It will lead to the GitHub repo and run more checks.

That's it for now. Did you like this blog? Please let me know.

You can follow me on YouTube, Twitter, and LinkedIn also.

Happy Learning!