ProjectPythia / ProjectPythia/cookbook-template

Use a CODEOWNERS file to identify maintainers?

Open
#175 8 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

infrastructure
Dominant language
Jupyter Notebook
Stars
25
Forks
29
Avg merge
3d 16h
Merged PRs (30d)
2

Description

Following discussion at this week's Pythia Community Meeting, I'm looking into some easy steps we could take to have identified maintainers for each cookbook repo. The overarching idea is that when people contribute new cookbook content to the gallery, we're setting an expectation that someone will help keep an eye on its health.

Features that I think would be helpful to have:

  1. specific individual users identified as having opted in to being maintainers for the cookbook content
  2. Maintainers (along with the core Pythia team) have push access to the repo
  3. Maintainers get tagged for PR reviews
  4. Maintainers receiving notifications when health-testing builds are failing

Seems to me the simplest way to achieve at least goals 1 - 3 is just to include a .github/CODEOWNERS file in each cookbook repo. The content of that file can be as simple as

* @[maintainer1 username] 

or for multiple maintainers

* @[maintainer1 username] @[maintainer2 username] @[maintainer3 username] 

etc.

As part of the Cookbook review process, prior to accepting a new Cookbook into the gallery, reviewers can just check to see that maintainers have been specified in the CODEOWNERS file, and verify that those individuals have consented to this.

Future changes to the maintainer list would just take the form of PRs making changes to the CODEOWNERS file.

This seems like something simple enough that we can implement it very quickly, with an empty CODEOWNERS file here in the template, and a brief update to our Contributor's Guide explaining how to add names to a new cookbook.

The big advantage that I see to this approach is that it keeps things simple. We don't build any new automation that we need to then maintain. All the automation comes from GitHub itself, which will use the CODEOWNERS file to auto-tag maintainers for reviews of PRs.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the cookbook template and its Contributor's Guide, then add the proposed .github/CODEOWNERS placeholder and document how new cookbooks identify consenting maintainers. Done means the template contains the file and the guide explains adding maintainer names and updating them via PRs.

Written by the indexing model from the issue text.

Assessment

Tech stack
github
Domain
developer-experience
Issue type
Feature
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.