Upgrade to Pro — share decks privately, control downloads, hide ads and more …

How To Contribute To Kubernetes

How To Contribute To Kubernetes

Avatar for Madhav Jivrajani

Madhav Jivrajani

December 03, 2021
Tweet

More Decks by Madhav Jivrajani

Other Decks in Technology

Transcript

  1. Outline • Community structure • Communications • Kubernetes Community Code

    of Conduct • Prerequisites • Labels and Bots • Mentorship Opportunities • Our Experiences
  2. Community Structure The K8s community is organized into subgroups as

    below: • Special Interest Groups, SIGs ◦ Subprojects • Working Groups, WGs • Committees • User Groups
  3. Stay Connected! • Mailing lists ◦ Community wide ◦ Per

    sub-group (SIG/WG/UG/committee) ▪ Contact information for a SIG: git.k8s.io/community/sig-name#contact • Slack (slack.k8s.io) ◦ WE LOVE EMOJIS :party_blob: ◦ Join the slack to find out what :party_blob: is ;) ◦ #sig-<sig-name> to join a SIG channel ▪ Similarly for WGs • Zoom meetings
  4. Contributor License Agreement (CLA) • There are a few prerequisites

    to contributing to Kubernetes, one of which is signing the CLA. https://github.com/kubernetes/community/blob/master/CLA.md • There are two kinds of CLA: 1. Individual 2. Corporate Note: Check in with your organization if you would need to sign the corporate CLA
  5. Developer Documentation! • You can find developer centric documentation maintained

    by different sub-groups in Kubernetes. • This is particularly helpful for folks wanting to contribute directly to the Kubernetes project rather than from an end-user perspective. https://github.com/kubernetes/community/tree/master/contributors/devel
  6. Kubernetes PR Flow 1. You submit Pull Request (PR) 2.

    You add labels & notes 3. Bots validate and comment on the PR release-note cncf-cla: no needs-ok-to-test needs-kind needs-sig 4. You add more labels & notes & resolve review comments 5. SIGs & OWNERS review and /approve → approved 6. Other contributors /lgtm → lgtm 7. Tests pass 8. Tide merges the PR https://prow.k8s.io/command-help
  7. Mentorships • Google Summer of Code • Outreachy • Linux

    Foundation Mentorship Program (NOT JUST FOR STUDENTS!) • Release Shadow Program https://github.com/kubernetes/community/tree/master/mentoring
  8. Kubernetes Enhancement Proposal • To add a new feature, update

    an existing feature or deprecate a feature, the Kubernetes community follows the Kubernetes Enhancement Proposal (KEP) process. • One of the main goals of this process is to help communicate and coordinate efforts for the addition/updation/deprecation of a feature across the community. • KEP is one of the best ways to get context on a feature being worked on. • We also have a KEP reading club! Reach out to us on #sig-architecture on the Kubernetes slack https://git.k8s.io/enhancements
  9. Some of Our Experiences • Don’t be afraid to ask

    questions! • Do your homework! • Ask questions in avenues with decreasing order of visibility • good-first-issue issues are not a prerequisite to start contributing ◦ Lack of context is one of the biggest barriers to contributing ◦ Find SIGs that interest you, stick around and see what’s happening ◦ Ask any and all questions you might have ◦ It’s TOTALLY okay if you aren’t able to contribute immediately, enjoy the process! • Non-response != Rejection
  10. Resources and References • Kubernetes Contributors Workshop ◦ A more

    in-depth guide to contributing to Kubernetes • Kubernetes getting started resources • kubernetes.dev • Enhancements Repo • Community Repo