Skip to content

OCPBUGS-72555: Restrict CPMS boot image configuration to only AWS, GCP and Azure platforms - #5540

Merged
openshift-merge-bot[bot] merged 1 commit into
openshift:mainfrom
djoshy:add-cpms-vap
Jan 29, 2026
Merged

OCPBUGS-72555: Restrict CPMS boot image configuration to only AWS, GCP and Azure platforms#5540
openshift-merge-bot[bot] merged 1 commit into
openshift:mainfrom
djoshy:add-cpms-vap

Conversation

@djoshy

@djoshy djoshy commented Jan 9, 2026

Copy link
Copy Markdown
Contributor

- What I did
This PR adds a ValidatingAdmissionPolicy that limits addition of the CPMS MachineManager to the boot image configuration only for the AWS, GCP, Azure platforms.

- How to verify it
Note that this feature is still under techpreview, so it will need a cluster launched with that TP enabled. Attempt to add a boot image configuration for controlplanemachinesets:

apiVersion: operator.openshift.io/v1
kind: MachineConfiguration
metadata:
  name: cluster
  namespace: openshift-machine-config-operator
spec:
  logLevel: Normal
  operatorLogLevel: Normal
  managedBootImages:
    machineManagers:
      - resource: controlplanemachinesets
        apiGroup: machine.openshift.io
        selection:
          mode: All

The APIServer should permit this for the platforms mentioned above and reject it for any other platforms, including vsphere with an error message like:

The machineconfigurations "cluster" is invalid: : ValidatingAdmissionPolicy 'managed-bootimages-cpms-platform-check' with binding 'managed-bootimages-cpms-platform-check-binding' denied request: The control plane machineset boot image update feature is only supported on these platforms: GCP, AWS, Azure

@openshift-ci openshift-ci Bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jan 9, 2026
@openshift-ci

openshift-ci Bot commented Jan 9, 2026

Copy link
Copy Markdown
Contributor

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@openshift-ci-robot openshift-ci-robot added jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. jira/valid-bug Indicates that a referenced Jira bug is valid for the branch this PR is targeting. labels Jan 9, 2026
@openshift-ci-robot

Copy link
Copy Markdown
Contributor

@djoshy: This pull request references Jira Issue OCPBUGS-72555, which is valid. The bug has been moved to the POST state.

3 validation(s) were run on this bug
  • bug is open, matching expected state (open)
  • bug target version (4.22.0) matches configured target version for branch (4.22.0)
  • bug is in the state New, which is one of the valid states (NEW, ASSIGNED, POST)

Requesting review from QA contact:
/cc @sergiordlr

The bug has been updated to refer to the pull request using the external bug tracker.

Details

In response to this:

- What I did
This PR adds a ValidatingAdmissionPolicy that limits addition of the CPMS MachineManager to the boot image configuration only for the AWS, GCP, Azure platforms.

- How to verify it
Note that this feature is still under techpreview, so it will need a cluster launched with that TP enabled. Attempt to add a boot image configuration for controlplanemachinesets:

apiVersion: operator.openshift.io/v1
kind: MachineConfiguration
metadata:
 name: cluster
 namespace: openshift-machine-config-operator
spec:
 logLevel: Normal
 operatorLogLevel: Normal
 managedBootImages:
   machineManagers:
     - resource: controlplanemachinesets
       apiGroup: machine.openshift.io
       selection:
         mode: All

The APIServer should permit this for the platforms mentioned above and reject it for any other platforms, including vsphere.

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
openshift-ci Bot requested a review from sergiordlr January 9, 2026 18:58
@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jan 9, 2026
@djoshy
djoshy marked this pull request as ready for review January 9, 2026 19:28
@openshift-ci-robot

Copy link
Copy Markdown
Contributor

@djoshy: This pull request references Jira Issue OCPBUGS-72555, which is valid.

3 validation(s) were run on this bug
  • bug is open, matching expected state (open)
  • bug target version (4.22.0) matches configured target version for branch (4.22.0)
  • bug is in the state POST, which is one of the valid states (NEW, ASSIGNED, POST)

Requesting review from QA contact:
/cc @sergiordlr

Details

In response to this:

- What I did
This PR adds a ValidatingAdmissionPolicy that limits addition of the CPMS MachineManager to the boot image configuration only for the AWS, GCP, Azure platforms.

- How to verify it
Note that this feature is still under techpreview, so it will need a cluster launched with that TP enabled. Attempt to add a boot image configuration for controlplanemachinesets:

apiVersion: operator.openshift.io/v1
kind: MachineConfiguration
metadata:
 name: cluster
 namespace: openshift-machine-config-operator
spec:
 logLevel: Normal
 operatorLogLevel: Normal
 managedBootImages:
   machineManagers:
     - resource: controlplanemachinesets
       apiGroup: machine.openshift.io
       selection:
         mode: All

The APIServer should permit this for the platforms mentioned above and reject it for any other platforms, including vsphere with an error message like:

The machineconfigurations "cluster" is invalid: : ValidatingAdmissionPolicy 'managed-bootimages-cpms-platform-check' with binding 'managed-bootimages-cpms-platform-check-binding' denied request: The control plane machineset boot image update feature is only supported on these platforms: GCP, AWS, Azure

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 openshift-ci Bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jan 9, 2026
@djoshy

djoshy commented Jan 9, 2026

Copy link
Copy Markdown
Contributor Author

/cherry-pick release-4.21

@openshift-cherrypick-robot

Copy link
Copy Markdown

@djoshy: once the present PR merges, I will cherry-pick it on top of release-4.21 in a new PR and assign it to you.

Details

In response to this:

/cherry-pick release-4.21

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.

@isabella-janssen isabella-janssen left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Jan 9, 2026
@openshift-ci openshift-ci Bot removed the lgtm Indicates that a PR is ready to be merged. label Jan 13, 2026

@isabella-janssen isabella-janssen left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

@djoshy

djoshy commented Jan 16, 2026

Copy link
Copy Markdown
Contributor Author

/test all

@openshift-ci openshift-ci Bot removed the lgtm Indicates that a PR is ready to be merged. label Jan 27, 2026

@isabella-janssen isabella-janssen left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Jan 27, 2026
@openshift-ci

openshift-ci Bot commented Jan 27, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: djoshy, isabella-janssen

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:
  • OWNERS [djoshy,isabella-janssen]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@sergiordlr

Copy link
Copy Markdown
Contributor

Verified in IPI on AWS, GCP, Azure and Vsphere

We could configure controlplanemachineest without problems in AWS, GCP and Azure

In vsphere the configuration is forbidden

# * : ValidatingAdmissionPolicy 'managed-bootimages-cpms-platform-check' with binding 'managed-bootimages-cpms-platform-check-binding' denied request: The control plane machineset boot image update feature is only supported on these platforms: GCP, AWS, Azure

Test case "[sig-mco] MCO ControlPlaneMachineSet Author:sregidor-NonHyperShiftHOST-NonPreRelease-Medium-87023-MachineConfiguration status correctly reflects spec changes [Disruptive] [Serial]" was executed to make sure that other configurations can be applied

In vshpere the boot images update tests are passing too.

/verified by @sergiordlr

@openshift-ci-robot openshift-ci-robot added the verified Signifies that the PR passed pre-merge verification criteria label Jan 28, 2026
@openshift-ci-robot

Copy link
Copy Markdown
Contributor

@sergiordlr: This PR has been marked as verified by @sergiordlr.

Details

In response to this:

Verified in IPI on AWS, GCP, Azure and Vsphere

We could configure controlplanemachineest without problems in AWS, GCP and Azure

In vsphere the configuration is forbidden

# * : ValidatingAdmissionPolicy 'managed-bootimages-cpms-platform-check' with binding 'managed-bootimages-cpms-platform-check-binding' denied request: The control plane machineset boot image update feature is only supported on these platforms: GCP, AWS, Azure

Test case "[sig-mco] MCO ControlPlaneMachineSet Author:sregidor-NonHyperShiftHOST-NonPreRelease-Medium-87023-MachineConfiguration status correctly reflects spec changes [Disruptive] [Serial]" was executed to make sure that other configurations can be applied

In vshpere the boot images update tests are passing too.

/verified by @sergiordlr

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.

@djoshy

djoshy commented Jan 28, 2026

Copy link
Copy Markdown
Contributor Author

/test all

@djoshy

djoshy commented Jan 28, 2026

Copy link
Copy Markdown
Contributor Author

/retest-required

1 similar comment
@djoshy

djoshy commented Jan 28, 2026

Copy link
Copy Markdown
Contributor Author

/retest-required

@openshift-ci-robot

Copy link
Copy Markdown
Contributor

/retest-required

Remaining retests: 0 against base HEAD 7067ecb and 2 for PR HEAD e3841fb in total

@djoshy

djoshy commented Jan 28, 2026

Copy link
Copy Markdown
Contributor Author

/retest-required

1 similar comment
@djoshy

djoshy commented Jan 29, 2026

Copy link
Copy Markdown
Contributor Author

/retest-required

@openshift-ci

openshift-ci Bot commented Jan 29, 2026

Copy link
Copy Markdown
Contributor

@djoshy: The following test 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/e2e-gcp-op-ocl e3841fb link false /test e2e-gcp-op-ocl

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.

@openshift-merge-bot
openshift-merge-bot Bot merged commit 62b3e75 into openshift:main Jan 29, 2026
14 of 15 checks passed
@openshift-ci-robot

Copy link
Copy Markdown
Contributor

@djoshy: Jira Issue Verification Checks: Jira Issue OCPBUGS-72555
✔️ This pull request was pre-merge verified.
✔️ All associated pull requests have merged.
✔️ All associated, merged pull requests were pre-merge verified.

Jira Issue OCPBUGS-72555 has been moved to the MODIFIED state and will move to the VERIFIED state when the change is available in an accepted nightly payload. 🕓

Details

In response to this:

- What I did
This PR adds a ValidatingAdmissionPolicy that limits addition of the CPMS MachineManager to the boot image configuration only for the AWS, GCP, Azure platforms.

- How to verify it
Note that this feature is still under techpreview, so it will need a cluster launched with that TP enabled. Attempt to add a boot image configuration for controlplanemachinesets:

apiVersion: operator.openshift.io/v1
kind: MachineConfiguration
metadata:
 name: cluster
 namespace: openshift-machine-config-operator
spec:
 logLevel: Normal
 operatorLogLevel: Normal
 managedBootImages:
   machineManagers:
     - resource: controlplanemachinesets
       apiGroup: machine.openshift.io
       selection:
         mode: All

The APIServer should permit this for the platforms mentioned above and reject it for any other platforms, including vsphere with an error message like:

The machineconfigurations "cluster" is invalid: : ValidatingAdmissionPolicy 'managed-bootimages-cpms-platform-check' with binding 'managed-bootimages-cpms-platform-check-binding' denied request: The control plane machineset boot image update feature is only supported on these platforms: GCP, AWS, Azure

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-cherrypick-robot

Copy link
Copy Markdown

@djoshy: #5540 failed to apply on top of branch "release-4.21":

Applying: add VAP for CPMS boot image updates
Using index info to reconstruct a base tree...
M	pkg/operator/sync.go
Falling back to patching base and 3-way merge...
Auto-merging pkg/operator/sync.go
CONFLICT (content): Merge conflict in pkg/operator/sync.go
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
hint: When you have resolved this problem, run "git am --continue".
hint: If you prefer to skip this patch, run "git am --skip" instead.
hint: To restore the original branch and stop patching, run "git am --abort".
hint: Disable this message with "git config set advice.mergeConflict false"
Patch failed at 0001 add VAP for CPMS boot image updates

Details

In response to this:

/cherry-pick release-4.21

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.

@djoshy
djoshy deleted the add-cpms-vap branch January 30, 2026 19:20
@openshift-merge-robot

Copy link
Copy Markdown
Contributor

Fix included in accepted release 4.22.0-0.nightly-2026-01-31-004202

ptalgulk01 pushed a commit to ptalgulk01/machine-config-operator that referenced this pull request May 15, 2026
OCPBUGS-72555: Restrict CPMS boot image configuration to only AWS, GCP and Azure platforms
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. jira/valid-bug Indicates that a referenced Jira bug is valid for the branch this PR is targeting. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. lgtm Indicates that a PR is ready to be merged. verified Signifies that the PR passed pre-merge verification criteria

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants