OCPBUGS-29840: actuator: Fix DummyActuator to respect Manual mode upgrade gate#1015
OCPBUGS-29840: actuator: Fix DummyActuator to respect Manual mode upgrade gate#1015jstuever wants to merge 1 commit intoopenshift:masterfrom
Conversation
On unsupported platforms, the DummyActuator now checks the Manual mode upgrade annotation requirement. Previously, DummyActuator always reported upgradeable=true, bypassing the administrator confirmation annotation that Manual mode requires for upgrades. This adds a Client field to DummyActuator and updates the Upgradeable method to delegate to UpgradeableCheck in Manual mode, ensuring consistent upgrade gating behavior across all platforms. Assisted-by: Claude Sonnet 4.6
|
@jstuever: This pull request references Jira Issue OCPBUGS-29840, which is invalid:
Comment The bug has been updated to refer to the pull request using the external bug tracker. 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 openshift-eng/jira-lifecycle-plugin repository. |
WalkthroughThe Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes 🚥 Pre-merge checks | ✅ 10 | ❌ 2❌ Failed checks (2 warnings)
✅ Passed checks (10 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: jstuever 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 |
|
/jira refresh |
|
@jstuever: This pull request references Jira Issue OCPBUGS-29840, which is valid. The bug has been moved to the POST state. 3 validation(s) were run on this bug
Requesting review from QA contact: 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 openshift-eng/jira-lifecycle-plugin repository. |
|
/test list |
|
@openshift-ci-robot: GitHub didn't allow me to request PR reviews from the following users: jianping-shu. Note that only openshift members and repo collaborators can review this PR, and authors cannot review their own PRs. 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. |
|
@jstuever: This pull request references Jira Issue OCPBUGS-29840, which is valid. 3 validation(s) were run on this bug
Requesting review from QA contact: 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 openshift-eng/jira-lifecycle-plugin repository. |
|
@openshift-ci-robot: GitHub didn't allow me to request PR reviews from the following users: jianping-shu. Note that only openshift members and repo collaborators can review this PR, and authors cannot review their own PRs. 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. |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #1015 +/- ##
=======================================
Coverage 46.88% 46.89%
=======================================
Files 98 98
Lines 12558 12560 +2
=======================================
+ Hits 5888 5890 +2
Misses 6015 6015
Partials 655 655
🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@pkg/operator/credentialsrequest/actuator/actuator.go`:
- Around line 89-91: The current early-return skips the Manual-mode upgrade gate
when a.Client is nil; update the logic in actuator.go so that when mode ==
operatorv1.CloudCredentialsModeManual you do not default to Upgradeable=true on
a nil client — instead return a failing/closed upgradeable result (i.e.,
Upgradeable=false or an error) if a.Client == nil, and only call
utils.UpgradeableCheck(a.Client, mode, types.NamespacedName{}) when a.Client is
present; adjust the branch around a.Client and utils.UpgradeableCheck to
explicitly fail closed for Manual mode when the client is missing.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: c40d840c-c37e-4ad7-87d2-48da0468c761
📒 Files selected for processing (4)
pkg/operator/controller.gopkg/operator/credentialsrequest/actuator/actuator.gopkg/operator/credentialsrequest/actuator/actuator_test.gopkg/operator/credentialsrequest/status_test.go
|
/override ci/prow/security |
|
@jstuever: Overrode contexts on behalf of jstuever: ci/prow/security 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. |
|
/retest |
1 similar comment
|
/retest |
|
/test e2e-hypershift |
|
@jstuever: all tests passed! Full PR test history. Your PR dashboard. 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. I understand the commands that are listed here. |
|
/assign @dlom |
On unsupported platforms, the DummyActuator now checks the Manual mode upgrade annotation requirement. Previously, DummyActuator always reported upgradeable=true, bypassing the administrator confirmation annotation that Manual mode requires for upgrades.
This adds a Client field to DummyActuator and updates the Upgradeable method to delegate to UpgradeableCheck in Manual mode, ensuring consistent upgrade gating behavior across all platforms.
Assisted-by: Claude Sonnet 4.6
Summary by CodeRabbit
Refactor
Tests