It's been an year since the first population of the OWNERS files in https://github.com/kubernetes/contrib/issues/1389.
It's probably time to update reviewers and approvers again...
/sig contributor-experience
Related: #1721, #1913, #1673
We have more than 4000 OWNERS files, which is clearly unmaintainable. We should update guidance on how OWNERS files should be used. How many nested OWNERS files should subprojects have probably depends on the subproject, but we should at least ensure that each directory tree has an OWNERS file.
Also, we have the general contributor ladder:
https://github.com/kubernetes/community/blob/master/community-membership.md
But that needs to be reconciled with the new SIG charter template and guidance. SIG and subproject-specific roles should be defined in SIG charters, though we do need centralized documentation about how the reviewer/approver mechanism works and is intended to be used.
We also need to update the OWNERS file documentation to reflect the concept of subprojects:
https://github.com/kubernetes/community/blob/master/contributors/guide/owners.md
We need to add info about:
I'd also like to mention that we list top-level subproject OWNERS files in sigs.yaml, and briefly discuss what belongs in OWNERS vs. in sigs.yaml. For instance, SIG-level roles (chair, TL, etc.) should be in sigs.yaml. Subproject-level roles (owners, approvers, reviewers, etc.) belong in top-level subproject OWNERS file(s).
The current guidance suggests SIG aliases. We need to change those to subproject role aliases:
sig-sigfoo-subprojectbar-approvers:
Where should those aliases be defined?
Subproject working doc:
https://docs.google.com/document/d/1FHauGII5LNVM-dZcNfzYZ-6WRs9RoPctQ4bw5dczrkk/edit#bookmark=id.3xu7cakgzomb
Other docs discussing subprojects and owners:
https://github.com/kubernetes/community/blob/master/community-membership.md#subproject-owner
https://github.com/kubernetes/community/blob/master/governance.md#subprojects
https://github.com/kubernetes/community/blob/master/committee-steering/governance/sig-governance-template-short.md
cc @kubernetes/steering-committee @spiffxp @jdumars @kubernetes/sig-contributor-experience-feature-requests
Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close.
Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle stale
/remove-lifecycle stale
An additional aspect of this is adding "labels:" to OWNERS files, eg:
https://github.com/kubernetes/community/blob/master/github-management/OWNERS
That addition of sig or area labels to OWNERS files could be a good-first-issue, for somebody looking to do a little dive into how the codebase is laid out relative to sigs.
My current thinking is just top-level subproject OWNERS only. For subprojects with multiple directory roots, we could use subproject aliases. Not sure how we'd handle multi-repo subprojects.
cc @grodrigues3
See also #1673 and #1913
SIG is not the right granularity, btw. It should be subproject.
@tpepper I'd be happy to do that deep dive. Is sigs.yaml the correct file to reference?
It sounded like @guineveresaenger and @chris-short had concerns and/or suggestions regarding OWNERS files.
cc @parispittman also
Another OWNERS issue: https://github.com/kubernetes/kubernetes/issues/50048
/priority important-longterm
/assign
not to say that I'm committed to this, but I would like to make this easier to find for me
Going to use this as umbrella issue for all things related to OWNERS files
notes and awful hackery I have tried to measure people's actions against PRs: https://gist.github.com/spiffxp/97ee57e348d27c59e029ce55d11a50a6
tl;dr
PullRequestReview events aren't exposed via GitHub's API, so gharchive doesn't see them, and thus neither does devstats)(ref: https://github.com/kubernetes/test-infra/issues/10065) I think it would be preferable for us to use GitHub teams as a more discoverable / centralized way of having the same group of people referenced across repos rather than syncing OWNERS_ALIASES around. That said, we should be mindful of how to ensure visibility of how teams are managed
/assign @mrbobbytables