Edit This Page

Advanced contributing

This page assumes that you understand how to contribute to new content and review others' work, and are ready to learn about more ways to contribute. You need to use the Git command line client and other tools for some of these tasks.

Be the PR Wrangler for a week

SIG Docs approvers take week-long turns wrangling PRs for the repository.

The PR wrangler’s duties include:

  • Review open pull requests daily for quality and adherence to the Style and Content guides.
    • Review the smallest PRs (size/XS) first, then iterate towards the largest (size/XXL).
    • Review as many PRs as you can.
  • Ensure that the CLA is signed by each contributor.
    • Help new contributors sign the CLA.
    • Use this script to automatically remind contributors that haven’t signed the CLA to sign the CLA.
  • Provide feedback on proposed changes and help facilitate technical reviews from members of other SIGs.
    • Provide inline suggestions on the PR for the proposed content changes.
    • If you need to verify content, comment on the PR and request more details.
    • Assign relevant sig/ label(s).
    • If needed, assign reviewers from the reviewers: block in the file's front matter.
    • Assign Docs Review and Tech Review labels to indicate the PR's review status.
    • Assign Needs Doc Review or Needs Tech Review for PRs that haven't yet been reviewed.
    • Assign Doc Review: Open Issues or Tech Review: Open Issues for PRs that have been reviewed and require further input or action before merging.
    • Assign /lgtm and /approve labels to PRs that can be merged.
  • Merge PRs when they are ready, or close PRs that shouldn’t be accepted.
  • Triage and tag incoming issues daily. See Triage and categorize issues for guidelines on how SIG Docs uses metadata.

Helpful GitHub queries for wranglers

The following queries are helpful when wrangling. After working through these queries, the remaining list of PRs to be reviewed is usually small. These queries specifically exclude localization PRs, and only include the master branch (except for the last one).

  • No CLA, not eligible to merge: Remind the contributor to sign the CLA. If they have already been reminded by both the bot and a human, close the PR and remind them that they can open it after signing the CLA. Do not review PRs whose authors have not signed the CLA!
  • Needs LGTM: If it needs technical review, loop in one of the reviewers suggested by the bot. If it needs docs review or copy-editing, either suggest changes or add a copyedit commit to the PR to move it along.
  • Has LGTM, needs docs approval: Determine whether any additional changes or updates need to be made for the PR to be merged. If you think the PR is ready to be merged, comment /approve.
  • Quick Wins: If it’s a small PR against master with no clear blockers. (change "XS" in the size label as you work through the PRs [XS, S, M, L, XL, XXL]).
  • Not against master: If it's against a dev- branch, it's for an upcoming release. Make sure the release meister knows about it by adding a comment with /assign @<meister's_github-username>. If it's against an old branch, help the PR author figure out whether it's targeted against the best branch.

When to close Pull Requests

Reviews and approvals are one tool to keep our PR queue short and current. Another tool is closure.

  • Close any PR where the CLA hasn’t been signed for two weeks. PR authors can reopen the PR after signing the CLA, so this is a low-risk way to make sure nothing gets merged without a signed CLA.

  • Close any PR where the author has not responded to comments or feedback in 2 or more weeks.

Don't be afraid to close pull requests. Contributors can easily reopen and resume works in progress. Oftentimes a closure notice is what spurs an author to resume and finish their contribution.

To close a pull request, leave a /close comment on the PR.

Note: An automated service, fejta-bot automatically marks issues as stale after 90 days of inactivity, then closes them after an additional 30 days of inactivity when they become rotten. PR wranglers should close issues after 14-30 days of inactivity.

Propose improvements

SIG Docs members can propose improvements.

After you've been contributing to the Kubernetes documentation for a while, you may have ideas for improving the Style Guide , the Content Guide, the toolchain used to build the documentation, the website style, the processes for reviewing and merging pull requests, or other aspects of the documentation. For maximum transparency, these types of proposals need to be discussed in a SIG Docs meeting or on the kubernetes-sig-docs mailing list. In addition, it can really help to have some context about the way things currently work and why past decisions have been made before proposing sweeping changes. The quickest way to get answers to questions about how the documentation currently works is to ask in the #sig-docs Slack channel on kubernetes.slack.com

After the discussion has taken place and the SIG is in agreement about the desired outcome, you can work on the proposed changes in the way that is the most appropriate. For instance, an update to the style guide or the website's functionality might involve opening a pull request, while a change related to documentation testing might involve working with sig-testing.

Coordinate docs for a Kubernetes release

SIG Docs approvers can coordinate docs for a Kubernetes release.

Each Kubernetes release is coordinated by a team of people participating in the sig-release Special Interest Group (SIG). Others on the release team for a given release include an overall release lead, as well as representatives from sig-pm, sig-testing, and others. To find out more about Kubernetes release processes, refer to https://github.com/kubernetes/sig-release.

The SIG Docs representative for a given release coordinates the following tasks:

  • Monitor the feature-tracking spreadsheet for new or changed features with an impact on documentation. If documentation for a given feature won't be ready for the release, the feature may not be allowed to go into the release.
  • Attend sig-release meetings regularly and give updates on the status of the docs for the release.
  • Review and copyedit feature documentation drafted by the SIG responsible for implementing the feature.
  • Merge release-related pull requests and maintain the Git feature branch for the release.
  • Mentor other SIG Docs contributors who want to learn how to do this role in the future. This is known as "shadowing".
  • Publish the documentation changes related to the release when the release artifacts are published.

Coordinating a release is typically a 3-4 month commitment, and the duty is rotated among SIG Docs approvers.

Serve as a New Contributor Ambassador

SIG Docs approvers can serve as New Contributor Ambassadors.

New Contributor Ambassadors welcome new contributors to SIG-Docs, suggest PRs to new contributors, and mentor new contributors through their first few PR submissions.

Responsibilities for New Contributor Ambassadors include:

  • Monitoring the #sig-docs Slack channel for questions from new contributors.
  • Working with PR wranglers to identify good first issues for new contributors.
  • Mentoring new contributors through their first few PRs to the docs repo.
  • Helping new contributors create the more complex PRs they need to become Kubernetes members.
  • Sponsoring contributors on their path to becoming Kubernetes members.

Current New Contributor Ambassadors are announced at each SIG-Docs meeting, and in the Kubernetes #sig-docs channel.

SIG Docs reviewers can sponsor new contributors.

After a new contributor has successfully submitted 5 substantive pull requests to one or more Kubernetes repositories, they are eligible to apply for membership in the Kubernetes organization. The contributor's membership needs to be backed by two sponsors who are already reviewers.

New docs contributors can request sponsors by asking in the #sig-docs channel on the Kubernetes Slack instance or on the SIG Docs mailing list. If you feel confident about the applicant's work, you volunteer to sponsor them. When they submit their membership application, reply to the application with a "+1" and include details about why you think the applicant is a good fit for membership in the Kubernetes organization.

Serve as a SIG Co-chair

SIG Docs approvers can serve a term as a co-chair of SIG Docs.

Prerequisites

Approvers must meet the following requirements to be a co-chair:

  • Have been a SIG Docs approver for at least 6 months
  • Have led a Kubernetes docs release or shadowed two releases
  • Understand SIG Docs workflows and tooling: git, Hugo, localization, blog subproject
  • Understand how other Kubernetes SIGs and repositories affect the SIG Docs workflow, including: teams in k/org, process in k/community, plugins in k/test-infra, and the role of SIG Architecture.
  • Commit at least 5 hours per week (and often more) to the role for a minimum of 6 months

Responsibilities

The role of co-chair is one of service: co-chairs build contributor capacity, handle process and policy, schedule and run meetings, schedule PR wranglers, advocate for docs in the Kubernetes community, make sure that docs succeed in Kubernetes release cycles, and keep SIG Docs focused on effective priorities.

Responsibilities include:

  • Keep SIG Docs focused on maximizing developer happiness through excellent documentation
  • Exemplify the community code of conduct and hold SIG members accountable to it
  • Learn and set best practices for the SIG by updating contribution guidelines
  • Schedule and run SIG meetings: weekly status updates, quarterly retro/planning sessions, and others as needed
  • Schedule and run doc sprints at KubeCon events and other conferences
  • Recruit for and advocate on behalf of SIG Docs with the CNCFCloud Native Computing Foundation and its platinum partners, including Google, Oracle, Azure, IBM, and Huawei
  • Keep the SIG running smoothly

Running effective meetings

To schedule and run effective meetings, these guidelines show what to do, how to do it, and why.

Uphold the community code of conduct:

  • Hold respectful, inclusive discussions with respectful, inclusive language.

Set a clear agenda:

  • Set a clear agenda of topics
  • Publish the agenda in advance

For weekly meetings, copypaste the previous week's notes into the "Past meetings" section of the notes

Collaborate on accurate notes:

  • Record the meeting's discussion
  • Consider delegating the role of note-taker

Assign action items clearly and accurately:

  • Record the action item, who is assigned to it, and the expected completion date

Moderate as needed:

  • If discussion strays from the agenda, refocus participants on the current topic
  • Make room for different discussion styles while keeping the discussion focused and honoring folks' time

Honor folks' time:

Begin and end meetings on time.

Use Zoom effectively:

Claiming the host role in Zoom

Recording meetings on Zoom

When you’re ready to start the recording, click Record to Cloud.

When you’re ready to stop recording, click Stop.

The video uploads automatically to YouTube.