From 6c01886662a4af8b979243a0da6e344279de1a62 Mon Sep 17 00:00:00 2001 From: Ben Perry Date: Wed, 22 Apr 2026 17:03:37 -0500 Subject: [PATCH] NodeUID in status to detect replaced node with same name --- openapi/generated_openapi/zz_generated.openapi.go | 7 +++++++ openapi/openapi.json | 4 ++++ operator/v1/types.go | 12 ++++++++++++ .../0000_12_etcd_01_etcds-CustomNoUpgrade.crd.yaml | 12 ++++++++++++ .../0000_12_etcd_01_etcds-Default.crd.yaml | 12 ++++++++++++ ...000_12_etcd_01_etcds-DevPreviewNoUpgrade.crd.yaml | 12 ++++++++++++ .../0000_12_etcd_01_etcds-OKD.crd.yaml | 12 ++++++++++++ ...00_12_etcd_01_etcds-TechPreviewNoUpgrade.crd.yaml | 12 ++++++++++++ ...server_01_kubeapiservers-CustomNoUpgrade.crd.yaml | 12 ++++++++++++ ...kube-apiserver_01_kubeapiservers-Default.crd.yaml | 12 ++++++++++++ ...er_01_kubeapiservers-DevPreviewNoUpgrade.crd.yaml | 12 ++++++++++++ ..._20_kube-apiserver_01_kubeapiservers-OKD.crd.yaml | 12 ++++++++++++ ...r_01_kubeapiservers-TechPreviewNoUpgrade.crd.yaml | 12 ++++++++++++ ...roller-manager_01_kubecontrollermanagers.crd.yaml | 12 ++++++++++++ ...0000_25_kube-scheduler_01_kubeschedulers.crd.yaml | 12 ++++++++++++ .../etcds.operator.openshift.io/AAA_ungated.yaml | 12 ++++++++++++ .../EtcdBackendQuota.yaml | 12 ++++++++++++ .../AAA_ungated.yaml | 12 ++++++++++++ .../EventTTL.yaml | 12 ++++++++++++ .../KMSEncryption.yaml | 12 ++++++++++++ .../AAA_ungated.yaml | 12 ++++++++++++ .../AAA_ungated.yaml | 12 ++++++++++++ operator/v1/zz_generated.swagger_doc_generated.go | 1 + .../0000_12_etcd_01_etcds-CustomNoUpgrade.crd.yaml | 12 ++++++++++++ .../crds/0000_12_etcd_01_etcds-Default.crd.yaml | 12 ++++++++++++ ...000_12_etcd_01_etcds-DevPreviewNoUpgrade.crd.yaml | 12 ++++++++++++ .../crds/0000_12_etcd_01_etcds-OKD.crd.yaml | 12 ++++++++++++ ...00_12_etcd_01_etcds-TechPreviewNoUpgrade.crd.yaml | 12 ++++++++++++ ...server_01_kubeapiservers-CustomNoUpgrade.crd.yaml | 12 ++++++++++++ ...kube-apiserver_01_kubeapiservers-Default.crd.yaml | 12 ++++++++++++ ...er_01_kubeapiservers-DevPreviewNoUpgrade.crd.yaml | 12 ++++++++++++ ..._20_kube-apiserver_01_kubeapiservers-OKD.crd.yaml | 12 ++++++++++++ ...r_01_kubeapiservers-TechPreviewNoUpgrade.crd.yaml | 12 ++++++++++++ ...roller-manager_01_kubecontrollermanagers.crd.yaml | 12 ++++++++++++ ...0000_25_kube-scheduler_01_kubeschedulers.crd.yaml | 12 ++++++++++++ 35 files changed, 396 insertions(+) diff --git a/openapi/generated_openapi/zz_generated.openapi.go b/openapi/generated_openapi/zz_generated.openapi.go index 636966aeec1..2a84e22f987 100644 --- a/openapi/generated_openapi/zz_generated.openapi.go +++ b/openapi/generated_openapi/zz_generated.openapi.go @@ -61636,6 +61636,13 @@ func schema_openshift_api_operator_v1_NodeStatus(ref common.ReferenceCallback) c Format: "", }, }, + "nodeUID": { + SchemaProps: spec.SchemaProps{ + Description: "nodeUID is the UID of the node. This field is used to detect that a node has been deleted and recreated with the same name. When the UID changes, it indicates the node is a new instance and the controller should treat this status entry as stale. When omitted, UID-based node replacement detection is not available for this entry.", + Type: []string{"string"}, + Format: "", + }, + }, "currentRevision": { SchemaProps: spec.SchemaProps{ Description: "currentRevision is the generation of the most recently successful deployment. Can not be set on creation of a nodeStatus. Updates must only increase the value.", diff --git a/openapi/openapi.json b/openapi/openapi.json index 468c116a34e..e674976cf5b 100644 --- a/openapi/openapi.json +++ b/openapi/openapi.json @@ -35830,6 +35830,10 @@ "type": "string", "default": "" }, + "nodeUID": { + "description": "nodeUID is the UID of the node. This field is used to detect that a node has been deleted and recreated with the same name. When the UID changes, it indicates the node is a new instance and the controller should treat this status entry as stale. When omitted, UID-based node replacement detection is not available for this entry.", + "type": "string" + }, "targetRevision": { "description": "targetRevision is the generation of the deployment we're trying to apply. Can not be set on creation of a nodeStatus.", "type": "integer", diff --git a/operator/v1/types.go b/operator/v1/types.go index 3a2141abb98..599ceb03e10 100644 --- a/operator/v1/types.go +++ b/operator/v1/types.go @@ -266,6 +266,18 @@ type NodeStatus struct { // +required NodeName string `json:"nodeName"` + // nodeUID is the UID of the node. + // This field is used to detect that a node has been deleted and recreated + // with the same name. When the UID changes, it indicates the node is a + // new instance and the controller should treat this status entry as stale. + // When omitted, UID-based node replacement detection is not available + // for this entry. + // +kubebuilder:validation:MinLength=36 + // +kubebuilder:validation:MaxLength=36 + // +kubebuilder:validation:Format=uuid + // +optional + NodeUID string `json:"nodeUID,omitempty"` + // currentRevision is the generation of the most recently successful deployment. // Can not be set on creation of a nodeStatus. Updates must only increase the value. // +kubebuilder:validation:XValidation:rule="self >= oldSelf",message="must only increase" diff --git a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-CustomNoUpgrade.crd.yaml b/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-CustomNoUpgrade.crd.yaml index 1feb64cbb5c..f9fa7e77567 100644 --- a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-CustomNoUpgrade.crd.yaml +++ b/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-CustomNoUpgrade.crd.yaml @@ -292,6 +292,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-Default.crd.yaml b/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-Default.crd.yaml index 23e6bdc63f2..b200e8cdffb 100644 --- a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-Default.crd.yaml +++ b/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-Default.crd.yaml @@ -279,6 +279,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-DevPreviewNoUpgrade.crd.yaml b/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-DevPreviewNoUpgrade.crd.yaml index 2c32b9c9648..be8d5cc5448 100644 --- a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-DevPreviewNoUpgrade.crd.yaml +++ b/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-DevPreviewNoUpgrade.crd.yaml @@ -292,6 +292,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-OKD.crd.yaml b/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-OKD.crd.yaml index b1ad9fc093b..3727f7d8e3e 100644 --- a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-OKD.crd.yaml +++ b/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-OKD.crd.yaml @@ -279,6 +279,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-TechPreviewNoUpgrade.crd.yaml b/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-TechPreviewNoUpgrade.crd.yaml index b74dfb9893e..01e0da88726 100644 --- a/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-TechPreviewNoUpgrade.crd.yaml +++ b/operator/v1/zz_generated.crd-manifests/0000_12_etcd_01_etcds-TechPreviewNoUpgrade.crd.yaml @@ -292,6 +292,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-CustomNoUpgrade.crd.yaml b/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-CustomNoUpgrade.crd.yaml index 57df5e1297f..4ef18b0c1e5 100644 --- a/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-CustomNoUpgrade.crd.yaml +++ b/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-CustomNoUpgrade.crd.yaml @@ -358,6 +358,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-Default.crd.yaml b/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-Default.crd.yaml index 3eb9d7d49e3..f9cc4d3cb7d 100644 --- a/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-Default.crd.yaml +++ b/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-Default.crd.yaml @@ -276,6 +276,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-DevPreviewNoUpgrade.crd.yaml b/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-DevPreviewNoUpgrade.crd.yaml index 0371d90d7a1..01ad7cf243b 100644 --- a/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-DevPreviewNoUpgrade.crd.yaml +++ b/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-DevPreviewNoUpgrade.crd.yaml @@ -358,6 +358,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-OKD.crd.yaml b/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-OKD.crd.yaml index fa02abd00f7..c6d06e5e66a 100644 --- a/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-OKD.crd.yaml +++ b/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-OKD.crd.yaml @@ -276,6 +276,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-TechPreviewNoUpgrade.crd.yaml b/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-TechPreviewNoUpgrade.crd.yaml index bdabdecd350..7a74e814451 100644 --- a/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-TechPreviewNoUpgrade.crd.yaml +++ b/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-TechPreviewNoUpgrade.crd.yaml @@ -358,6 +358,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.crd-manifests/0000_25_kube-controller-manager_01_kubecontrollermanagers.crd.yaml b/operator/v1/zz_generated.crd-manifests/0000_25_kube-controller-manager_01_kubecontrollermanagers.crd.yaml index 72bb37b7629..55601b0f4b3 100644 --- a/operator/v1/zz_generated.crd-manifests/0000_25_kube-controller-manager_01_kubecontrollermanagers.crd.yaml +++ b/operator/v1/zz_generated.crd-manifests/0000_25_kube-controller-manager_01_kubecontrollermanagers.crd.yaml @@ -270,6 +270,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.crd-manifests/0000_25_kube-scheduler_01_kubeschedulers.crd.yaml b/operator/v1/zz_generated.crd-manifests/0000_25_kube-scheduler_01_kubeschedulers.crd.yaml index e59fedb33eb..73eb7312649 100644 --- a/operator/v1/zz_generated.crd-manifests/0000_25_kube-scheduler_01_kubeschedulers.crd.yaml +++ b/operator/v1/zz_generated.crd-manifests/0000_25_kube-scheduler_01_kubeschedulers.crd.yaml @@ -261,6 +261,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.featuregated-crd-manifests/etcds.operator.openshift.io/AAA_ungated.yaml b/operator/v1/zz_generated.featuregated-crd-manifests/etcds.operator.openshift.io/AAA_ungated.yaml index e05ab22872e..da0da2642af 100644 --- a/operator/v1/zz_generated.featuregated-crd-manifests/etcds.operator.openshift.io/AAA_ungated.yaml +++ b/operator/v1/zz_generated.featuregated-crd-manifests/etcds.operator.openshift.io/AAA_ungated.yaml @@ -279,6 +279,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.featuregated-crd-manifests/etcds.operator.openshift.io/EtcdBackendQuota.yaml b/operator/v1/zz_generated.featuregated-crd-manifests/etcds.operator.openshift.io/EtcdBackendQuota.yaml index 3e6062e5a0d..c9b55e91545 100644 --- a/operator/v1/zz_generated.featuregated-crd-manifests/etcds.operator.openshift.io/EtcdBackendQuota.yaml +++ b/operator/v1/zz_generated.featuregated-crd-manifests/etcds.operator.openshift.io/EtcdBackendQuota.yaml @@ -292,6 +292,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.featuregated-crd-manifests/kubeapiservers.operator.openshift.io/AAA_ungated.yaml b/operator/v1/zz_generated.featuregated-crd-manifests/kubeapiservers.operator.openshift.io/AAA_ungated.yaml index b4be3ef9ebd..487fd5c192e 100644 --- a/operator/v1/zz_generated.featuregated-crd-manifests/kubeapiservers.operator.openshift.io/AAA_ungated.yaml +++ b/operator/v1/zz_generated.featuregated-crd-manifests/kubeapiservers.operator.openshift.io/AAA_ungated.yaml @@ -262,6 +262,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.featuregated-crd-manifests/kubeapiservers.operator.openshift.io/EventTTL.yaml b/operator/v1/zz_generated.featuregated-crd-manifests/kubeapiservers.operator.openshift.io/EventTTL.yaml index 959f93828ba..9784342bcfe 100644 --- a/operator/v1/zz_generated.featuregated-crd-manifests/kubeapiservers.operator.openshift.io/EventTTL.yaml +++ b/operator/v1/zz_generated.featuregated-crd-manifests/kubeapiservers.operator.openshift.io/EventTTL.yaml @@ -276,6 +276,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.featuregated-crd-manifests/kubeapiservers.operator.openshift.io/KMSEncryption.yaml b/operator/v1/zz_generated.featuregated-crd-manifests/kubeapiservers.operator.openshift.io/KMSEncryption.yaml index fc3426a6fec..df27d63930c 100644 --- a/operator/v1/zz_generated.featuregated-crd-manifests/kubeapiservers.operator.openshift.io/KMSEncryption.yaml +++ b/operator/v1/zz_generated.featuregated-crd-manifests/kubeapiservers.operator.openshift.io/KMSEncryption.yaml @@ -344,6 +344,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.featuregated-crd-manifests/kubecontrollermanagers.operator.openshift.io/AAA_ungated.yaml b/operator/v1/zz_generated.featuregated-crd-manifests/kubecontrollermanagers.operator.openshift.io/AAA_ungated.yaml index 5ed649c8710..a79f5f22531 100644 --- a/operator/v1/zz_generated.featuregated-crd-manifests/kubecontrollermanagers.operator.openshift.io/AAA_ungated.yaml +++ b/operator/v1/zz_generated.featuregated-crd-manifests/kubecontrollermanagers.operator.openshift.io/AAA_ungated.yaml @@ -271,6 +271,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.featuregated-crd-manifests/kubeschedulers.operator.openshift.io/AAA_ungated.yaml b/operator/v1/zz_generated.featuregated-crd-manifests/kubeschedulers.operator.openshift.io/AAA_ungated.yaml index dfa1b2c021f..b6b6cd2e1a6 100644 --- a/operator/v1/zz_generated.featuregated-crd-manifests/kubeschedulers.operator.openshift.io/AAA_ungated.yaml +++ b/operator/v1/zz_generated.featuregated-crd-manifests/kubeschedulers.operator.openshift.io/AAA_ungated.yaml @@ -262,6 +262,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/operator/v1/zz_generated.swagger_doc_generated.go b/operator/v1/zz_generated.swagger_doc_generated.go index 114b5c7a689..2825e758b5f 100644 --- a/operator/v1/zz_generated.swagger_doc_generated.go +++ b/operator/v1/zz_generated.swagger_doc_generated.go @@ -37,6 +37,7 @@ func (MyOperatorResource) SwaggerDoc() map[string]string { var map_NodeStatus = map[string]string{ "": "NodeStatus provides information about the current state of a particular node managed by this operator.", "nodeName": "nodeName is the name of the node", + "nodeUID": "nodeUID is the UID of the node. This field is used to detect that a node has been deleted and recreated with the same name. When the UID changes, it indicates the node is a new instance and the controller should treat this status entry as stale. When omitted, UID-based node replacement detection is not available for this entry.", "currentRevision": "currentRevision is the generation of the most recently successful deployment. Can not be set on creation of a nodeStatus. Updates must only increase the value.", "targetRevision": "targetRevision is the generation of the deployment we're trying to apply. Can not be set on creation of a nodeStatus.", "lastFailedRevision": "lastFailedRevision is the generation of the deployment we tried and failed to deploy.", diff --git a/payload-manifests/crds/0000_12_etcd_01_etcds-CustomNoUpgrade.crd.yaml b/payload-manifests/crds/0000_12_etcd_01_etcds-CustomNoUpgrade.crd.yaml index 1feb64cbb5c..f9fa7e77567 100644 --- a/payload-manifests/crds/0000_12_etcd_01_etcds-CustomNoUpgrade.crd.yaml +++ b/payload-manifests/crds/0000_12_etcd_01_etcds-CustomNoUpgrade.crd.yaml @@ -292,6 +292,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/payload-manifests/crds/0000_12_etcd_01_etcds-Default.crd.yaml b/payload-manifests/crds/0000_12_etcd_01_etcds-Default.crd.yaml index 23e6bdc63f2..b200e8cdffb 100644 --- a/payload-manifests/crds/0000_12_etcd_01_etcds-Default.crd.yaml +++ b/payload-manifests/crds/0000_12_etcd_01_etcds-Default.crd.yaml @@ -279,6 +279,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/payload-manifests/crds/0000_12_etcd_01_etcds-DevPreviewNoUpgrade.crd.yaml b/payload-manifests/crds/0000_12_etcd_01_etcds-DevPreviewNoUpgrade.crd.yaml index 2c32b9c9648..be8d5cc5448 100644 --- a/payload-manifests/crds/0000_12_etcd_01_etcds-DevPreviewNoUpgrade.crd.yaml +++ b/payload-manifests/crds/0000_12_etcd_01_etcds-DevPreviewNoUpgrade.crd.yaml @@ -292,6 +292,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/payload-manifests/crds/0000_12_etcd_01_etcds-OKD.crd.yaml b/payload-manifests/crds/0000_12_etcd_01_etcds-OKD.crd.yaml index b1ad9fc093b..3727f7d8e3e 100644 --- a/payload-manifests/crds/0000_12_etcd_01_etcds-OKD.crd.yaml +++ b/payload-manifests/crds/0000_12_etcd_01_etcds-OKD.crd.yaml @@ -279,6 +279,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/payload-manifests/crds/0000_12_etcd_01_etcds-TechPreviewNoUpgrade.crd.yaml b/payload-manifests/crds/0000_12_etcd_01_etcds-TechPreviewNoUpgrade.crd.yaml index b74dfb9893e..01e0da88726 100644 --- a/payload-manifests/crds/0000_12_etcd_01_etcds-TechPreviewNoUpgrade.crd.yaml +++ b/payload-manifests/crds/0000_12_etcd_01_etcds-TechPreviewNoUpgrade.crd.yaml @@ -292,6 +292,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-CustomNoUpgrade.crd.yaml b/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-CustomNoUpgrade.crd.yaml index 57df5e1297f..4ef18b0c1e5 100644 --- a/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-CustomNoUpgrade.crd.yaml +++ b/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-CustomNoUpgrade.crd.yaml @@ -358,6 +358,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-Default.crd.yaml b/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-Default.crd.yaml index 3eb9d7d49e3..f9cc4d3cb7d 100644 --- a/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-Default.crd.yaml +++ b/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-Default.crd.yaml @@ -276,6 +276,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-DevPreviewNoUpgrade.crd.yaml b/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-DevPreviewNoUpgrade.crd.yaml index 0371d90d7a1..01ad7cf243b 100644 --- a/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-DevPreviewNoUpgrade.crd.yaml +++ b/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-DevPreviewNoUpgrade.crd.yaml @@ -358,6 +358,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-OKD.crd.yaml b/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-OKD.crd.yaml index fa02abd00f7..c6d06e5e66a 100644 --- a/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-OKD.crd.yaml +++ b/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-OKD.crd.yaml @@ -276,6 +276,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-TechPreviewNoUpgrade.crd.yaml b/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-TechPreviewNoUpgrade.crd.yaml index bdabdecd350..7a74e814451 100644 --- a/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-TechPreviewNoUpgrade.crd.yaml +++ b/payload-manifests/crds/0000_20_kube-apiserver_01_kubeapiservers-TechPreviewNoUpgrade.crd.yaml @@ -358,6 +358,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/payload-manifests/crds/0000_25_kube-controller-manager_01_kubecontrollermanagers.crd.yaml b/payload-manifests/crds/0000_25_kube-controller-manager_01_kubecontrollermanagers.crd.yaml index 72bb37b7629..55601b0f4b3 100644 --- a/payload-manifests/crds/0000_25_kube-controller-manager_01_kubecontrollermanagers.crd.yaml +++ b/payload-manifests/crds/0000_25_kube-controller-manager_01_kubecontrollermanagers.crd.yaml @@ -270,6 +270,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply. diff --git a/payload-manifests/crds/0000_25_kube-scheduler_01_kubeschedulers.crd.yaml b/payload-manifests/crds/0000_25_kube-scheduler_01_kubeschedulers.crd.yaml index e59fedb33eb..73eb7312649 100644 --- a/payload-manifests/crds/0000_25_kube-scheduler_01_kubeschedulers.crd.yaml +++ b/payload-manifests/crds/0000_25_kube-scheduler_01_kubeschedulers.crd.yaml @@ -261,6 +261,18 @@ spec: nodeName: description: nodeName is the name of the node type: string + nodeUID: + description: |- + nodeUID is the UID of the node. + This field is used to detect that a node has been deleted and recreated + with the same name. When the UID changes, it indicates the node is a + new instance and the controller should treat this status entry as stale. + When omitted, UID-based node replacement detection is not available + for this entry. + format: uuid + maxLength: 36 + minLength: 36 + type: string targetRevision: description: |- targetRevision is the generation of the deployment we're trying to apply.