@@ -119,13 +119,15 @@ type ClusterClassSpec struct {
119
119
// variables defines the variables which can be configured
120
120
// in the Cluster topology and are then used in patches.
121
121
// +optional
122
+ // +listType=atomic
122
123
// +kubebuilder:validation:MaxItems=1000
123
124
Variables []ClusterClassVariable `json:"variables,omitempty"`
124
125
125
126
// patches defines the patches which are applied to customize
126
127
// referenced templates of a ClusterClass.
127
128
// Note: Patches will be applied in the order of the array.
128
129
// +optional
130
+ // +listType=atomic
129
131
// +kubebuilder:validation:MaxItems=1000
130
132
Patches []ClusterClassPatch `json:"patches,omitempty"`
131
133
}
@@ -392,6 +394,7 @@ type MachineHealthCheckClass struct {
392
394
// logical OR, i.e. if any of the conditions is met, the node is unhealthy.
393
395
//
394
396
// +optional
397
+ // +listType=atomic
395
398
// +kubebuilder:validation:MaxItems=100
396
399
UnhealthyNodeConditions []UnhealthyNodeCondition `json:"unhealthyNodeConditions,omitempty"`
397
400
@@ -743,6 +746,7 @@ type JSONSchemaProps struct {
743
746
// enum is the list of valid values of the variable.
744
747
// NOTE: Can be set for all types.
745
748
// +optional
749
+ // +listType=atomic
746
750
// +kubebuilder:validation:MaxItems=100
747
751
Enum []apiextensionsv1.JSON `json:"enum,omitempty"`
748
752
@@ -973,6 +977,7 @@ type ClusterClassPatch struct {
973
977
// Note: Patches will be applied in the order of the array.
974
978
// Note: Exactly one of Definitions or External must be set.
975
979
// +optional
980
+ // +listType=atomic
976
981
// +kubebuilder:validation:MaxItems=100
977
982
Definitions []PatchDefinition `json:"definitions,omitempty"`
978
983
@@ -993,6 +998,7 @@ type PatchDefinition struct {
993
998
// Note: Patches will be applied in the order of the array.
994
999
// +kubebuilder:validation:MaxItems=100
995
1000
// +required
1001
+ // +listType=atomic
996
1002
JSONPatches []JSONPatch `json:"jsonPatches"`
997
1003
}
998
1004
@@ -1249,6 +1255,7 @@ type ClusterClassStatus struct {
1249
1255
1250
1256
// variables is a list of ClusterClassStatusVariable that are defined for the ClusterClass.
1251
1257
// +optional
1258
+ // +listType=atomic
1252
1259
// +kubebuilder:validation:MaxItems=1000
1253
1260
Variables []ClusterClassStatusVariable `json:"variables,omitempty"`
1254
1261
@@ -1294,8 +1301,9 @@ type ClusterClassStatusVariable struct {
1294
1301
DefinitionsConflict * bool `json:"definitionsConflict,omitempty"`
1295
1302
1296
1303
// definitions is a list of definitions for a variable.
1297
- // +kubebuilder:validation:MaxItems=100
1298
1304
// +required
1305
+ // +listType=atomic
1306
+ // +kubebuilder:validation:MaxItems=100
1299
1307
Definitions []ClusterClassStatusVariableDefinition `json:"definitions"`
1300
1308
}
1301
1309
0 commit comments