a software engineer who likes open source. The experience of the community has Cloud Native Taiwan User Group volunteers, Kubernetes member/sig-docs reviewer , Istio member Love Skill: ESB,APIM,DevOps,Kubernetes Contact: Github: @ydFu Email: [email protected] 2
of people that are chartered to take on sensitive topics. Special Interest Groups (SIGs) Persistent open groups that focus on a part of the project. Working Groups (WGs) Temporary groups that are formed to address issues that cross SIG boundaries. User Groups (UGs) Groups for facilitating communication and discovery of information REF: git.k8s.io/community#governance 13
Usability API Machinery CLI UI Multicluster Windows Auth Apps Autoscaling Cluster Lifecycle Instrumentation Network Node Scalability Scheduling Service Catalog Storage Resource Management Steering Project Horizontal Vertical Architecture Code of Conduct Product Security Big Data Cloud Provider Multitenancy IoT Edge Reliablity Policy API Expression Structured Logging K8s Infra Applications Resource Management Infrastructure Work group SIG Committee User group Community Groups Structure Security VMware 14
Groups (SIGs) ◦ Primary organizational unit ◦ Topic specific (network, docs, etc.) • Subprojects ◦ Work in SIGs divided into one or more subprojects ◦ Every part of Kubernetes must be owned by subproject Community Groups: SIGs (1/2) 15
(2/2) Project Working Groups wg-security-audit wg-k8s-infra wg-LTS Horizontal Working Groups wg-apply wg-component-standard wg-multitenancy wg-policy Vertical Working Groups Applications wg-machine-learning wg-io-edge Resource Management wg-resource-management 18
◦ Facilitate communication between users and contributors. ◦ Topics include usage of, extension of, and integration with Kubernetes and Kubernetes subprojects. ◦ User Groups: ▪ Big Data ▪ VMware Users Community Groups: User Groups 19
Don't have open membership ◦ Don't always operate in the open (Security or Code of Conduct) ◦ Formed by Steering Committee ◦ Committees: • Steering • Product Security • Code of Conduct Community Groups: Committees 20
• Join the slack to find out what :party_blob: is #sig-<sig-name> to join a SIG channel Zoom meetings(zoom) Mailing lists: • Community wide • Per sub-group (SIG/WG/UG/committee) • Contact information for a SIG: git.k8s.io/community/sig-name#contact Connect with the community 21
•As contributors and maintainers in the CNCF community, and in the interest of fostering an open and welcoming community •CNCF pledge to respect all people - contribute through reporting issues - posting feature requests - updating documentation - submitting pull requests or patches REF: https://github.com/cncf/foundation/blob/main/code-of-conduct.md 23
can only accept original source code from CLA signatories. •The Cloud Native Computing Foundation (CNCF) defines the legal status of the contributed code in two different types of Contributor License Agreements (CLAs) Individual Contributor: You are contributing as yourself, and not as part of another organization. Corporate Contributor: You are contributing on behalf of your employer or other organization. Note: Check in with your organization if you would need to sign the corporate CLA REF: https://github.com/kubernetes/community/blob/master/CLA.md 24
Issue: https://go.k8s.io/good-first-issue • Ask questions: - your mentor - SIG slack channel - SIG meetings • 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. good first issue help wanted 25
/cc @username Result Assigns to reviewer or myself Reruns failed tests Closes this PR Tags a user PRs and Bots: Useful Commands and label https://prow.k8s.io/command-help Label cncf-cla: yes ok-to-test sig/node do-not-merge/hold lgtm approved 28
Automation suggests reviewers and approvers for the PR - Choose at least two suggested reviewers, and request their reviews on the PR Step 1: Humans review the PR - Reviewers look for general code quality, correctness, sane software engineering, style, etc. - If the code changes look good to them, a reviewer types /lgtm in a PR comment or reviewOnce a - reviewer has /lgtm'ed, prow (@k8s-ci-robot) applies an lgtm label to the PR Step 2: Humans approve the PR - Approvers look for holistic acceptance criteria, including dependencies with other features, forwards/backwards compatibility, API and flag definitions, etc - If the code changes look good to them, an approver types /approve in a PR comment or reviewprow (@k8s-ci-robot) updates its comment in the PR to indicate which approvers still need to approve - Once all approvers (one from each of the previously identified OWNERS files) have approved, prow (@k8s-ci-robot) applies an approved label Step 3: Automation merges the PR - All required labels are present (eg: lgtm, approved) - Then the PR will automatically be merged 29
Small commits and small pull requests get reviewed faster and open a different Pull Request for Fixes and Generic Features • Use the commit message body to explain the what and why of the commit • Coding Conventions: tips for writing code in the different programming languages used throughout the Kubernetes project.(Coding Conventions) (API conventions) (Kubectl conventions) • All new packages and most new significant functionality must come with unit tests, integration (test/integration) and/or end-to-end (test/e2e) tests. 30
• Documentation • Join the upstream marketing community work • Localization • Project management • Event management: helping run Contributor Summits • Community education: You can Volunteer to be the mentor or sign up to be mentee at KubeCon. REF: https://www.kubernetes.dev/docs/guide/non-code-contributions/ 31