Skip to content

Conversation

@AlexNPavel
Copy link
Contributor

Add new request and revoke text commands that allow members of the Hybrid Platforms organization to obtain temporary access to GCP projects for testing complex or long-lived clusters beyond what the existing automated commands support.

Commands:

  • request <resource> "<justification>" - Request 7-day access with business justification
  • revoke <resource> - Remove access early before expiration

Key features:

  • Authorization via Cyborg API to verify Hybrid Platforms organization membership
  • Automated IAM binding creation with 7-day default expiration
  • Background monitoring and cleanup of expired access grants
  • Initial support for "gcp-access" resource with extensible design for additional GCP projects or resource types

Implementation includes:

  • New GCP access manager with IAM policy management (pkg/manager/gcp_access.go)
  • Request/revoke command parsers and action handlers
  • Comprehensive test coverage (627 lines of manager tests, 941 lines of Slack action tests)
  • Documentation in docs/claude/OCPCRT-436/ for implementation details and testing procedures

This PR also has a modernization recommendations from the gopls modernizer implemented.

@openshift-ci-robot
Copy link

openshift-ci-robot commented Jan 17, 2026

@AlexNPavel: This pull request references OCPCRT-436 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.22.0" version, but no target version was set.

Details

In response to this:

Add new request and revoke text commands that allow members of the Hybrid Platforms organization to obtain temporary access to GCP projects for testing complex or long-lived clusters beyond what the existing automated commands support.

Commands:

  • request <resource> "<justification>" - Request 7-day access with business justification
  • revoke <resource> - Remove access early before expiration

Key features:

  • Authorization via Cyborg API to verify Hybrid Platforms organization membership
  • Automated IAM binding creation with 7-day default expiration
  • Background monitoring and cleanup of expired access grants
  • Initial support for "gcp-access" resource with extensible design for additional GCP projects or resource types

Implementation includes:

  • New GCP access manager with IAM policy management (pkg/manager/gcp_access.go)
  • Request/revoke command parsers and action handlers
  • Comprehensive test coverage (627 lines of manager tests, 941 lines of Slack action tests)
  • Documentation in docs/claude/OCPCRT-436/ for implementation details and testing procedures

This PR also has a modernization recommendations from the gopls modernizer implemented.

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 openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Jan 17, 2026
@AlexNPavel
Copy link
Contributor Author

/hold

@openshift-ci openshift-ci bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jan 17, 2026
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Jan 17, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: AlexNPavel

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

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jan 17, 2026
Add new `request` and `revoke` text commands that allow members of the
Hybrid Platforms organization to obtain temporary access to GCP projects
for testing complex or long-lived clusters beyond what the existing
automated commands support.

Commands:
- `request <resource> "<justification>"` - Request 7-day access with
  business justification
- `revoke <resource>` - Remove access early before expiration

Key features:
- Authorization via Cyborg API to verify Hybrid Platforms organization
  membership
- Automated IAM binding creation with 7-day default expiration
- Background monitoring and cleanup of expired access grants
- Initial support for "gcp-access" resource with extensible design
  for additional GCP projects or resource types

Implementation includes:
- New GCP access manager with IAM policy management (pkg/manager/gcp_access.go)
- Request/revoke command parsers and action handlers
- Comprehensive test coverage (627 lines of manager tests, 941 lines
  of Slack action tests)
- Documentation in docs/claude/OCPCRT-436/ for implementation details
  and testing procedures
@AlexNPavel
Copy link
Contributor Author

The lint test requires openshift/release#73653 to update golangci-lint to v2.

@AlexNPavel
Copy link
Contributor Author

/retest

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Jan 17, 2026

@AlexNPavel: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/security d198739 link false /test security
ci/prow/govulncheck d198739 link false /test govulncheck

Full PR test history. Your PR dashboard.

Details

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.

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. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants