Every repository in our orgs (ipfs, libp2p, multiformats, etc.) contains a CODEOWNERS file on the default branch which defines the default code owners - *. The defaults code owners should be a team rather than individual contributors.
Who should we put as codeowners to begin with?
We should research which team to fall back to in each organisation. I think the last fall back level should be @ipdx team - I think this endeavour has the biggest success chances if we dedicate our time to find/create an appropriate repo-team relationship.
How to implement this?
I think it might make sense to use GitHub Management for this.
Initial push: Import existing CODEOWNERS files and configure CODEOWNERS file creation in all existing repositories.
Maintenance: Whenever GitHub Management discovers a new repository, suggest adding a CODEOWNERS file in there (PR to github-mgmt, push straight to default branch in the repository).
TODO
[ ] Check what happens if there are multiple CODEOWNERS files in a repository
It will be really useful to see repo ownership across an organization in table/spreadsheet view. At least for this initial setup, it would be great to be able to have a table of all our repos and their owners. Ideallyl we could the update that table and then have the codeowners files generated accordingly.
I wonder if we could add in other metadata about the repo state to the CODEOWNERS file like "actively maintained", "life support", "no support". (I know there are docs from last year about various repo state levels I could dig up.)
Anyways, having a definitive ownership story like this will be awesome. I look forward to tackling it this year hopefully.
we could try autopopulating CODEOWNERS (if it doesn't exist yet) with the most active contributors in the repository to get the discussion started
once we have codeowner, we could "auto update readme with a “maintainers” section from the codeowners so its easier for users to see who it is as well"
Desired state
Every repository in our orgs (ipfs, libp2p, multiformats, etc.) contains a
CODEOWNERS
file on the default branch which defines the default code owners -*
. The defaults code owners should be a team rather than individual contributors.Who should we put as codeowners to begin with?
We should research which team to fall back to in each organisation. I think the last fall back level should be
@ipdx
team - I think this endeavour has the biggest success chances if we dedicate our time to find/create an appropriate repo-team relationship.How to implement this?
I think it might make sense to use GitHub Management for this.
Initial push: Import existing
CODEOWNERS
files and configureCODEOWNERS
file creation in all existing repositories.Maintenance: Whenever GitHub Management discovers a new repository, suggest adding a CODEOWNERS file in there (PR to github-mgmt, push straight to default branch in the repository).
TODO
CODEOWNERS
files in a repository