Skip to content

repoowners: add advisory_approvers OWNERS field - #783

Open
smg247 wants to merge 5 commits into
kubernetes-sigs:mainfrom
smg247:advisory-approvers
Open

repoowners: add advisory_approvers OWNERS field#783
smg247 wants to merge 5 commits into
kubernetes-sigs:mainfrom
smg247:advisory-approvers

Conversation

@smg247

@smg247 smg247 commented Jun 30, 2026

Copy link
Copy Markdown
Contributor

Advisory approvers retain /approve power but are excluded from auto-assignment by LeafApprovers. This allows teams to list senior maintainers or leads who should be able to approve but shouldn't be automatically assigned as reviewers.

Implements: #784

@kubernetes-prow

Copy link
Copy Markdown
Contributor

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@kubernetes-prow kubernetes-prow Bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jun 30, 2026
@netlify

netlify Bot commented Jun 30, 2026

Copy link
Copy Markdown

Deploy Preview for k8s-prow ready!

Name Link
🔨 Latest commit 04a8f13
🔍 Latest deploy log https://app.netlify.com/projects/k8s-prow/deploys/6a4664bf05ac040008d948e1
😎 Deploy Preview https://deploy-preview-783--k8s-prow.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@smg247
smg247 marked this pull request as ready for review June 30, 2026 12:58
@kubernetes-prow kubernetes-prow Bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jun 30, 2026
@kubernetes-prow
kubernetes-prow Bot requested a review from cjwagner June 30, 2026 12:58
@kubernetes-prow

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: smg247

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@kubernetes-prow
kubernetes-prow Bot requested a review from droslean June 30, 2026 12:58
@kubernetes-prow kubernetes-prow Bot added the area/plugins Issues or PRs related to prow's plugins for the hook component label Jun 30, 2026
@kubernetes-prow kubernetes-prow Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jun 30, 2026
@linux-foundation-easycla

linux-foundation-easycla Bot commented Jun 30, 2026

Copy link
Copy Markdown

CLA Signed
The committers listed above are authorized under a signed CLA.

@kubernetes-prow
kubernetes-prow Bot requested a review from stevekuznetsov June 30, 2026 12:58
@kubernetes-prow kubernetes-prow Bot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. cncf-cla: no Indicates the PR's author has not signed the CNCF CLA. labels Jun 30, 2026
smg247 added 2 commits June 30, 2026 09:23
Advisory approvers retain /approve power but are excluded from
auto-assignment by LeafApprovers. This allows teams to list senior
maintainers or leads who should be able to approve but shouldn't be
automatically assigned as reviewers.
@smg247
smg247 force-pushed the advisory-approvers branch from d3fc193 to 139ca02 Compare June 30, 2026 13:23
@kubernetes-prow kubernetes-prow Bot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. and removed cncf-cla: no Indicates the PR's author has not signed the CNCF CLA. labels Jun 30, 2026
Comment thread pkg/repoowners/repoowners_test.go
Drop 'advisory-' prefix from test login names to make clear that
list membership determines the advisory role, not naming convention.
Remove reviewer/advisory overlap from TestApplyConfigWithAdvisoryApprovers
since that case is already covered by TestAdvisoryApproverAlsoReviewer.
@Prucek

Prucek commented Jul 2, 2026

Copy link
Copy Markdown
Member

Shouldn't we update this: https://github.com/kubernetes-sigs/prow/blob/main/pkg/plugins/verify-owners/verify-owners.go#L400 as well?

@smg247

smg247 commented Jul 8, 2026

Copy link
Copy Markdown
Contributor Author

/retest


// AdvisoryApprovers returns the set of advisory approvers for the requested
// file. These users retain approval power but are excluded from auto-assignment.
func (o *RepoOwners) AdvisoryApprovers(path string) sets.Set[string] {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This method is never called anywhere

if existing, ok := o.approvers[path][re]; ok {
o.approvers[path][re] = existing.Union(advisorySet)
} else {
o.approvers[path][re] = advisorySet.Union(sets.New[string]())

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Union with an empty set?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. area/plugins Issues or PRs related to prow's plugins for the hook component cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants