Objective: Verify that repeated reconciles with the same annotation value do not cause pod flapping.
Cluster: brcox-88531-hc on Azure dev mgmt cluster — HCP namespace: clusters-brcox-88531-hc
Release image: registry.build10.ci.openshift.org/ci-ln-1qhpr62/release:latest (CNO PR #3030 + HyperShift PR #8751)
Note: The annotation was already set to 2026-06-17T11:43:15Z during Scenario 2. This test re-applies the same value and verifies no new rollout.
| Step | Check | Result | Evidence |
|---|---|---|---|
| 1 | Record current pod state (post-Scenario 2 restart) | PASS | All 4 operands at gen 2, restart-date 2026-06-17T11:43:15Z |
| 2 | Re-apply same restart-date annotation value | PASS | Re-applied 2026-06-17T11:43:15Z with --overwrite |
| 3 | Wait 3+ minutes (CNO reconcile cycle) | PASS | Waited 11:49:25Z → 11:52:45Z (3m20s, >1 CNO reconcile cycle) |
| 4 | Pods have NOT restarted again | PASS | All 4 pods same name, timestamp, gen still 2; no new ReplicaSets |
$ oc get deployment -n clusters-brcox-88531-hc \
cloud-network-config-controller multus-admission-controller \
network-node-identity ovnkube-control-plane \
-o jsonpath='{range .items[*]}Deployment: {.metadata.name} gen: {.metadata.generation} restart-date: {.spec.template.metadata.annotations.hypershift\.openshift\.io/restart-date}
{end}'
Deployment: cloud-network-config-controller gen: 2 restart-date: 2026-06-17T11:43:15Z
Deployment: multus-admission-controller gen: 2 restart-date: 2026-06-17T11:43:15Z
Deployment: network-node-identity gen: 2 restart-date: 2026-06-17T11:43:15Z
Deployment: ovnkube-control-plane gen: 2 restart-date: 2026-06-17T11:43:15Z
$ oc get pods -n clusters-brcox-88531-hc \
-o custom-columns='NAME:.metadata.name,CREATED:.metadata.creationTimestamp' \
| grep -E "multus|network-node-identity|ovnkube-control-plane|cloud-network-config"
cloud-network-config-controller-76dd98d985-k6zvs 2026-06-17T11:45:28Z
multus-admission-controller-5fd559d858-75t5j 2026-06-17T11:45:35Z
network-node-identity-85d874994d-pd9ks 2026-06-17T11:45:50Z
ovnkube-control-plane-7dbccb64d4-g8stz 2026-06-17T11:45:44Z
$ oc annotate hostedcluster -n clusters brcox-88531-hc \
'hypershift.openshift.io/restart-date=2026-06-17T11:43:15Z' --overwrite
hostedcluster.hypershift.openshift.io/brcox-88531-hc annotated
$ oc get deployment -n clusters-brcox-88531-hc \
cloud-network-config-controller multus-admission-controller \
network-node-identity ovnkube-control-plane \
-o jsonpath='{range .items[*]}Deployment: {.metadata.name} gen: {.metadata.generation} restart-date: {.spec.template.metadata.annotations.hypershift\.openshift\.io/restart-date}
{end}'
Deployment: cloud-network-config-controller gen: 2 restart-date: 2026-06-17T11:43:15Z
Deployment: multus-admission-controller gen: 2 restart-date: 2026-06-17T11:43:15Z
Deployment: network-node-identity gen: 2 restart-date: 2026-06-17T11:43:15Z
Deployment: ovnkube-control-plane gen: 2 restart-date: 2026-06-17T11:43:15Z
$ oc get pods -n clusters-brcox-88531-hc \
-o custom-columns='NAME:.metadata.name,READY:.status.containerStatuses[0].ready,RESTARTS:.status.containerStatuses[0].restartCount,CREATED:.metadata.creationTimestamp' \
| grep -E "multus|network-node-identity|ovnkube-control-plane|cloud-network-config"
cloud-network-config-controller-76dd98d985-k6zvs true 0 2026-06-17T11:45:28Z
multus-admission-controller-5fd559d858-75t5j true 0 2026-06-17T11:45:35Z
network-node-identity-85d874994d-pd9ks true 0 2026-06-17T11:45:50Z
ovnkube-control-plane-7dbccb64d4-g8stz true 0 2026-06-17T11:45:44Z
# All 4 pods UNCHANGED after re-applying the same restart-date value.
# Generations still 2, no new ReplicaSets created.
# Idempotent behavior confirmed.
$ oc get rs -n clusters-brcox-88531-hc \
-o custom-columns='NAME:.metadata.name,DESIRED:.spec.replicas,CURRENT:.status.replicas,READY:.status.readyReplicas,CREATED:.metadata.creationTimestamp' \
| grep -E "multus|network-node-identity|ovnkube-control-plane|cloud-network-config"
cloud-network-config-controller-5c7997f74f 0 0 <none> 2026-06-17T11:13:20Z
cloud-network-config-controller-76dd98d985 1 1 1 2026-06-17T11:45:28Z
multus-admission-controller-5fd559d858 1 1 1 2026-06-17T11:45:35Z
multus-admission-controller-6d7b6dfc49 0 0 <none> 2026-06-17T11:13:27Z
network-node-identity-85d874994d 1 1 1 2026-06-17T11:45:50Z
network-node-identity-b5d5546d8 0 0 <none> 2026-06-17T11:13:42Z
ovnkube-control-plane-6c56d86876 0 0 <none> 2026-06-17T11:13:36Z
ovnkube-control-plane-7dbccb64d4 1 1 1 2026-06-17T11:45:44Z