Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: Team mentor #28

Open
wants to merge 8 commits into
base: main
Choose a base branch
from

Conversation

jspaleta
Copy link

@jspaleta jspaleta commented Dec 6, 2024

This pull request provides a working implementation to make it possible to use team-management tool in a more transparent way for Cilium project team memberships.

Highlights

  1. Changes to introduce a mentor list to the TeamConfig to encode team members who want to be excluded from the review notification, simplifying the review exclusion process.

  2. Introduction of a team override configuration intended to encode public team member/mentor information on a team by team basis while leaving the full configuration in a private repository.

  3. This is strictly additive changes to how team manager tool operations. It does not interfere with the existing org wide excludeCodeReviewAssignmentFromAllTeams config or the team specific codeReviewAssignment.excludedMembers. The intent is that these other mechanisms can be deprecated after configs are converted to using the team mentor concept, to ensure a smooth transition. Note: the github API doesn't let you query back which userIDs are currently excluded from review, so this is really just a matter of configuration state as a source of truth.

  4. Enhanced user status reporting by the status to indicate where in the team management config users are excluded.

@jspaleta
Copy link
Author

jspaleta commented Dec 6, 2024

I should note. I've tested locally using the MillionDollarIdea github org.

@jspaleta
Copy link
Author

jspaleta commented Dec 6, 2024

This work is related to cilium/community#178

@jspaleta jspaleta force-pushed the jspaleta/feature/team-mentors branch from 6910cae to e32cf9b Compare December 10, 2024 18:15
aanm and others added 4 commits December 11, 2024 09:30
There was some rate limiting being applied. The returned error suggested
the user to try out after a couple minutes, thus by adding a sleeper, we
can re-try afterwards.

Signed-off-by: André Martins <[email protected]>
…c team member/mentor without exposing entire configuration

Signed-off-by: Jef Spaleta <[email protected]>
…am-mentors' into jspaleta/feature/team-mentors
@jspaleta
Copy link
Author

I've extended this PR to include an optional team override file in the configuration.

The team override file is a subset of the full Team configuration meant to be held in the public view while the full configuration is kept private.

The TeamOverrideConfig includes only team names, and github usernames for team members and mentors.

The team override file is a strict override of team member and mentor lists only on a per team basis, for teams intended to be managed in the public view. Once the CI build is complete I'll update the MillionDollarIdea repo with an example of the override in use.

@jspaleta jspaleta changed the title Feature: Team mentor status Feature: Team mentor Dec 11, 2024
@jspaleta
Copy link
Author

I now have the MillionDollarIdeas Org updated to make use of the proposed team override from the latest CI build of this PR.

Public team information located at:
https://github.com/MillionDollarIdeas/team-assignments

Full Team management configuration located in private repo:
https://github.com/MillionDollarIdeas/team-management

repo-dispatch event is used to trigger private team-management workflow when public team membership info is updated.

@jspaleta jspaleta force-pushed the jspaleta/feature/team-mentors branch from d6ead62 to 8e2a662 Compare December 11, 2024 23:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants