-
Notifications
You must be signed in to change notification settings - Fork 160
peribolos: add org roles feature
#555
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
base: main
Are you sure you want to change the base?
Conversation
✅ Deploy Preview for k8s-prow ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
|
Hi @hoxhaeris. Thanks for your PR. I'm waiting for a github.com member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
|
/hold |
|
@hoxhaeris: GitHub didn't allow me to request PR reviews from the following users: bradmwilliams. Note that only kubernetes-sigs members and repo collaborators can review this PR, and authors cannot review their own PRs. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
|
/ok-to-test |
a508906 to
8821599
Compare
|
/test pull-prow-unit-test |
8821599 to
1aabf3d
Compare
|
/test pull-prow-unit-test |
1 similar comment
|
/test pull-prow-unit-test |
1aabf3d to
eeaf178
Compare
|
Tests summary: What Was TestedBasic Operations
Cleanup Scenarios
Case Sensitivity
Idempotency
Flag Gating
Dump Functionality
Validation
Multiple/Complex Assignments
Pending Invitations
Indirect Assignments (Team Membership)
Indirect Assignment HandlingGitHub's API returns users who have roles through team membership with
This prevents accidental removal of team members who inherit roles. |
|
/test pull-prow-verify-lint |
eeaf178 to
3776034
Compare
5c39413 to
7c94f88
Compare
|
@hoxhaeris: Those labels are not set on the issue: In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
|
@hoxhaeris: The following test failed, say
Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
|
/remove-area pubsub |
Add Organization Roles Support to Peribolos
This PR adds support for managing GitHub organization custom roles in Peribolos, enabling declarative configuration of role assignments to teams and users.
Changes
1. Configuration Schema (
pkg/config/org/org.go)Rolesfield toConfigstruct for declaring role assignmentsValidateRoles()for pre-flight validation with case-insensitive team/user matchinggithub.NormLogin()for consistent username normalization2. GitHub API Client (
pkg/github/client.go)Added methods for organization role management:
ListOrganizationRoles(),ListTeamsWithRole(),ListUsersWithRole()AssignOrganizationRoleToTeam(),RemoveOrganizationRoleFromTeam()AssignOrganizationRoleToUser(),RemoveOrganizationRoleFromUser()All mutating operations respect dry-run mode.
3. Main Implementation (
cmd/peribolos/main.go)--fix-org-rolesflag to enable role management (gatekeeper)configureOrgRoles()4. Test Coverage (
pkg/config/org/org_test.go,cmd/peribolos/main_test.go)Example Configuration
Usage