--- apiVersion: v1 items: - apiVersion: v1 kind: Pod metadata: annotations: k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.133.0.10/23"],"mac_address":"0a:58:0a:85:00:0a","gateway_ips":["10.133.0.1"],"routes":[{"dest":"10.132.0.0/14","nextHop":"10.133.0.1"},{"dest":"172.31.0.0/16","nextHop":"10.133.0.1"},{"dest":"169.254.0.5/32","nextHop":"10.133.0.1"},{"dest":"100.64.0.0/16","nextHop":"10.133.0.1"}],"ip_address":"10.133.0.10/23","gateway_ip":"10.133.0.1","role":"primary"}}' k8s.v1.cni.cncf.io/network-status: |- [{ "name": "ovn-kubernetes", "interface": "eth0", "ips": [ "10.133.0.10" ], "mac": "0a:58:0a:85:00:0a", "default": true, "dns": {} }] openshift.io/required-scc: nonroot-v2 openshift.io/scc: nonroot-v2 seccomp.security.alpha.kubernetes.io/pod: runtime/default security.openshift.io/validated-scc-subject-type: serviceaccount creationTimestamp: "2026-07-10T15:55:56Z" generateName: migrator-7f59b54f6c- generation: 1 labels: app: migrator pod-template-hash: 7f59b54f6c managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: ip-10-0-129-101 operation: Update subresource: status time: "2026-07-10T15:55:56Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:openshift.io/required-scc: {} f:target.workload.openshift.io/management: {} f:generateName: {} f:labels: .: {} f:app: {} f:pod-template-hash: {} f:ownerReferences: .: {} k:{"uid":"33f121f6-1e09-4986-b2f4-5ad5a1a9de6c"}: {} f:spec: f:containers: k:{"name":"graceful-termination"}: .: {} f:args: {} f:command: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:resources: .: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:runAsUser: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} k:{"name":"migrator"}: .: {} f:args: {} f:command: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:resources: .: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:runAsUser: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:priorityClassName: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: .: {} f:runAsNonRoot: {} f:seccompProfile: .: {} f:type: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:tolerations: {} manager: kube-controller-manager operation: Update time: "2026-07-10T15:55:56Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.v1.cni.cncf.io/network-status: {} manager: multus-daemon operation: Update subresource: status time: "2026-07-10T15:55:56Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:status: f:conditions: k:{"type":"ContainersReady"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"Initialized"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodReadyToStartContainers"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodScheduled"}: f:observedGeneration: {} k:{"type":"Ready"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} f:containerStatuses: {} f:hostIP: {} f:hostIPs: {} f:observedGeneration: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"10.133.0.10"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-07-10T15:55:58Z" name: migrator-7f59b54f6c-n5ppz namespace: openshift-kube-storage-version-migrator ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: migrator-7f59b54f6c uid: 33f121f6-1e09-4986-b2f4-5ad5a1a9de6c resourceVersion: "7633" uid: 436e585c-0f4c-49a0-a6b0-d9a7eed47fab spec: containers: - args: - |- trap 'echo "Termination signal received, but ignored. Continuing..."; sleep infinity' TERM migrator "$@" & wait $! - bash - --alsologtostderr - --v=2 command: - /bin/bash - -c image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:0f431ac34bb1fe40243d25c2f76cea7ea45217400278652982693fa633be0461 imagePullPolicy: IfNotPresent name: migrator resources: requests: cpu: 10m memory: 200Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL runAsUser: 1001 terminationMessagePath: /dev/termination-log terminationMessagePolicy: FallbackToLogsOnError volumeMounts: - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-jgq6s readOnly: true - args: - |- trap 'echo "Gracefully sleeping for 25s to let another pod start..."; sleep 25; exit' EXIT while true; do echo "Waiting for termination..."; sleep 3600 & wait $!; done command: - /bin/bash - -c image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:0f431ac34bb1fe40243d25c2f76cea7ea45217400278652982693fa633be0461 imagePullPolicy: IfNotPresent name: graceful-termination resources: requests: cpu: 1m memory: 1Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL runAsUser: 1001 terminationMessagePath: /dev/termination-log terminationMessagePolicy: FallbackToLogsOnError volumeMounts: - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-jgq6s readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true imagePullSecrets: - name: kube-storage-version-migrator-sa-dockercfg-k2dcf nodeName: ip-10-0-129-101.ec2.internal preemptionPolicy: PreemptLowerPriority priority: 2000000000 priorityClassName: system-cluster-critical restartPolicy: Always schedulerName: default-scheduler securityContext: runAsNonRoot: true seLinuxOptions: level: s0:c25,c10 seccompProfile: type: RuntimeDefault serviceAccount: kube-storage-version-migrator-sa serviceAccountName: kube-storage-version-migrator-sa terminationGracePeriodSeconds: 30 tolerations: - effect: NoSchedule key: node-role.kubernetes.io/master operator: Exists - effect: NoExecute key: node.kubernetes.io/unreachable operator: Exists tolerationSeconds: 120 - effect: NoExecute key: node.kubernetes.io/not-ready operator: Exists tolerationSeconds: 120 - effect: NoSchedule key: node.kubernetes.io/memory-pressure operator: Exists volumes: - name: kube-api-access-jgq6s projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace - configMap: items: - key: service-ca.crt path: service-ca.crt name: openshift-service-ca.crt status: conditions: - lastProbeTime: null lastTransitionTime: "2026-07-10T15:55:58Z" observedGeneration: 1 status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-07-10T15:55:56Z" observedGeneration: 1 status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-07-10T15:55:58Z" observedGeneration: 1 status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-07-10T15:55:58Z" observedGeneration: 1 status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-07-10T15:55:56Z" observedGeneration: 1 status: "True" type: PodScheduled containerStatuses: - allocatedResources: cpu: 1m memory: 1Mi containerID: cri-o://7c56629ca9db66b07a27f5c1cd4e45cc22e62378e1ad06954bff43efe614cf66 image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:0f431ac34bb1fe40243d25c2f76cea7ea45217400278652982693fa633be0461 imageID: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:0f431ac34bb1fe40243d25c2f76cea7ea45217400278652982693fa633be0461 lastState: {} name: graceful-termination ready: true resources: requests: cpu: 1m memory: 1Mi restartCount: 0 started: true state: running: startedAt: "2026-07-10T15:55:58Z" user: linux: gid: 0 supplementalGroups: - 0 uid: 1001 volumeMounts: - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-jgq6s readOnly: true recursiveReadOnly: Disabled - allocatedResources: cpu: 10m memory: 200Mi containerID: cri-o://a4ea0910b8a085cbed2ca5462e9337fe55eeff643c09687bbb47aef4b38ff029 image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:0f431ac34bb1fe40243d25c2f76cea7ea45217400278652982693fa633be0461 imageID: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:0f431ac34bb1fe40243d25c2f76cea7ea45217400278652982693fa633be0461 lastState: {} name: migrator ready: true resources: requests: cpu: 10m memory: 200Mi restartCount: 0 started: true state: running: startedAt: "2026-07-10T15:55:58Z" user: linux: gid: 0 supplementalGroups: - 0 uid: 1001 volumeMounts: - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-jgq6s readOnly: true recursiveReadOnly: Disabled hostIP: 10.0.129.101 hostIPs: - ip: 10.0.129.101 observedGeneration: 1 phase: Running podIP: 10.133.0.10 podIPs: - ip: 10.133.0.10 qosClass: Burstable startTime: "2026-07-10T15:55:56Z" kind: PodList metadata: resourceVersion: "54272"