Skip to content

Conversation

isabella-janssen
Copy link
Member

@isabella-janssen isabella-janssen commented Sep 12, 2025

- Authors

- What I did

  1. Version bump the API to openshift/api@2acafd4 & client-go to openshift/client-go@1bc0cb0.
$ go get github.com/openshift/api@2acafd4d1ed26c67ec29e85715ee1995ae6f1904
$ go mod tidy
$ go get github.com/openshift/client-go@1bc0cb0da03b4bf85cd730124085cb982b66d926
$ go mod tidy
$ go mod vendor
  1. Update MCN flows to add new image-mode specific fields. Note that this part of implementation was assisted by cursor.
    • Spec.ConfigImage.DesiredImage
    • Status.ConfigImage.CurrentImage
    • Status.ConfigImage.DesiredImage
    • Status.Conditions[MachineConfigNodeImagePulledFromRegistry]

- How to verify it
MCO-1713:

  1. Launch a 4.21 techpreview cluster with this PR included.
launch 4.21,openshift/machine-config-operator#5282 aws,techpreview
  1. Enable On Cluster Image Mode.
$ oc create -f - << EOF           
apiVersion: machineconfiguration.openshift.io/v1
kind: MachineOSConfig
metadata:
  name: worker
spec:
  machineConfigPool:
    name: worker
  imageBuilder:
    imageBuilderType: Job
  renderedImagePushSecret:
    name: $(oc get -n openshift-machine-config-operator sa builder -ojsonpath='{.secrets[0].name}')
  renderedImagePushSpec: "image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image:latest"
EOF
  1. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.
    • The columns in the outputs for oc get machineconfignode -w and oc get machineconfignode -o wide -w should properly update during the OCB enablement. See this thread for more details on the intended experience.
    • The new MCN fields should be correctly populated.
    • During the OCB rollout, the desired image annotation should be set at the beginning of the node update before the current image annotation is set.
    • Once OCB is fully enabled on a node, the node should be considered "Updated" and the desired and current image annotation values should be set appropriately.
  2. Disable On Cluster Image Mode.
oc delete machineosconfig/worker
  1. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.
    • The columns in the outputs for oc get machineconfignode -w and oc get machineconfignode -o wide -w should properly update during the OCB disabling process. See this thread for more details on the intended experience.
    • The new MCN fields should be correctly populated.
      • During the OCB disabling, the desired image annotation should be removed at the beginning of the node update before the current image annotation is removed.
      • Once OCB is fully disabled on a node, the node should be considered "Updated" and the desired and current image annotation values should be removed in both the MCN Spec and Status.
Example `oc get machineconfignode` outputs for OCB enabling
$ oc get machineconfignode -w
NAME                                        POOLNAME   DESIREDCONFIG                                      CURRENTCONFIG                                      UPDATED   AGE
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   True      30m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   True      30m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   True      18m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   True      42m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     42m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     42m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     42m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     42m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     43m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     43m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     43m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     45m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     45m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     45m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     45m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     45m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     45m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     45m
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   True      45m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   True      45m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     45m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     45m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     46m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     46m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     47m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     48m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     49m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     49m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     49m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     50m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     50m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     50m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     51m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     51m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     51m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     51m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     51m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     51m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     51m
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   True      51m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   True      39m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     39m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     39m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     40m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     40m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     41m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     42m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     42m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     42m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     42m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     43m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     43m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     43m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     43m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   True      44m
Example `oc get machineconfignode -o wide` outputs for OCB enabling
$ oc get machineconfignode -o wide -w                                                 
NAME                                        POOLNAME   DESIREDCONFIG                                      CURRENTCONFIG                                      UPDATED   AGE   UPDATEPREPARED   UPDATEEXECUTED   UPDATEPOSTACTIONCOMPLETE   UPDATECOMPLETE   RESUMED   UPDATEDFILESANDOS   CORDONEDNODE   DRAINEDNODE   REBOOTEDNODE   UNCORDONEDNODE
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   True      30m   False            False            False                      False            False     False               False          False         False          False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   True      30m   False            False            False                      False            False     False               False          False         False          False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   True      18m   False            False            False                      False            False     False               False          False         False          False
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   True      42m   False            False            False                      False            False     False               False          False         False          False
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     42m   False            False            False                      False            False     False               False          False         False          False
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     42m   True             False            False                      False            False     False               False          False         False          False
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     42m   True             Unknown          False                      False            False     False               True           False         False          False
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     42m   True             Unknown          False                      False            False     False               True           Unknown       False          False
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     43m   True             Unknown          False                      False            False     False               True           True          False          False
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     43m   True             Unknown          False                      False            False     Unknown             True           True          False          False
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     43m   True             Unknown          False                      False            False     Unknown             True           True          False          False
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m   True             Unknown          False                      False            False     Unknown             True           True          False          False
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m   True             True             False                      False            False     True                True           True          False          False
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m   True             True             False                      False            False     True                True           True          Unknown        False
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     45m   True             True             False                      False            False     True                True           True          True           False
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     45m   True             True             False                      False            False     True                True           True          True           False
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     45m   True             True             False                      False            False     True                True           True          True           False
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     45m   True             True             False                      False            False     True                True           True          True           False
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     45m   True             True             False                      False            True      True                True           True          True           False
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     45m   True             True             False                      True             True      True                True           True          True           True
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     45m   True             True             False                      True             True      True                True           True          True           True
ip-10-0-14-86.us-west-1.compute.internal    worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   True      45m   False            False            False                      False            False     False               False          False         False          False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   True      45m   False            False            False                      False            False     False               False          False         False          False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     45m   False            False            False                      False            False     False               False          False         False          False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     45m   True             False            False                      False            False     False               False          False         False          False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     46m   True             Unknown          False                      False            False     False               True           False         False          False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     46m   True             Unknown          False                      False            False     False               True           Unknown       False          False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     47m   True             Unknown          False                      False            False     False               True           Unknown       False          False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     48m   True             Unknown          False                      False            False     False               True           Unknown       False          False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     49m   True             Unknown          False                      False            False     False               True           True          False          False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     49m   True             Unknown          False                      False            False     Unknown             True           True          False          False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     49m   True             Unknown          False                      False            False     Unknown             True           True          False          False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     50m   True             Unknown          False                      False            False     Unknown             True           True          False          False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     50m   True             True             False                      False            False     True                True           True          False          False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     50m   True             True             False                      False            False     True                True           True          Unknown        False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     51m   True             True             False                      False            False     True                True           True          Unknown        False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     51m   True             True             False                      False            False     True                True           True          Unknown        False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     51m   True             True             False                      False            False     True                True           True          Unknown        False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     51m   True             True             False                      False            False     True                True           True          True           False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     51m   True             True             False                      False            True      True                True           True          True           False
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     51m   True             True             False                      True             True      True                True           True          True           True
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     51m   True             True             False                      True             True      True                True           True          True           True
ip-10-0-59-172.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   True      51m   False            False            False                      False            False     False               False          False         False          False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   True      39m   False            False            False                      False            False     False               False          False         False          False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     39m   False            False            False                      False            False     False               False          False         False          False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     39m   True             False            False                      False            False     False               False          False         False          False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     40m   True             Unknown          False                      False            False     False               True           False         False          False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     40m   True             Unknown          False                      False            False     False               True           Unknown       False          False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     41m   True             Unknown          False                      False            False     False               True           Unknown       False          False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     42m   True             Unknown          False                      False            False     False               True           Unknown       False          False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     42m   True             Unknown          False                      False            False     False               True           True          False          False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     42m   True             Unknown          False                      False            False     Unknown             True           True          False          False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     42m   True             Unknown          False                      False            False     Unknown             True           True          False          False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     43m   True             Unknown          False                      False            False     Unknown             True           True          False          False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     43m   True             True             False                      False            False     True                True           True          False          False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     43m   True             True             False                      False            False     True                True           True          Unknown        False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     43m   True             True             False                      False            False     True                True           True          Unknown        False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m   True             True             False                      False            False     True                True           True          Unknown        False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m   True             True             False                      False            False     True                True           True          Unknown        False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m   True             True             False                      False            False     True                True           True          Unknown        False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m   True             True             False                      False            False     True                True           True          True           False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m   True             True             False                      False            True      True                True           True          True           False
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m   True             True             False                      True             True      True                True           True          True           True
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   False     44m   True             True             False                      True             True      True                True           True          True           True
ip-10-0-89-221.us-west-1.compute.internal   worker     rendered-worker-d63c7736923b60b8b82492ae9a1eef40   rendered-worker-d63c7736923b60b8b82492ae9a1eef40   True      44m   False            False            False                      False            False     False               False          False         False          False
Example MCN before OCB enabling
$ oc describe machineconfignode/ip-10-0-89-221.us-west-1.compute.internal
Name:         ip-10-0-89-221.us-west-1.compute.internal
Namespace:    
Labels:       
Annotations:  
API Version:  machineconfiguration.openshift.io/v1
Kind:         MachineConfigNode
Metadata:
  Creation Timestamp:  2025-10-09T14:36:18Z
  Generation:          2
  Owner References:
    API Version:     v1
    Kind:            Node
    Name:            ip-10-0-89-221.us-west-1.compute.internal
    UID:             ca4b824a-b5c5-448c-80a4-c1f104460f5d
  Resource Version:  29761
  UID:               57d6cd1f-aaf9-4707-bd6f-9b8f9c7a03b9
Spec:
  Config Version:
    Desired:  rendered-worker-d63c7736923b60b8b82492ae9a1eef40
  Node:
    Name:  ip-10-0-89-221.us-west-1.compute.internal
  Pool:
    Name:  worker
Status:
  Conditions:
    Last Transition Time:  2025-10-09T14:36:27Z
    Message:               All pinned image sets complete
    Reason:                AsExpected
    Status:                False
    Type:                  PinnedImageSetsProgressing
    Last Transition Time:  2025-10-09T14:36:27Z
    Message:               This node has not yet entered the UpdatePrepared phase
    Reason:                NotYetOccurred
    Status:                False
    Type:                  UpdatePrepared
    Last Transition Time:  2025-10-09T14:36:27Z
    Message:               This node has not yet entered the UpdateExecuted phase
    Reason:                NotYetOccurred
    Status:                False
    Type:                  UpdateExecuted
    Last Transition Time:  2025-10-09T14:36:27Z
    Message:               This node has not yet entered the UpdatePostActionComplete phase
    Reason:                NotYetOccurred
    Status:                False
    Type:                  UpdatePostActionComplete
    Last Transition Time:  2025-10-09T14:37:21Z
    Message:               Action during update to rendered-worker-d63c7736923b60b8b82492ae9a1eef40: Uncordoned Node as part of completing upgrade phase
    Reason:                Uncordoned
    Status:                False
    Type:                  UpdateComplete
    Last Transition Time:  2025-10-09T14:37:21Z
    Message:               Action during update to rendered-worker-d63c7736923b60b8b82492ae9a1eef40: In desired config . Resumed normal operations.
    Reason:                Resumed
    Status:                False
    Type:                  Resumed
    Last Transition Time:  2025-10-09T14:36:27Z
    Message:               This node has not yet entered the Drained phase
    Reason:                NotYetOccurred
    Status:                False
    Type:                  Drained
    Last Transition Time:  2025-10-09T14:36:27Z
    Message:               This node has not yet entered the AppliedFilesAndOS phase
    Reason:                NotYetOccurred
    Status:                False
    Type:                  AppliedFilesAndOS
    Last Transition Time:  2025-10-09T14:36:27Z
    Message:               This node has not yet entered the ImagePulledFromRegistry phase
    Reason:                NotYetOccurred
    Status:                False
    Type:                  ImagePulledFromRegistry
    Last Transition Time:  2025-10-09T14:36:27Z
    Message:               This node has not yet entered the Cordoned phase
    Reason:                NotYetOccurred
    Status:                False
    Type:                  Cordoned
    Last Transition Time:  2025-10-09T14:36:27Z
    Message:               This node has not yet entered the RebootedNode phase
    Reason:                NotYetOccurred
    Status:                False
    Type:                  RebootedNode
    Last Transition Time:  2025-10-09T14:37:21Z
    Message:               Node ip-10-0-89-221.us-west-1.compute.internal Updated
    Reason:                Updated
    Status:                True
    Type:                  Updated
    Last Transition Time:  2025-10-09T14:37:21Z
    Message:               Action during update to rendered-worker-d63c7736923b60b8b82492ae9a1eef40: UnCordoned node. The node is reporting Unschedulable = false
    Reason:                UpdateCompleteUncordoned
    Status:                False
    Type:                  Uncordoned
    Last Transition Time:  2025-10-09T14:36:27Z
    Message:               This node has not yet entered the NodeDegraded phase
    Reason:                NotYetOccurred
    Status:                False
    Type:                  NodeDegraded
    Last Transition Time:  2025-10-09T14:36:27Z
    Message:               All is good
    Reason:                AsExpected
    Status:                False
    Type:                  PinnedImageSetsDegraded
  Config Version:
    Current:            rendered-worker-d63c7736923b60b8b82492ae9a1eef40
    Desired:            rendered-worker-d63c7736923b60b8b82492ae9a1eef40
  Observed Generation:  3
Events:                 
Example MCN during OCB enabling
```
$ oc describe machineconfignode/ip-10-0-59-172.us-west-1.compute.internal
Name:         ip-10-0-59-172.us-west-1.compute.internal
Namespace:    
Labels:       
Annotations:  
API Version:  machineconfiguration.openshift.io/v1
Kind:         MachineConfigNode
Metadata:
  Creation Timestamp:  2025-10-09T14:24:35Z
  Generation:          3
  Owner References:
    API Version:     v1
    Kind:            Node
    Name:            ip-10-0-59-172.us-west-1.compute.internal
    UID:             0fdce8f3-b36d-4f0c-a6dd-2fe47fb4d1c8
  Resource Version:  44328
  UID:               2f93aa14-f698-427d-8d9c-fa43d4d28e2d
Spec:
  Config Image:
    Desired Image:  image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image@sha256:b485378fd8f7963ed74f14ce64f4f1e511e1601d49302b3046b1b78a83f539e3
  Config Version:
    Desired:  rendered-worker-d63c7736923b60b8b82492ae9a1eef40
  Node:
    Name:  ip-10-0-59-172.us-west-1.compute.internal
  Pool:
    Name:  worker
Status:
  Conditions:
    Last Transition Time:  2025-10-09T14:24:35Z
    Message:               All pinned image sets complete
    Reason:                AsExpected
    Status:                False
    Type:                  PinnedImageSetsProgressing
    Last Transition Time:  2025-10-09T15:10:31Z
    Message:               Update Compatible. Post Cfg Actions: [] Drain Required: true
    Reason:                UpdatePrepared
    Status:                True
    Type:                  UpdatePrepared
    Last Transition Time:  2025-10-09T15:10:36Z
    Message:               Draining Node as part of update executed phase
    Reason:                Drained
    Status:                Unknown
    Type:                  UpdateExecuted
    Last Transition Time:  2025-10-09T14:34:02Z
    Message:               Action during update to rendered-worker-d63c7736923b60b8b82492ae9a1eef40: Changes do not require a reboot
    Reason:                None
    Status:                False
    Type:                  UpdatePostActionComplete
    Last Transition Time:  2025-10-09T14:26:12Z
    Message:               Action during update to rendered-worker-d63c7736923b60b8b82492ae9a1eef40: Uncordoned Node as part of completing upgrade phase
    Reason:                Uncordoned
    Status:                False
    Type:                  UpdateComplete
    Last Transition Time:  2025-10-09T14:34:02Z
    Message:               Action during update to rendered-worker-d63c7736923b60b8b82492ae9a1eef40: In desired config rendered-worker-d63c7736923b60b8b82492ae9a1eef40. Resumed normal operations. Applying proper annotations.
    Reason:                Resumed
    Status:                False
    Type:                  Resumed
    Last Transition Time:  2025-10-09T15:10:36Z
    Message:               Draining node. The drain will not be complete until desired drainer drain-rendered-worker-d63c7736923b60b8b82492ae9a1eef40 matches current drainer uncordon-rendered-worker-d63c7736923b60b8b82492ae9a1eef40
    Reason:                UpdateExecutedDrained
    Status:                Unknown
    Type:                  Drained
    Last Transition Time:  2025-10-09T14:34:02Z
    Message:               Action during update to rendered-worker-d63c7736923b60b8b82492ae9a1eef40: Applied files and new OS config to node. OS did not need an update. SSH Keys did not need an update
    Reason:                UpdateExecutedAppliedFilesAndOS
    Status:                False
    Type:                  AppliedFilesAndOS
    Last Transition Time:  2025-10-09T14:24:35Z
    Message:               This node has not yet entered the ImagePulledFromRegistry phase
    Reason:                NotYetOccurred
    Status:                False
    Type:                  ImagePulledFromRegistry
    Last Transition Time:  2025-10-09T15:10:36Z
    Message:               Cordoned node. The node is reporting Unschedulable = false
    Reason:                UpdateExecutedCordoned
    Status:                True
    Type:                  Cordoned
    Last Transition Time:  2025-10-09T14:24:35Z
    Message:               This node has not yet entered the RebootedNode phase
    Reason:                NotYetOccurred
    Status:                False
    Type:                  RebootedNode
    Last Transition Time:  2025-10-09T15:10:31Z
    Message:               Node ip-10-0-59-172.us-west-1.compute.internal needs an update
    Reason:                Updated
    Status:                False
    Type:                  Updated
    Last Transition Time:  2025-10-09T14:26:12Z
    Message:               Action during update to rendered-worker-d63c7736923b60b8b82492ae9a1eef40: UnCordoned node. The node is reporting Unschedulable = false
    Reason:                UpdateCompleteUncordoned
    Status:                False
    Type:                  Uncordoned
    Last Transition Time:  2025-10-09T14:33:58Z
    Message:               Node ip-10-0-59-172.us-west-1.compute.internal upgrade succeeded
    Reason:                NodeDegraded
    Status:                False
    Type:                  NodeDegraded
    Last Transition Time:  2025-10-09T14:24:35Z
    Message:               All is good
    Reason:                AsExpected
    Status:                False
    Type:                  PinnedImageSetsDegraded
  Config Image:
    Desired Image:  image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image@sha256:b485378fd8f7963ed74f14ce64f4f1e511e1601d49302b3046b1b78a83f539e3
  Config Version:
    Current:            rendered-worker-d63c7736923b60b8b82492ae9a1eef40
    Desired:            rendered-worker-d63c7736923b60b8b82492ae9a1eef40
  Observed Generation:  4
Events:                 
```
Example MCN after OCB enabled
```
$ oc describe machineconfignode/ip-10-0-14-86.us-west-1.compute.internal
Name:         ip-10-0-14-86.us-west-1.compute.internal
Namespace:    
Labels:       
Annotations:  
API Version:  machineconfiguration.openshift.io/v1
Kind:         MachineConfigNode
Metadata:
  Creation Timestamp:  2025-10-09T14:24:55Z
  Generation:          2
  Owner References:
    API Version:     v1
    Kind:            Node
    Name:            ip-10-0-14-86.us-west-1.compute.internal
    UID:             53b3daf3-78c5-4850-b041-5d535bef4f85
  Resource Version:  44165
  UID:               6cd99611-35ed-4d77-92ee-d23eadbaa339
Spec:
  Config Image:
    Desired Image:  image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image@sha256:b485378fd8f7963ed74f14ce64f4f1e511e1601d49302b3046b1b78a83f539e3
  Config Version:
    Desired:  rendered-worker-d63c7736923b60b8b82492ae9a1eef40
  Node:
    Name:  ip-10-0-14-86.us-west-1.compute.internal
  Pool:
    Name:  worker
Status:
  Conditions:
    Last Transition Time:  2025-10-09T15:10:04Z
    Message:               All pinned image sets complete
    Reason:                AsExpected
    Status:                False
    Type:                  PinnedImageSetsProgressing
    Last Transition Time:  2025-10-09T15:10:25Z
    Message:               Action during update to image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image@sha256:b485378fd8f7963ed74f14ce64f4f1e511e1601d49302b3046b1b78a83f539e3: Update Compatible. Post Cfg Actions: [] Drain Required: true
    Reason:                UpdatePrepared
    Status:                False
    Type:                  UpdatePrepared
    Last Transition Time:  2025-10-09T15:10:25Z
    Message:               Action during update to image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image@sha256:b485378fd8f7963ed74f14ce64f4f1e511e1601d49302b3046b1b78a83f539e3: Updated the Files and OS on disk as a part of the in progress phase
    Reason:                AppliedFilesAndOS
    Status:                False
    Type:                  UpdateExecuted
    Last Transition Time:  2025-10-09T14:34:10Z
    Message:               Action during update to rendered-worker-d63c7736923b60b8b82492ae9a1eef40: Changes do not require a reboot
    Reason:                None
    Status:                False
    Type:                  UpdatePostActionComplete
    Last Transition Time:  2025-10-09T15:10:25Z
    Message:               Action during update to image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image@sha256:b485378fd8f7963ed74f14ce64f4f1e511e1601d49302b3046b1b78a83f539e3: Uncordoned Node as part of completing upgrade phase
    Reason:                Uncordoned
    Status:                False
    Type:                  UpdateComplete
    Last Transition Time:  2025-10-09T15:10:25Z
    Message:               Action during update to image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image@sha256:b485378fd8f7963ed74f14ce64f4f1e511e1601d49302b3046b1b78a83f539e3: In desired config rendered-worker-d63c7736923b60b8b82492ae9a1eef40. Resumed normal operations.
    Reason:                Resumed
    Status:                False
    Type:                  Resumed
    Last Transition Time:  2025-10-09T15:10:25Z
    Message:               Action during update to image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image@sha256:b485378fd8f7963ed74f14ce64f4f1e511e1601d49302b3046b1b78a83f539e3: Drained node. The drain is complete as the desired drainer matches current drainer: drain-rendered-worker-d63c7736923b60b8b82492ae9a1eef40
    Reason:                UpdateExecutedDrained
    Status:                False
    Type:                  Drained
    Last Transition Time:  2025-10-09T15:10:25Z
    Message:               Action during update to image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image@sha256:b485378fd8f7963ed74f14ce64f4f1e511e1601d49302b3046b1b78a83f539e3: Applied files and new OS config to node. OS did  need an update. SSH Keys did not need an update
    Reason:                UpdateExecutedAppliedFilesAndOS
    Status:                False
    Type:                  AppliedFilesAndOS
    Last Transition Time:  2025-10-09T15:10:25Z
    Message:               Action during update to image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image@sha256:b485378fd8f7963ed74f14ce64f4f1e511e1601d49302b3046b1b78a83f539e3: Successfully pulled OS image image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image@sha256:b485378fd8f7963ed74f14ce64f4f1e511e1601d49302b3046b1b78a83f539e3 from registry
    Reason:                ImagePulledFromRegistry
    Status:                False
    Type:                  ImagePulledFromRegistry
    Last Transition Time:  2025-10-09T15:10:25Z
    Message:               Action during update to image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image@sha256:b485378fd8f7963ed74f14ce64f4f1e511e1601d49302b3046b1b78a83f539e3: Cordoned node. The node is reporting Unschedulable = false
    Reason:                UpdateExecutedCordoned
    Status:                False
    Type:                  Cordoned
    Last Transition Time:  2025-10-09T15:10:25Z
    Message:               Action during update to image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image@sha256:b485378fd8f7963ed74f14ce64f4f1e511e1601d49302b3046b1b78a83f539e3: Node has rebooted
    Reason:                RebootedNode
    Status:                False
    Type:                  RebootedNode
    Last Transition Time:  2025-10-09T15:10:25Z
    Message:               Node ip-10-0-14-86.us-west-1.compute.internal Updated
    Reason:                Updated
    Status:                True
    Type:                  Updated
    Last Transition Time:  2025-10-09T15:10:25Z
    Message:               Action during update to image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image@sha256:b485378fd8f7963ed74f14ce64f4f1e511e1601d49302b3046b1b78a83f539e3: UnCordoned node. The node is reporting Unschedulable = true
    Reason:                UpdateCompleteUncordoned
    Status:                False
    Type:                  Uncordoned
    Last Transition Time:  2025-10-09T14:34:06Z
    Message:               Node ip-10-0-14-86.us-west-1.compute.internal upgrade succeeded
    Reason:                NodeDegraded
    Status:                False
    Type:                  NodeDegraded
    Last Transition Time:  2025-10-09T15:10:04Z
    Message:               All is good
    Reason:                AsExpected
    Status:                False
    Type:                  PinnedImageSetsDegraded
  Config Image:
    Current Image:  image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image@sha256:b485378fd8f7963ed74f14ce64f4f1e511e1601d49302b3046b1b78a83f539e3
    Desired Image:  image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image@sha256:b485378fd8f7963ed74f14ce64f4f1e511e1601d49302b3046b1b78a83f539e3
  Config Version:
    Current:            rendered-worker-d63c7736923b60b8b82492ae9a1eef40
    Desired:            rendered-worker-d63c7736923b60b8b82492ae9a1eef40
  Observed Generation:  3
Events:                 
```

OCPBUGS-52302:

  1. Launch a 4.21 cluster with this PR build included. Note that it can be a tech preview cluster, but does not need to be.
launch 4.21,openshift/machine-config-operator#5282 aws
  1. Apply a MachineConfig to trigger a node update.
  2. Track how the desired configs are updated in the MCN's spec and status. The desired config value in the spec should update before the UpdatePrepared condition is True and before the desired config version is updated in the status.
    Example grep to see the necessary fields:
oc describe machineconfignode/<node-name> | grep -E "Config Version|UpdatePrepared" -A 2

- Description for the changelog
MCO-1713: Update MachineConfigNode resource to include on cluster image mode fields; OCPBUGS-52302: Correct timing of desired config being set in MCN spec

@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 Sep 12, 2025
Copy link
Contributor

openshift-ci bot commented Sep 12, 2025

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 openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Sep 12, 2025
@isabella-janssen isabella-janssen changed the title bump(api): update api dependency to commit 2acafd4 MCO-1713: Update MCN flow to include image mode specific fields Sep 12, 2025
@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Sep 12, 2025
@openshift-ci-robot
Copy link
Contributor

openshift-ci-robot commented Sep 12, 2025

@isabella-janssen: This pull request references MCO-1713 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.21.0" version, but no target version was set.

In response to this:

- What I did

  1. Version bump the API to openshift/api@2acafd4 & client-go to openshift/client-go@1bc0cb0.
$ go get github.com/openshift/api@2acafd4d1ed26c67ec29e85715ee1995ae6f1904
$ go mod tidy
$ go get github.com/openshift/client-go@1bc0cb0da03b4bf85cd730124085cb982b66d926
$ go mod tidy
$ go mod vendor
  1. Update MCN flows to add new image-mode specific fields.
  • Spec.ConfigImage.DesiredImage
  • Status.ConfigImage.CurrentImage
  • Status.ConfigImage.DesiredImage
  • Status.Conditions[MachineConfigNodeImagePulledFromRegistry]

- How to verify it

- Description for the changelog

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
Copy link
Contributor

openshift-ci-robot commented Sep 12, 2025

@isabella-janssen: This pull request references MCO-1713 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.21.0" version, but no target version was set.

In response to this:

Note that this is a rebased & slightly modified version of work previously completed by @naseerahkani in #5177.

- What I did

  1. Version bump the API to openshift/api@2acafd4 & client-go to openshift/client-go@1bc0cb0.
$ go get github.com/openshift/api@2acafd4d1ed26c67ec29e85715ee1995ae6f1904
$ go mod tidy
$ go get github.com/openshift/client-go@1bc0cb0da03b4bf85cd730124085cb982b66d926
$ go mod tidy
$ go mod vendor
  1. Update MCN flows to add new image-mode specific fields.
  • Spec.ConfigImage.DesiredImage
  • Status.ConfigImage.CurrentImage
  • Status.ConfigImage.DesiredImage
  • Status.Conditions[MachineConfigNodeImagePulledFromRegistry]

- How to verify it

- Description for the changelog

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
Copy link
Contributor

openshift-ci-robot commented Sep 12, 2025

@isabella-janssen: This pull request references MCO-1713 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.21.0" version, but no target version was set.

In response to this:

Note that this is a rebased & slightly modified version of work previously completed by @naseerahkani in #5177.

- What I did

  1. Version bump the API to openshift/api@2acafd4 & client-go to openshift/client-go@1bc0cb0.
$ go get github.com/openshift/api@2acafd4d1ed26c67ec29e85715ee1995ae6f1904
$ go mod tidy
$ go get github.com/openshift/client-go@1bc0cb0da03b4bf85cd730124085cb982b66d926
$ go mod tidy
$ go mod vendor
    • Assisted by cursor * Update MCN flows to add new image-mode specific fields.
  • Spec.ConfigImage.DesiredImage
  • Status.ConfigImage.CurrentImage
  • Status.ConfigImage.DesiredImage
  • Status.Conditions[MachineConfigNodeImagePulledFromRegistry]

- How to verify it

- Description for the changelog

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
Copy link
Contributor

openshift-ci-robot commented Sep 12, 2025

@isabella-janssen: This pull request references MCO-1713 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.21.0" version, but no target version was set.

In response to this:

Note that this is a rebased & slightly modified version of work previously completed by @naseerahkani in #5177.

- What I did

  1. Version bump the API to openshift/api@2acafd4 & client-go to openshift/client-go@1bc0cb0.
$ go get github.com/openshift/api@2acafd4d1ed26c67ec29e85715ee1995ae6f1904
$ go mod tidy
$ go get github.com/openshift/client-go@1bc0cb0da03b4bf85cd730124085cb982b66d926
$ go mod tidy
$ go mod vendor
  1. Update MCN flows to add new image-mode specific fields. Note that this part of implementation was assisted by cursor.
  • Spec.ConfigImage.DesiredImage
  • Status.ConfigImage.CurrentImage
  • Status.ConfigImage.DesiredImage
  • Status.Conditions[MachineConfigNodeImagePulledFromRegistry]

- How to verify it

- Description for the changelog

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
Copy link
Contributor

openshift-ci-robot commented Sep 24, 2025

@isabella-janssen: This pull request references MCO-1713 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.21.0" version, but no target version was set.

In response to this:

Note that this is a rebased & slightly modified version of work previously completed by @naseerahkani in #5177.

- What I did

  1. Version bump the API to openshift/api@2acafd4 & client-go to openshift/client-go@1bc0cb0.
$ go get github.com/openshift/api@2acafd4d1ed26c67ec29e85715ee1995ae6f1904
$ go mod tidy
$ go get github.com/openshift/client-go@1bc0cb0da03b4bf85cd730124085cb982b66d926
$ go mod tidy
$ go mod vendor
  1. Update MCN flows to add new image-mode specific fields. Note that this part of implementation was assisted by cursor.
  • Spec.ConfigImage.DesiredImage
  • Status.ConfigImage.CurrentImage
  • Status.ConfigImage.DesiredImage
  • Status.Conditions[MachineConfigNodeImagePulledFromRegistry]

- How to verify it

  1. Launch a 4.21 techpreview cluster with this PR included.
  2. Enable On Cluster Image Mode.
  3. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.

- Description for the changelog
MCO-1713: Update MachineConfigNode resource to include on cluster image mode fields

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.

1 similar comment
@openshift-ci-robot
Copy link
Contributor

openshift-ci-robot commented Sep 24, 2025

@isabella-janssen: This pull request references MCO-1713 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.21.0" version, but no target version was set.

In response to this:

Note that this is a rebased & slightly modified version of work previously completed by @naseerahkani in #5177.

- What I did

  1. Version bump the API to openshift/api@2acafd4 & client-go to openshift/client-go@1bc0cb0.
$ go get github.com/openshift/api@2acafd4d1ed26c67ec29e85715ee1995ae6f1904
$ go mod tidy
$ go get github.com/openshift/client-go@1bc0cb0da03b4bf85cd730124085cb982b66d926
$ go mod tidy
$ go mod vendor
  1. Update MCN flows to add new image-mode specific fields. Note that this part of implementation was assisted by cursor.
  • Spec.ConfigImage.DesiredImage
  • Status.ConfigImage.CurrentImage
  • Status.ConfigImage.DesiredImage
  • Status.Conditions[MachineConfigNodeImagePulledFromRegistry]

- How to verify it

  1. Launch a 4.21 techpreview cluster with this PR included.
  2. Enable On Cluster Image Mode.
  3. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.

- Description for the changelog
MCO-1713: Update MachineConfigNode resource to include on cluster image mode fields

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.

@isabella-janssen isabella-janssen changed the title MCO-1713: Update MCN flow to include image mode specific fields MCO-1713: Update MachineConfigNode resource to include on cluster image mode fields Sep 24, 2025
@openshift-ci-robot
Copy link
Contributor

openshift-ci-robot commented Sep 25, 2025

@isabella-janssen: This pull request references MCO-1713 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.21.0" version, but no target version was set.

In response to this:

TODO:

  • Make sure updated flips on config image anno update
  • Make sure image pull condition shows in default condition list (if wanted)
  • Check on OCL disable clearing desired image
  • Check on TODO comments

Note that this is a rebased & slightly modified version of work previously completed by @naseerahkani in #5177.

- What I did

  1. Version bump the API to openshift/api@2acafd4 & client-go to openshift/client-go@1bc0cb0.
$ go get github.com/openshift/api@2acafd4d1ed26c67ec29e85715ee1995ae6f1904
$ go mod tidy
$ go get github.com/openshift/client-go@1bc0cb0da03b4bf85cd730124085cb982b66d926
$ go mod tidy
$ go mod vendor
  1. Update MCN flows to add new image-mode specific fields. Note that this part of implementation was assisted by cursor.
  • Spec.ConfigImage.DesiredImage
  • Status.ConfigImage.CurrentImage
  • Status.ConfigImage.DesiredImage
  • Status.Conditions[MachineConfigNodeImagePulledFromRegistry]

- How to verify it

  1. Launch a 4.21 techpreview cluster with this PR included.
  2. Enable On Cluster Image Mode.
  3. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.

- Description for the changelog
MCO-1713: Update MachineConfigNode resource to include on cluster image mode fields

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
Copy link
Contributor

openshift-ci-robot commented Sep 25, 2025

@isabella-janssen: This pull request references MCO-1713 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.21.0" version, but no target version was set.

In response to this:

TODO:

  • Make sure updated flips on config image anno update
  • Make sure image pull condition shows in default condition list (if wanted)
  • Check on OCL disable clearing desired image
  • Check on TODO comments
  • On OCL enable make sure desired anno does not get get set to not yet set

Note that this is a rebased & slightly modified version of work previously completed by @naseerahkani in #5177.

- What I did

  1. Version bump the API to openshift/api@2acafd4 & client-go to openshift/client-go@1bc0cb0.
$ go get github.com/openshift/api@2acafd4d1ed26c67ec29e85715ee1995ae6f1904
$ go mod tidy
$ go get github.com/openshift/client-go@1bc0cb0da03b4bf85cd730124085cb982b66d926
$ go mod tidy
$ go mod vendor
  1. Update MCN flows to add new image-mode specific fields. Note that this part of implementation was assisted by cursor.
  • Spec.ConfigImage.DesiredImage
  • Status.ConfigImage.CurrentImage
  • Status.ConfigImage.DesiredImage
  • Status.Conditions[MachineConfigNodeImagePulledFromRegistry]

- How to verify it

  1. Launch a 4.21 techpreview cluster with this PR included.
  2. Enable On Cluster Image Mode.
  3. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.

- Description for the changelog
MCO-1713: Update MachineConfigNode resource to include on cluster image mode fields

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
Copy link
Contributor

openshift-ci-robot commented Sep 25, 2025

@isabella-janssen: This pull request references MCO-1713 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.21.0" version, but no target version was set.

In response to this:

TODO:

  • Make sure updated flips on config image anno update
  • Make sure image pull condition shows in default condition list (if wanted)
  • Check on OCL disable clearing desired image
  • Check on TODO comments
  • On OCL enable make sure desired anno does not get get set to not yet set
  • Make sure current image is removed on OCL disable

Note that this is a rebased & slightly modified version of work previously completed by @naseerahkani in #5177.

- What I did

  1. Version bump the API to openshift/api@2acafd4 & client-go to openshift/client-go@1bc0cb0.
$ go get github.com/openshift/api@2acafd4d1ed26c67ec29e85715ee1995ae6f1904
$ go mod tidy
$ go get github.com/openshift/client-go@1bc0cb0da03b4bf85cd730124085cb982b66d926
$ go mod tidy
$ go mod vendor
  1. Update MCN flows to add new image-mode specific fields. Note that this part of implementation was assisted by cursor.
  • Spec.ConfigImage.DesiredImage
  • Status.ConfigImage.CurrentImage
  • Status.ConfigImage.DesiredImage
  • Status.Conditions[MachineConfigNodeImagePulledFromRegistry]

- How to verify it

  1. Launch a 4.21 techpreview cluster with this PR included.
  2. Enable On Cluster Image Mode.
  3. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.

- Description for the changelog
MCO-1713: Update MachineConfigNode resource to include on cluster image mode fields

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
Copy link
Contributor

openshift-ci-robot commented Sep 25, 2025

@isabella-janssen: This pull request references MCO-1713 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.21.0" version, but no target version was set.

In response to this:

TODO:

  • Make sure updated flips on config image anno update
  • Make sure image pull condition shows in default condition list (if wanted)
  • Check on OCL disable clearing desired image
  • Check on TODO comments
  • On OCL enable make sure desired anno does not get get set to not yet set
  • Make sure current image is removed on OCL disable
  • Update the Action during update to rendered-worker-xyz to instead include the reference to the image anno update if its a layered image update.

Note that this is a rebased & slightly modified version of work previously completed by @naseerahkani in #5177.

- What I did

  1. Version bump the API to openshift/api@2acafd4 & client-go to openshift/client-go@1bc0cb0.
$ go get github.com/openshift/api@2acafd4d1ed26c67ec29e85715ee1995ae6f1904
$ go mod tidy
$ go get github.com/openshift/client-go@1bc0cb0da03b4bf85cd730124085cb982b66d926
$ go mod tidy
$ go mod vendor
  1. Update MCN flows to add new image-mode specific fields. Note that this part of implementation was assisted by cursor.
  • Spec.ConfigImage.DesiredImage
  • Status.ConfigImage.CurrentImage
  • Status.ConfigImage.DesiredImage
  • Status.Conditions[MachineConfigNodeImagePulledFromRegistry]

- How to verify it

  1. Launch a 4.21 techpreview cluster with this PR included.
  2. Enable On Cluster Image Mode.
  3. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.

- Description for the changelog
MCO-1713: Update MachineConfigNode resource to include on cluster image mode fields

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
Copy link
Contributor

openshift-ci-robot commented Sep 25, 2025

@isabella-janssen: This pull request references MCO-1713 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.21.0" version, but no target version was set.

In response to this:

TODO:

  • Make sure updated flips on config image anno update
  • Make sure image pull condition shows in default condition list (if wanted)
  • Check on OCL disable clearing desired image
  • Check on TODO comments
  • On OCL enable make sure desired anno does not get get set to not yet set
  • Make sure current image is removed on OCL disable
  • Update the Action during update to rendered-worker-xyz to instead include the reference to the image anno update if its a layered image update.

- Authors

- What I did

  1. Version bump the API to openshift/api@2acafd4 & client-go to openshift/client-go@1bc0cb0.
$ go get github.com/openshift/api@2acafd4d1ed26c67ec29e85715ee1995ae6f1904
$ go mod tidy
$ go get github.com/openshift/client-go@1bc0cb0da03b4bf85cd730124085cb982b66d926
$ go mod tidy
$ go mod vendor
  1. Update MCN flows to add new image-mode specific fields. Note that this part of implementation was assisted by cursor.
  • Spec.ConfigImage.DesiredImage
  • Status.ConfigImage.CurrentImage
  • Status.ConfigImage.DesiredImage
  • Status.Conditions[MachineConfigNodeImagePulledFromRegistry]

- How to verify it

  1. Launch a 4.21 techpreview cluster with this PR included.
  2. Enable On Cluster Image Mode.
  3. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.

- Description for the changelog
MCO-1713: Update MachineConfigNode resource to include on cluster image mode fields

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
Copy link
Contributor

openshift-ci-robot commented Sep 25, 2025

@isabella-janssen: This pull request references MCO-1713 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.21.0" version, but no target version was set.

In response to this:

TODO:

  • Make sure updated flips on config image anno update
  • Make sure image pull condition shows in default condition list (if wanted)
  • Check on OCL disable clearing desired image
  • Check on TODO comments
  • On OCL enable make sure desired anno does not get get set to not yet set
  • Make sure current image is removed on OCL disable
  • Update the Action during update to rendered-worker-xyz to instead include the reference to the image anno update if its a layered image update.

- Authors

- What I did

  1. Version bump the API to openshift/api@2acafd4 & client-go to openshift/client-go@1bc0cb0.
$ go get github.com/openshift/api@2acafd4d1ed26c67ec29e85715ee1995ae6f1904
$ go mod tidy
$ go get github.com/openshift/client-go@1bc0cb0da03b4bf85cd730124085cb982b66d926
$ go mod tidy
$ go mod vendor
  1. Update MCN flows to add new image-mode specific fields. Note that this part of implementation was assisted by cursor.
  • Spec.ConfigImage.DesiredImage
  • Status.ConfigImage.CurrentImage
  • Status.ConfigImage.DesiredImage
  • Status.Conditions[MachineConfigNodeImagePulledFromRegistry]

- How to verify it

  1. Launch a 4.21 techpreview cluster with this PR included.
  2. Enable On Cluster Image Mode.
  3. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.

- Description for the changelog
MCO-1713: Update MachineConfigNode resource to include on cluster image mode fields

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
Copy link
Contributor

openshift-ci-robot commented Sep 26, 2025

@isabella-janssen: This pull request references MCO-1713 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.21.0" version, but no target version was set.

In response to this:

TODO:

  • Make sure updated flips on config image anno update
  • Make sure image pull condition shows in default condition list (if wanted)
  • Check on OCL disable clearing desired image
  • Check on TODO comments
  • On OCL enable make sure desired anno does not get get set to not yet set
  • Make sure current image is removed on OCL disable
  • Update the Action during update to rendered-worker-xyz to instead include the reference to the image anno update if its a layered image update.

- Authors

- What I did

  1. Version bump the API to openshift/api@2acafd4 & client-go to openshift/client-go@1bc0cb0.
$ go get github.com/openshift/api@2acafd4d1ed26c67ec29e85715ee1995ae6f1904
$ go mod tidy
$ go get github.com/openshift/client-go@1bc0cb0da03b4bf85cd730124085cb982b66d926
$ go mod tidy
$ go mod vendor
  1. Update MCN flows to add new image-mode specific fields. Note that this part of implementation was assisted by cursor.
  • Spec.ConfigImage.DesiredImage
  • Status.ConfigImage.CurrentImage
  • Status.ConfigImage.DesiredImage
  • Status.Conditions[MachineConfigNodeImagePulledFromRegistry]

- How to verify it

  1. Launch a 4.21 techpreview cluster with this PR included.
launch 4.21,openshift/machine-config-operator#5282 aws,techpreview
  1. Enable On Cluster Image Mode.
$ oc create -f - << EOF           
apiVersion: machineconfiguration.openshift.io/v1
kind: MachineOSConfig
metadata:
 name: worker
spec:
 machineConfigPool:
   name: worker
 imageBuilder:
   imageBuilderType: Job
 renderedImagePushSecret:
   name: $(oc get -n openshift-machine-config-operator sa builder -ojsonpath='{.secrets[0].name}')
 renderedImagePushSpec: "image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image:latest"
EOF
  1. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.
  • The columns in the outputs for oc get machineconfignode -w and oc get machineconfignode -o wide -w should properly update during the OCB enablement.
  • The new MCN fields should be correctly populated.
    • During the OCB rollout, the desired image annotation should be set at the beginning of the node update before the current image annotation is set.
    • Once OCB is fully enabled on a node, the node should be considered "Updated" and the desired and current image annotation values should be set appropriately.
  1. Disable On Cluster Image Mode.
oc delete machineosconfig/worker
  1. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.
  • The columns in the outputs for oc get machineconfignode -w and oc get machineconfignode -o wide -w should properly update during the OCB disabling process.
  • The new MCN fields should be correctly populated.
    • During the OCB disabling, the desired image annotation should be removed at the beginning of the node update before the current image annotation is removed.
    • Once OCB is fully disabled on a node, the node should be considered "Updated" and the desired and current image annotation values should be removed in both the MCN Spec and Status.

- Description for the changelog
MCO-1713: Update MachineConfigNode resource to include on cluster image mode fields

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
Copy link
Contributor

openshift-ci-robot commented Sep 29, 2025

@isabella-janssen: This pull request references MCO-1713 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.21.0" version, but no target version was set.

In response to this:

TODO:

  • Make sure updated flips on config image anno update
  • Make sure image pull condition shows in default condition list (if wanted)
  • Check on OCL disable clearing desired image
  • Check on TODO comments
  • On OCL enable make sure desired anno does not get get set to not yet set
  • Make sure current image is removed on OCL disable
  • Update the Action during update to rendered-worker-xyz to instead include the reference to the image anno update if its a layered image update.
  • Make sure desired image is removed from spec immediately

- Authors

- What I did

  1. Version bump the API to openshift/api@2acafd4 & client-go to openshift/client-go@1bc0cb0.
$ go get github.com/openshift/api@2acafd4d1ed26c67ec29e85715ee1995ae6f1904
$ go mod tidy
$ go get github.com/openshift/client-go@1bc0cb0da03b4bf85cd730124085cb982b66d926
$ go mod tidy
$ go mod vendor
  1. Update MCN flows to add new image-mode specific fields. Note that this part of implementation was assisted by cursor.
  • Spec.ConfigImage.DesiredImage
  • Status.ConfigImage.CurrentImage
  • Status.ConfigImage.DesiredImage
  • Status.Conditions[MachineConfigNodeImagePulledFromRegistry]

- How to verify it

  1. Launch a 4.21 techpreview cluster with this PR included.
launch 4.21,openshift/machine-config-operator#5282 aws,techpreview
  1. Enable On Cluster Image Mode.
$ oc create -f - << EOF           
apiVersion: machineconfiguration.openshift.io/v1
kind: MachineOSConfig
metadata:
 name: worker
spec:
 machineConfigPool:
   name: worker
 imageBuilder:
   imageBuilderType: Job
 renderedImagePushSecret:
   name: $(oc get -n openshift-machine-config-operator sa builder -ojsonpath='{.secrets[0].name}')
 renderedImagePushSpec: "image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image:latest"
EOF
  1. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.
  • The columns in the outputs for oc get machineconfignode -w and oc get machineconfignode -o wide -w should properly update during the OCB enablement.
  • The new MCN fields should be correctly populated.
    • During the OCB rollout, the desired image annotation should be set at the beginning of the node update before the current image annotation is set.
    • Once OCB is fully enabled on a node, the node should be considered "Updated" and the desired and current image annotation values should be set appropriately.
  1. Disable On Cluster Image Mode.
oc delete machineosconfig/worker
  1. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.
  • The columns in the outputs for oc get machineconfignode -w and oc get machineconfignode -o wide -w should properly update during the OCB disabling process.
  • The new MCN fields should be correctly populated.
    • During the OCB disabling, the desired image annotation should be removed at the beginning of the node update before the current image annotation is removed.
    • Once OCB is fully disabled on a node, the node should be considered "Updated" and the desired and current image annotation values should be removed in both the MCN Spec and Status.

- Description for the changelog
MCO-1713: Update MachineConfigNode resource to include on cluster image mode fields

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.

@isabella-janssen
Copy link
Member Author

/payload-job periodic-ci-openshift-release-master-ci-4.21-e2e-aws-ovn-techpreview-serial-1of3 periodic-ci-openshift-release-master-ci-4.21-e2e-aws-ovn-techpreview-serial-2of3 periodic-ci-openshift-release-master-ci-4.21-e2e-aws-ovn-techpreview-serial-3of3 payload-job periodic-ci-openshift-release-master-ci-4.21-e2e-gcp-ovn-techpreview-serial

Copy link
Contributor

openshift-ci bot commented Sep 29, 2025

@isabella-janssen: trigger 4 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command

  • periodic-ci-openshift-release-master-ci-4.21-e2e-aws-ovn-techpreview-serial-1of3
  • periodic-ci-openshift-release-master-ci-4.21-e2e-aws-ovn-techpreview-serial-2of3
  • periodic-ci-openshift-release-master-ci-4.21-e2e-aws-ovn-techpreview-serial-3of3
  • periodic-ci-openshift-release-master-ci-4.21-e2e-gcp-ovn-techpreview-serial

See details on https://pr-payload-tests.ci.openshift.org/runs/ci/6020a8e0-9d6b-11f0-88e9-55df9f5437a6-0

@openshift-ci-robot
Copy link
Contributor

openshift-ci-robot commented Sep 30, 2025

@isabella-janssen: This pull request references MCO-1713 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.21.0" version, but no target version was set.

In response to this:

TODO:

  • Make sure updated flips on config image anno update
  • Make sure image pull condition shows in default condition list (if wanted)
  • Check on OCL disable clearing desired image
  • Check on TODO comments
  • On OCL enable make sure desired anno does not get get set to not yet set
  • Make sure current image is removed on OCL disable
  • Update the Action during update to rendered-worker-xyz to instead include the reference to the image anno update if its a layered image update.
  • Make sure desired image is removed from spec immediately
  • Question: ImagePulledFromRegistry is not removed on OCL disable currently. Do we want to remove it when OCL is disabled or keep it for history?

- Authors

- What I did

  1. Version bump the API to openshift/api@2acafd4 & client-go to openshift/client-go@1bc0cb0.
$ go get github.com/openshift/api@2acafd4d1ed26c67ec29e85715ee1995ae6f1904
$ go mod tidy
$ go get github.com/openshift/client-go@1bc0cb0da03b4bf85cd730124085cb982b66d926
$ go mod tidy
$ go mod vendor
  1. Update MCN flows to add new image-mode specific fields. Note that this part of implementation was assisted by cursor.
  • Spec.ConfigImage.DesiredImage
  • Status.ConfigImage.CurrentImage
  • Status.ConfigImage.DesiredImage
  • Status.Conditions[MachineConfigNodeImagePulledFromRegistry]

- How to verify it

  1. Launch a 4.21 techpreview cluster with this PR included.
launch 4.21,openshift/machine-config-operator#5282 aws,techpreview
  1. Enable On Cluster Image Mode.
$ oc create -f - << EOF           
apiVersion: machineconfiguration.openshift.io/v1
kind: MachineOSConfig
metadata:
 name: worker
spec:
 machineConfigPool:
   name: worker
 imageBuilder:
   imageBuilderType: Job
 renderedImagePushSecret:
   name: $(oc get -n openshift-machine-config-operator sa builder -ojsonpath='{.secrets[0].name}')
 renderedImagePushSpec: "image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image:latest"
EOF
  1. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.
  • The columns in the outputs for oc get machineconfignode -w and oc get machineconfignode -o wide -w should properly update during the OCB enablement.
  • The new MCN fields should be correctly populated.
    • During the OCB rollout, the desired image annotation should be set at the beginning of the node update before the current image annotation is set.
    • Once OCB is fully enabled on a node, the node should be considered "Updated" and the desired and current image annotation values should be set appropriately.
  1. Disable On Cluster Image Mode.
oc delete machineosconfig/worker
  1. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.
  • The columns in the outputs for oc get machineconfignode -w and oc get machineconfignode -o wide -w should properly update during the OCB disabling process.
  • The new MCN fields should be correctly populated.
    • During the OCB disabling, the desired image annotation should be removed at the beginning of the node update before the current image annotation is removed.
    • Once OCB is fully disabled on a node, the node should be considered "Updated" and the desired and current image annotation values should be removed in both the MCN Spec and Status.

- Description for the changelog
MCO-1713: Update MachineConfigNode resource to include on cluster image mode fields

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-merge-robot openshift-merge-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Oct 1, 2025
@openshift-merge-robot openshift-merge-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Oct 1, 2025
@openshift-ci-robot
Copy link
Contributor

@isabella-janssen: This pull request references Jira Issue OCPBUGS-52302, which is invalid:

  • expected the bug to target either version "4.21." or "openshift-4.21.", but it targets "4.20.0" instead

Comment /jira refresh to re-evaluate validity if changes to the Jira bug are made, or edit the title of this pull request to link to a different bug.

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

In response to this:

- Authors

- What I did

  1. Version bump the API to openshift/api@2acafd4 & client-go to openshift/client-go@1bc0cb0.
$ go get github.com/openshift/api@2acafd4d1ed26c67ec29e85715ee1995ae6f1904
$ go mod tidy
$ go get github.com/openshift/client-go@1bc0cb0da03b4bf85cd730124085cb982b66d926
$ go mod tidy
$ go mod vendor
  1. Update MCN flows to add new image-mode specific fields. Note that this part of implementation was assisted by cursor.
  • Spec.ConfigImage.DesiredImage
  • Status.ConfigImage.CurrentImage
  • Status.ConfigImage.DesiredImage
  • Status.Conditions[MachineConfigNodeImagePulledFromRegistry]

- How to verify it

  1. Launch a 4.21 techpreview cluster with this PR included.
launch 4.21,openshift/machine-config-operator#5282 aws,techpreview
  1. Enable On Cluster Image Mode.
$ oc create -f - << EOF           
apiVersion: machineconfiguration.openshift.io/v1
kind: MachineOSConfig
metadata:
 name: worker
spec:
 machineConfigPool:
   name: worker
 imageBuilder:
   imageBuilderType: Job
 renderedImagePushSecret:
   name: $(oc get -n openshift-machine-config-operator sa builder -ojsonpath='{.secrets[0].name}')
 renderedImagePushSpec: "image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image:latest"
EOF
  1. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.
  • The columns in the outputs for oc get machineconfignode -w and oc get machineconfignode -o wide -w should properly update during the OCB enablement. See this thread for more details on the intended experience.
  • The new MCN fields should be correctly populated.
    • During the OCB rollout, the desired image annotation should be set at the beginning of the node update before the current image annotation is set.
    • Once OCB is fully enabled on a node, the node should be considered "Updated" and the desired and current image annotation values should be set appropriately.
  1. Disable On Cluster Image Mode.
oc delete machineosconfig/worker
  1. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.
  • The columns in the outputs for oc get machineconfignode -w and oc get machineconfignode -o wide -w should properly update during the OCB disabling process. See this thread for more details on the intended experience.
  • The new MCN fields should be correctly populated.
    • During the OCB disabling, the desired image annotation should be removed at the beginning of the node update before the current image annotation is removed.
    • Once OCB is fully disabled on a node, the node should be considered "Updated" and the desired and current image annotation values should be removed in both the MCN Spec and Status.

- Description for the changelog
MCO-1713: Update MachineConfigNode resource to include on cluster image mode fields

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.

@isabella-janssen
Copy link
Member Author

/jira refresh

@openshift-ci-robot openshift-ci-robot added jira/valid-bug Indicates that a referenced Jira bug is valid for the branch this PR is targeting. and removed jira/invalid-bug Indicates that a referenced Jira bug is invalid for the branch this PR is targeting. labels Oct 2, 2025
@openshift-ci-robot
Copy link
Contributor

@isabella-janssen: This pull request references Jira Issue OCPBUGS-52302, 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.21.0) matches configured target version for branch (4.21.0)
  • bug is in the state ASSIGNED, which is one of the valid states (NEW, ASSIGNED, POST)

Requesting review from QA contact:
/cc @sergiordlr

In response to this:

/jira refresh

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
Copy link
Contributor

openshift-ci-robot commented Oct 3, 2025

@isabella-janssen: This pull request references Jira Issue OCPBUGS-52302, which is valid.

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

Requesting review from QA contact:
/cc @sergiordlr

In response to this:

- Authors

- What I did

  1. Version bump the API to openshift/api@2acafd4 & client-go to openshift/client-go@1bc0cb0.
$ go get github.com/openshift/api@2acafd4d1ed26c67ec29e85715ee1995ae6f1904
$ go mod tidy
$ go get github.com/openshift/client-go@1bc0cb0da03b4bf85cd730124085cb982b66d926
$ go mod tidy
$ go mod vendor
  1. Update MCN flows to add new image-mode specific fields. Note that this part of implementation was assisted by cursor.
  • Spec.ConfigImage.DesiredImage
  • Status.ConfigImage.CurrentImage
  • Status.ConfigImage.DesiredImage
  • Status.Conditions[MachineConfigNodeImagePulledFromRegistry]

- How to verify it
_ MCO-1713:_

  1. Launch a 4.21 techpreview cluster with this PR included.
launch 4.21,openshift/machine-config-operator#5282 aws,techpreview
  1. Enable On Cluster Image Mode.
$ oc create -f - << EOF           
apiVersion: machineconfiguration.openshift.io/v1
kind: MachineOSConfig
metadata:
 name: worker
spec:
 machineConfigPool:
   name: worker
 imageBuilder:
   imageBuilderType: Job
 renderedImagePushSecret:
   name: $(oc get -n openshift-machine-config-operator sa builder -ojsonpath='{.secrets[0].name}')
 renderedImagePushSpec: "image-registry.openshift-image-registry.svc:5000/openshift-machine-config-operator/ocb-image:latest"
EOF
  1. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.
  • The columns in the outputs for oc get machineconfignode -w and oc get machineconfignode -o wide -w should properly update during the OCB enablement. See this thread for more details on the intended experience.
  • The new MCN fields should be correctly populated.
    • During the OCB rollout, the desired image annotation should be set at the beginning of the node update before the current image annotation is set.
    • Once OCB is fully enabled on a node, the node should be considered "Updated" and the desired and current image annotation values should be set appropriately.
  1. Disable On Cluster Image Mode.
oc delete machineosconfig/worker
  1. Check the MachineConfigNode resources for the nodes where image mode was enabled to ensure the conditions were properly populated.
  • The columns in the outputs for oc get machineconfignode -w and oc get machineconfignode -o wide -w should properly update during the OCB disabling process. See this thread for more details on the intended experience.
  • The new MCN fields should be correctly populated.
    • During the OCB disabling, the desired image annotation should be removed at the beginning of the node update before the current image annotation is removed.
    • Once OCB is fully disabled on a node, the node should be considered "Updated" and the desired and current image annotation values should be removed in both the MCN Spec and Status.

_ OCPBUGS-52302:_

  1. Launch a 4.21 cluster with this PR build included. Note that it can be a tech preview cluster, but does not need to be.
launch 4.21,openshift/machine-config-operator#5282 aws
  1. Apply a MachineConfig to trigger a node update.
  2. Track how the desired configs are updated in the MCN's spec and status. The desired config value in the spec should update before the UpdatePrepared condition is True and before the desired config version is updated in the status.
    Example grep to see the necessary fields:
oc describe machineconfignode/<node-name> | grep -E "Config Version|UpdatePrepared" -A 2

- Description for the changelog
MCO-1713: Update MachineConfigNode resource to include on cluster image mode fields

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.

@isabella-janssen isabella-janssen marked this pull request as ready for review October 3, 2025 14:58
@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 Oct 3, 2025
Copy link
Contributor

@yuqi-zhang yuqi-zhang left a comment

Choose a reason for hiding this comment

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

Overall lgtm, just some questions inline

@isabella-janssen isabella-janssen force-pushed the mco-1713 branch 4 times, most recently from 9b039e7 to 510d49a Compare October 9, 2025 18:17
Copy link
Contributor

openshift-ci bot commented Oct 9, 2025

@isabella-janssen: 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/e2e-aws-mco-disruptive e954068 link false /test e2e-aws-mco-disruptive
ci/prow/e2e-gcp-op-ocl e954068 link false /test e2e-gcp-op-ocl
ci/prow/e2e-azure-ovn-upgrade-out-of-change e954068 link false /test e2e-azure-ovn-upgrade-out-of-change
ci/prow/bootstrap-unit 510d49a link false /test bootstrap-unit

Full PR test history. Your PR dashboard.

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.

@isabella-janssen
Copy link
Member Author

/payload-job periodic-ci-openshift-machine-config-operator-release-4.21-periodics-e2e-aws-mco-disruptive-techpreview periodic-ci-openshift-release-master-ci-4.21-e2e-aws-ovn-techpreview-serial-1of3 periodic-ci-openshift-release-master-ci-4.21-e2e-aws-ovn-techpreview-serial-2of3 periodic-ci-openshift-release-master-ci-4.21-e2e-aws-ovn-techpreview-serial-3of3

Copy link
Contributor

openshift-ci bot commented Oct 9, 2025

@isabella-janssen: trigger 4 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command

  • periodic-ci-openshift-machine-config-operator-release-4.21-periodics-e2e-aws-mco-disruptive-techpreview
  • periodic-ci-openshift-release-master-ci-4.21-e2e-aws-ovn-techpreview-serial-1of3
  • periodic-ci-openshift-release-master-ci-4.21-e2e-aws-ovn-techpreview-serial-2of3
  • periodic-ci-openshift-release-master-ci-4.21-e2e-aws-ovn-techpreview-serial-3of3

See details on https://pr-payload-tests.ci.openshift.org/runs/ci/d5fdefb0-a549-11f0-917c-7207398bfc3c-0

Copy link
Contributor

@yuqi-zhang yuqi-zhang left a comment

Choose a reason for hiding this comment

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

/lgtm

No other concerns on my end, happy to get this in once verified

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Oct 9, 2025
Copy link
Contributor

openshift-ci bot commented Oct 9, 2025

[APPROVALNOTIFIER] This PR is APPROVED

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

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:
  • OWNERS [isabella-janssen,yuqi-zhang]

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

return nil
}

//nolint:gocyclo
Copy link
Contributor

Choose a reason for hiding this comment

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

unrelated tou your chang and not blocker: This nolint (and the one in generateAndApplyMachineConfigNodes) is relevant, upgrade_monitor is, at least IMHO (and some basic software metrics, like cyclomatic complexity, maximum annidation, max method/function length, max number of parameters, etc), unmaintanable. As a new team member reading that code for the first time, I felt really unconfident interpreting it and I'd feel like that if I need to touch or interact with it.
I'm not 100% how the golang linter computes cyclomatic complexity and maybe this new nolint is only required because the extra ifs required to evaluate the FeatureGate.

Copy link
Member Author

Choose a reason for hiding this comment

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

I agree with your thoughts here. I've created MCO-1902 to track this need and make sure it does not get lost. Thanks for bringing this up!

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/severity-moderate Referenced Jira bug's severity is moderate for the branch this PR is targeting. 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.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants