✨ feat: add support for OCM role creation - #6055
Conversation
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
Hi @andclt. Thanks for your PR. I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with Regular contributors should join the org to skip this step. Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. DetailsInstructions 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 |
|
@andclt: Cannot trigger testing until a trusted user reviews the PR and leaves an DetailsIn 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 |
| //nolint:staticcheck // SA1019: MachinePhaseFailed is deprecated but still needed for v1beta1 compatibility | ||
| statusChecks := []framework.MachineStatusCheck{framework.MachinePhaseCheck(string(clusterv1.MachinePhaseFailed))} |
There was a problem hiding this comment.
unrelated to our changes but make lint was failing
|
/retest |
2c15e75 to
69e626d
Compare
03cde2c to
dd36e95
Compare
|
/retest |
6c12c5c to
715f05a
Compare
tested and the |
a6dcf9c to
d5b8372
Compare
serngawy
left a comment
There was a problem hiding this comment.
looks good, I have comment to clarify self healing
|
LGTM label has been added. DetailsGit tree hash: d6ec9ce18abebb5034e3737e2c7f2bbd68651951 |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: nrb The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
/cherry-pick release-2.11 |
|
@serngawy: new pull request created: #6117 DetailsIn 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. |
What type of PR is this?
/kind feature
What this PR does / why we need it:
This PR adds support for managing OCM roles in AWS through a new
ROSAOCMRoleConfigcontroller. This controller automates the creation, validation, and lifecycle management of OCM roles required for ROSA cluster operations.Key additions:
ROSAOCMRoleConfigCRD with validation rules (role prefix patterns, profile immutability, max lengths)The core
GetOrCreateOCMRolelogic and related helper methods are adapted from the ROSA CLI (openshift/rosa#3262). We could not update the ROSA dependency directly due to Go directive version incompatibility between ROSA and CAPA, so the logic was ported and adapted to work within CAPA's architecture.Manual Testing:
Comprehensive manual testing was performed against real AWS and OCM infrastructure.
Test Environment:
tests:
deletePolicy=RetainWhich issue(s) this PR fixes (optional, in
fixes #<issue number>(, fixes #<issue_number>, ...)format, will close the issue(s) when PR gets merged):Fixes
https://redhat.atlassian.net/browse/ROSAENG-8292
Special notes for your reviewer:
The
GetOrCreateOCMRoleimplementation is adapted from ROSA CLI PR #3262 rather than using the ROSA dependency directly due to Go version incompatibility. The logic has been adapted to fit CAPA's controller pattern and error handling conventions.AI Usage:
Claude code was used for test infrastructure refactoring and boilerplate elimination in test files.
Checklist:
Release note: