diff --git a/machine/v1beta1/manual-override-crd-manifests/machines.machine.openshift.io/MachineAPIMigration.yaml b/machine/v1beta1/manual-override-crd-manifests/machines.machine.openshift.io/MachineAPIMigration.yaml index f0ca33e37a3..bc2f39aaf95 100644 --- a/machine/v1beta1/manual-override-crd-manifests/machines.machine.openshift.io/MachineAPIMigration.yaml +++ b/machine/v1beta1/manual-override-crd-manifests/machines.machine.openshift.io/MachineAPIMigration.yaml @@ -21,3 +21,5 @@ spec: && self.synchronizedGeneration >= oldSelf.synchronizedGeneration) || (oldSelf.authoritativeAPI == ''Migrating'' && self.authoritativeAPI != ''Migrating'')' + - message: authoritativeAPI may not be removed once set + rule: has(self.authoritativeAPI) || !has(oldSelf.authoritativeAPI) diff --git a/machine/v1beta1/manual-override-crd-manifests/machinesets.machine.openshift.io/MachineAPIMigration.yaml b/machine/v1beta1/manual-override-crd-manifests/machinesets.machine.openshift.io/MachineAPIMigration.yaml index 2f78133cba3..8cd4700d7f7 100644 --- a/machine/v1beta1/manual-override-crd-manifests/machinesets.machine.openshift.io/MachineAPIMigration.yaml +++ b/machine/v1beta1/manual-override-crd-manifests/machinesets.machine.openshift.io/MachineAPIMigration.yaml @@ -21,3 +21,5 @@ spec: && self.synchronizedGeneration >= oldSelf.synchronizedGeneration) || (oldSelf.authoritativeAPI == ''Migrating'' && self.authoritativeAPI != ''Migrating'')' + - message: authoritativeAPI may not be removed once set + rule: has(self.authoritativeAPI) || !has(oldSelf.authoritativeAPI) diff --git a/tools/codegen/pkg/manifestmerge/crd-schema.json b/tools/codegen/pkg/manifestmerge/crd-schema.json index 0fe236e86aa..03a3d3ce832 100644 --- a/tools/codegen/pkg/manifestmerge/crd-schema.json +++ b/tools/codegen/pkg/manifestmerge/crd-schema.json @@ -727,12 +727,7 @@ "default": {} }, "type": "array", - "x-kubernetes-list-map-keys": [ - "rule" - ], - "x-kubernetes-list-type": "map", - "x-kubernetes-patch-merge-key": "rule", - "x-kubernetes-patch-strategy": "merge" + "x-kubernetes-list-type": "atomic" } }, "type": "object"