sigs.k8s.io/cluster-api@v1.7.1/api/v1beta1/zz_generated.openapi.go (about) 1 //go:build !ignore_autogenerated 2 // +build !ignore_autogenerated 3 4 /* 5 Copyright The Kubernetes Authors. 6 7 Licensed under the Apache License, Version 2.0 (the "License"); 8 you may not use this file except in compliance with the License. 9 You may obtain a copy of the License at 10 11 http://www.apache.org/licenses/LICENSE-2.0 12 13 Unless required by applicable law or agreed to in writing, software 14 distributed under the License is distributed on an "AS IS" BASIS, 15 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 See the License for the specific language governing permissions and 17 limitations under the License. 18 */ 19 20 // Code generated by openapi-gen. DO NOT EDIT. 21 22 package v1beta1 23 24 import ( 25 common "k8s.io/kube-openapi/pkg/common" 26 spec "k8s.io/kube-openapi/pkg/validation/spec" 27 ) 28 29 func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition { 30 return map[string]common.OpenAPIDefinition{ 31 "sigs.k8s.io/cluster-api/api/v1beta1.APIEndpoint": schema_sigsk8sio_cluster_api_api_v1beta1_APIEndpoint(ref), 32 "sigs.k8s.io/cluster-api/api/v1beta1.Bootstrap": schema_sigsk8sio_cluster_api_api_v1beta1_Bootstrap(ref), 33 "sigs.k8s.io/cluster-api/api/v1beta1.Cluster": schema_sigsk8sio_cluster_api_api_v1beta1_Cluster(ref), 34 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterClass": schema_sigsk8sio_cluster_api_api_v1beta1_ClusterClass(ref), 35 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassList": schema_sigsk8sio_cluster_api_api_v1beta1_ClusterClassList(ref), 36 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassPatch": schema_sigsk8sio_cluster_api_api_v1beta1_ClusterClassPatch(ref), 37 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassSpec": schema_sigsk8sio_cluster_api_api_v1beta1_ClusterClassSpec(ref), 38 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassStatus": schema_sigsk8sio_cluster_api_api_v1beta1_ClusterClassStatus(ref), 39 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassStatusVariable": schema_sigsk8sio_cluster_api_api_v1beta1_ClusterClassStatusVariable(ref), 40 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassStatusVariableDefinition": schema_sigsk8sio_cluster_api_api_v1beta1_ClusterClassStatusVariableDefinition(ref), 41 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassVariable": schema_sigsk8sio_cluster_api_api_v1beta1_ClusterClassVariable(ref), 42 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassVariableMetadata": schema_sigsk8sio_cluster_api_api_v1beta1_ClusterClassVariableMetadata(ref), 43 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterList": schema_sigsk8sio_cluster_api_api_v1beta1_ClusterList(ref), 44 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterNetwork": schema_sigsk8sio_cluster_api_api_v1beta1_ClusterNetwork(ref), 45 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterSpec": schema_sigsk8sio_cluster_api_api_v1beta1_ClusterSpec(ref), 46 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterStatus": schema_sigsk8sio_cluster_api_api_v1beta1_ClusterStatus(ref), 47 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterVariable": schema_sigsk8sio_cluster_api_api_v1beta1_ClusterVariable(ref), 48 "sigs.k8s.io/cluster-api/api/v1beta1.Condition": schema_sigsk8sio_cluster_api_api_v1beta1_Condition(ref), 49 "sigs.k8s.io/cluster-api/api/v1beta1.ControlPlaneClass": schema_sigsk8sio_cluster_api_api_v1beta1_ControlPlaneClass(ref), 50 "sigs.k8s.io/cluster-api/api/v1beta1.ControlPlaneClassNamingStrategy": schema_sigsk8sio_cluster_api_api_v1beta1_ControlPlaneClassNamingStrategy(ref), 51 "sigs.k8s.io/cluster-api/api/v1beta1.ControlPlaneTopology": schema_sigsk8sio_cluster_api_api_v1beta1_ControlPlaneTopology(ref), 52 "sigs.k8s.io/cluster-api/api/v1beta1.ExternalPatchDefinition": schema_sigsk8sio_cluster_api_api_v1beta1_ExternalPatchDefinition(ref), 53 "sigs.k8s.io/cluster-api/api/v1beta1.FailureDomainSpec": schema_sigsk8sio_cluster_api_api_v1beta1_FailureDomainSpec(ref), 54 "sigs.k8s.io/cluster-api/api/v1beta1.JSONPatch": schema_sigsk8sio_cluster_api_api_v1beta1_JSONPatch(ref), 55 "sigs.k8s.io/cluster-api/api/v1beta1.JSONPatchValue": schema_sigsk8sio_cluster_api_api_v1beta1_JSONPatchValue(ref), 56 "sigs.k8s.io/cluster-api/api/v1beta1.JSONSchemaProps": schema_sigsk8sio_cluster_api_api_v1beta1_JSONSchemaProps(ref), 57 "sigs.k8s.io/cluster-api/api/v1beta1.LocalObjectTemplate": schema_sigsk8sio_cluster_api_api_v1beta1_LocalObjectTemplate(ref), 58 "sigs.k8s.io/cluster-api/api/v1beta1.Machine": schema_sigsk8sio_cluster_api_api_v1beta1_Machine(ref), 59 "sigs.k8s.io/cluster-api/api/v1beta1.MachineAddress": schema_sigsk8sio_cluster_api_api_v1beta1_MachineAddress(ref), 60 "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeployment": schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeployment(ref), 61 "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentClass": schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeploymentClass(ref), 62 "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentClassNamingStrategy": schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeploymentClassNamingStrategy(ref), 63 "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentClassTemplate": schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeploymentClassTemplate(ref), 64 "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentList": schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeploymentList(ref), 65 "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentSpec": schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeploymentSpec(ref), 66 "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentStatus": schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeploymentStatus(ref), 67 "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentStrategy": schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeploymentStrategy(ref), 68 "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentTopology": schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeploymentTopology(ref), 69 "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentVariables": schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeploymentVariables(ref), 70 "sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheck": schema_sigsk8sio_cluster_api_api_v1beta1_MachineHealthCheck(ref), 71 "sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheckClass": schema_sigsk8sio_cluster_api_api_v1beta1_MachineHealthCheckClass(ref), 72 "sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheckList": schema_sigsk8sio_cluster_api_api_v1beta1_MachineHealthCheckList(ref), 73 "sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheckSpec": schema_sigsk8sio_cluster_api_api_v1beta1_MachineHealthCheckSpec(ref), 74 "sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheckStatus": schema_sigsk8sio_cluster_api_api_v1beta1_MachineHealthCheckStatus(ref), 75 "sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheckTopology": schema_sigsk8sio_cluster_api_api_v1beta1_MachineHealthCheckTopology(ref), 76 "sigs.k8s.io/cluster-api/api/v1beta1.MachineList": schema_sigsk8sio_cluster_api_api_v1beta1_MachineList(ref), 77 "sigs.k8s.io/cluster-api/api/v1beta1.MachinePoolClass": schema_sigsk8sio_cluster_api_api_v1beta1_MachinePoolClass(ref), 78 "sigs.k8s.io/cluster-api/api/v1beta1.MachinePoolClassNamingStrategy": schema_sigsk8sio_cluster_api_api_v1beta1_MachinePoolClassNamingStrategy(ref), 79 "sigs.k8s.io/cluster-api/api/v1beta1.MachinePoolClassTemplate": schema_sigsk8sio_cluster_api_api_v1beta1_MachinePoolClassTemplate(ref), 80 "sigs.k8s.io/cluster-api/api/v1beta1.MachinePoolTopology": schema_sigsk8sio_cluster_api_api_v1beta1_MachinePoolTopology(ref), 81 "sigs.k8s.io/cluster-api/api/v1beta1.MachinePoolVariables": schema_sigsk8sio_cluster_api_api_v1beta1_MachinePoolVariables(ref), 82 "sigs.k8s.io/cluster-api/api/v1beta1.MachineRollingUpdateDeployment": schema_sigsk8sio_cluster_api_api_v1beta1_MachineRollingUpdateDeployment(ref), 83 "sigs.k8s.io/cluster-api/api/v1beta1.MachineSet": schema_sigsk8sio_cluster_api_api_v1beta1_MachineSet(ref), 84 "sigs.k8s.io/cluster-api/api/v1beta1.MachineSetList": schema_sigsk8sio_cluster_api_api_v1beta1_MachineSetList(ref), 85 "sigs.k8s.io/cluster-api/api/v1beta1.MachineSetSpec": schema_sigsk8sio_cluster_api_api_v1beta1_MachineSetSpec(ref), 86 "sigs.k8s.io/cluster-api/api/v1beta1.MachineSetStatus": schema_sigsk8sio_cluster_api_api_v1beta1_MachineSetStatus(ref), 87 "sigs.k8s.io/cluster-api/api/v1beta1.MachineSpec": schema_sigsk8sio_cluster_api_api_v1beta1_MachineSpec(ref), 88 "sigs.k8s.io/cluster-api/api/v1beta1.MachineStatus": schema_sigsk8sio_cluster_api_api_v1beta1_MachineStatus(ref), 89 "sigs.k8s.io/cluster-api/api/v1beta1.MachineTemplateSpec": schema_sigsk8sio_cluster_api_api_v1beta1_MachineTemplateSpec(ref), 90 "sigs.k8s.io/cluster-api/api/v1beta1.NetworkRanges": schema_sigsk8sio_cluster_api_api_v1beta1_NetworkRanges(ref), 91 "sigs.k8s.io/cluster-api/api/v1beta1.ObjectMeta": schema_sigsk8sio_cluster_api_api_v1beta1_ObjectMeta(ref), 92 "sigs.k8s.io/cluster-api/api/v1beta1.PatchDefinition": schema_sigsk8sio_cluster_api_api_v1beta1_PatchDefinition(ref), 93 "sigs.k8s.io/cluster-api/api/v1beta1.PatchSelector": schema_sigsk8sio_cluster_api_api_v1beta1_PatchSelector(ref), 94 "sigs.k8s.io/cluster-api/api/v1beta1.PatchSelectorMatch": schema_sigsk8sio_cluster_api_api_v1beta1_PatchSelectorMatch(ref), 95 "sigs.k8s.io/cluster-api/api/v1beta1.PatchSelectorMatchMachineDeploymentClass": schema_sigsk8sio_cluster_api_api_v1beta1_PatchSelectorMatchMachineDeploymentClass(ref), 96 "sigs.k8s.io/cluster-api/api/v1beta1.PatchSelectorMatchMachinePoolClass": schema_sigsk8sio_cluster_api_api_v1beta1_PatchSelectorMatchMachinePoolClass(ref), 97 "sigs.k8s.io/cluster-api/api/v1beta1.Topology": schema_sigsk8sio_cluster_api_api_v1beta1_Topology(ref), 98 "sigs.k8s.io/cluster-api/api/v1beta1.UnhealthyCondition": schema_sigsk8sio_cluster_api_api_v1beta1_UnhealthyCondition(ref), 99 "sigs.k8s.io/cluster-api/api/v1beta1.VariableSchema": schema_sigsk8sio_cluster_api_api_v1beta1_VariableSchema(ref), 100 "sigs.k8s.io/cluster-api/api/v1beta1.WorkersClass": schema_sigsk8sio_cluster_api_api_v1beta1_WorkersClass(ref), 101 "sigs.k8s.io/cluster-api/api/v1beta1.WorkersTopology": schema_sigsk8sio_cluster_api_api_v1beta1_WorkersTopology(ref), 102 } 103 } 104 105 func schema_sigsk8sio_cluster_api_api_v1beta1_APIEndpoint(ref common.ReferenceCallback) common.OpenAPIDefinition { 106 return common.OpenAPIDefinition{ 107 Schema: spec.Schema{ 108 SchemaProps: spec.SchemaProps{ 109 Description: "APIEndpoint represents a reachable Kubernetes API endpoint.", 110 Type: []string{"object"}, 111 Properties: map[string]spec.Schema{ 112 "host": { 113 SchemaProps: spec.SchemaProps{ 114 Description: "The hostname on which the API server is serving.", 115 Default: "", 116 Type: []string{"string"}, 117 Format: "", 118 }, 119 }, 120 "port": { 121 SchemaProps: spec.SchemaProps{ 122 Description: "The port on which the API server is serving.", 123 Default: 0, 124 Type: []string{"integer"}, 125 Format: "int32", 126 }, 127 }, 128 }, 129 Required: []string{"host", "port"}, 130 }, 131 }, 132 } 133 } 134 135 func schema_sigsk8sio_cluster_api_api_v1beta1_Bootstrap(ref common.ReferenceCallback) common.OpenAPIDefinition { 136 return common.OpenAPIDefinition{ 137 Schema: spec.Schema{ 138 SchemaProps: spec.SchemaProps{ 139 Description: "Bootstrap encapsulates fields to configure the Machine’s bootstrapping mechanism.", 140 Type: []string{"object"}, 141 Properties: map[string]spec.Schema{ 142 "configRef": { 143 SchemaProps: spec.SchemaProps{ 144 Description: "ConfigRef is a reference to a bootstrap provider-specific resource that holds configuration details. The reference is optional to allow users/operators to specify Bootstrap.DataSecretName without the need of a controller.", 145 Ref: ref("k8s.io/api/core/v1.ObjectReference"), 146 }, 147 }, 148 "dataSecretName": { 149 SchemaProps: spec.SchemaProps{ 150 Description: "DataSecretName is the name of the secret that stores the bootstrap data script. If nil, the Machine should remain in the Pending state.", 151 Type: []string{"string"}, 152 Format: "", 153 }, 154 }, 155 }, 156 }, 157 }, 158 Dependencies: []string{ 159 "k8s.io/api/core/v1.ObjectReference"}, 160 } 161 } 162 163 func schema_sigsk8sio_cluster_api_api_v1beta1_Cluster(ref common.ReferenceCallback) common.OpenAPIDefinition { 164 return common.OpenAPIDefinition{ 165 Schema: spec.Schema{ 166 SchemaProps: spec.SchemaProps{ 167 Description: "Cluster is the Schema for the clusters API.", 168 Type: []string{"object"}, 169 Properties: map[string]spec.Schema{ 170 "kind": { 171 SchemaProps: spec.SchemaProps{ 172 Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", 173 Type: []string{"string"}, 174 Format: "", 175 }, 176 }, 177 "apiVersion": { 178 SchemaProps: spec.SchemaProps{ 179 Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", 180 Type: []string{"string"}, 181 Format: "", 182 }, 183 }, 184 "metadata": { 185 SchemaProps: spec.SchemaProps{ 186 Default: map[string]interface{}{}, 187 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), 188 }, 189 }, 190 "spec": { 191 SchemaProps: spec.SchemaProps{ 192 Default: map[string]interface{}{}, 193 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ClusterSpec"), 194 }, 195 }, 196 "status": { 197 SchemaProps: spec.SchemaProps{ 198 Default: map[string]interface{}{}, 199 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ClusterStatus"), 200 }, 201 }, 202 }, 203 }, 204 }, 205 Dependencies: []string{ 206 "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta", "sigs.k8s.io/cluster-api/api/v1beta1.ClusterSpec", "sigs.k8s.io/cluster-api/api/v1beta1.ClusterStatus"}, 207 } 208 } 209 210 func schema_sigsk8sio_cluster_api_api_v1beta1_ClusterClass(ref common.ReferenceCallback) common.OpenAPIDefinition { 211 return common.OpenAPIDefinition{ 212 Schema: spec.Schema{ 213 SchemaProps: spec.SchemaProps{ 214 Description: "ClusterClass is a template which can be used to create managed topologies.", 215 Type: []string{"object"}, 216 Properties: map[string]spec.Schema{ 217 "kind": { 218 SchemaProps: spec.SchemaProps{ 219 Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", 220 Type: []string{"string"}, 221 Format: "", 222 }, 223 }, 224 "apiVersion": { 225 SchemaProps: spec.SchemaProps{ 226 Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", 227 Type: []string{"string"}, 228 Format: "", 229 }, 230 }, 231 "metadata": { 232 SchemaProps: spec.SchemaProps{ 233 Default: map[string]interface{}{}, 234 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), 235 }, 236 }, 237 "spec": { 238 SchemaProps: spec.SchemaProps{ 239 Default: map[string]interface{}{}, 240 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassSpec"), 241 }, 242 }, 243 "status": { 244 SchemaProps: spec.SchemaProps{ 245 Default: map[string]interface{}{}, 246 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassStatus"), 247 }, 248 }, 249 }, 250 }, 251 }, 252 Dependencies: []string{ 253 "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta", "sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassSpec", "sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassStatus"}, 254 } 255 } 256 257 func schema_sigsk8sio_cluster_api_api_v1beta1_ClusterClassList(ref common.ReferenceCallback) common.OpenAPIDefinition { 258 return common.OpenAPIDefinition{ 259 Schema: spec.Schema{ 260 SchemaProps: spec.SchemaProps{ 261 Description: "ClusterClassList contains a list of Cluster.", 262 Type: []string{"object"}, 263 Properties: map[string]spec.Schema{ 264 "kind": { 265 SchemaProps: spec.SchemaProps{ 266 Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", 267 Type: []string{"string"}, 268 Format: "", 269 }, 270 }, 271 "apiVersion": { 272 SchemaProps: spec.SchemaProps{ 273 Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", 274 Type: []string{"string"}, 275 Format: "", 276 }, 277 }, 278 "metadata": { 279 SchemaProps: spec.SchemaProps{ 280 Default: map[string]interface{}{}, 281 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), 282 }, 283 }, 284 "items": { 285 SchemaProps: spec.SchemaProps{ 286 Type: []string{"array"}, 287 Items: &spec.SchemaOrArray{ 288 Schema: &spec.Schema{ 289 SchemaProps: spec.SchemaProps{ 290 Default: map[string]interface{}{}, 291 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ClusterClass"), 292 }, 293 }, 294 }, 295 }, 296 }, 297 }, 298 Required: []string{"items"}, 299 }, 300 }, 301 Dependencies: []string{ 302 "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta", "sigs.k8s.io/cluster-api/api/v1beta1.ClusterClass"}, 303 } 304 } 305 306 func schema_sigsk8sio_cluster_api_api_v1beta1_ClusterClassPatch(ref common.ReferenceCallback) common.OpenAPIDefinition { 307 return common.OpenAPIDefinition{ 308 Schema: spec.Schema{ 309 SchemaProps: spec.SchemaProps{ 310 Description: "ClusterClassPatch defines a patch which is applied to customize the referenced templates.", 311 Type: []string{"object"}, 312 Properties: map[string]spec.Schema{ 313 "name": { 314 SchemaProps: spec.SchemaProps{ 315 Description: "Name of the patch.", 316 Default: "", 317 Type: []string{"string"}, 318 Format: "", 319 }, 320 }, 321 "description": { 322 SchemaProps: spec.SchemaProps{ 323 Description: "Description is a human-readable description of this patch.", 324 Type: []string{"string"}, 325 Format: "", 326 }, 327 }, 328 "enabledIf": { 329 SchemaProps: spec.SchemaProps{ 330 Description: "EnabledIf is a Go template to be used to calculate if a patch should be enabled. It can reference variables defined in .spec.variables and builtin variables. The patch will be enabled if the template evaluates to `true`, otherwise it will be disabled. If EnabledIf is not set, the patch will be enabled per default.", 331 Type: []string{"string"}, 332 Format: "", 333 }, 334 }, 335 "definitions": { 336 SchemaProps: spec.SchemaProps{ 337 Description: "Definitions define inline patches. Note: Patches will be applied in the order of the array. Note: Exactly one of Definitions or External must be set.", 338 Type: []string{"array"}, 339 Items: &spec.SchemaOrArray{ 340 Schema: &spec.Schema{ 341 SchemaProps: spec.SchemaProps{ 342 Default: map[string]interface{}{}, 343 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.PatchDefinition"), 344 }, 345 }, 346 }, 347 }, 348 }, 349 "external": { 350 SchemaProps: spec.SchemaProps{ 351 Description: "External defines an external patch. Note: Exactly one of Definitions or External must be set.", 352 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ExternalPatchDefinition"), 353 }, 354 }, 355 }, 356 Required: []string{"name"}, 357 }, 358 }, 359 Dependencies: []string{ 360 "sigs.k8s.io/cluster-api/api/v1beta1.ExternalPatchDefinition", "sigs.k8s.io/cluster-api/api/v1beta1.PatchDefinition"}, 361 } 362 } 363 364 func schema_sigsk8sio_cluster_api_api_v1beta1_ClusterClassSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { 365 return common.OpenAPIDefinition{ 366 Schema: spec.Schema{ 367 SchemaProps: spec.SchemaProps{ 368 Description: "ClusterClassSpec describes the desired state of the ClusterClass.", 369 Type: []string{"object"}, 370 Properties: map[string]spec.Schema{ 371 "infrastructure": { 372 SchemaProps: spec.SchemaProps{ 373 Description: "Infrastructure is a reference to a provider-specific template that holds the details for provisioning infrastructure specific cluster for the underlying provider. The underlying provider is responsible for the implementation of the template to an infrastructure cluster.", 374 Default: map[string]interface{}{}, 375 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.LocalObjectTemplate"), 376 }, 377 }, 378 "controlPlane": { 379 SchemaProps: spec.SchemaProps{ 380 Description: "ControlPlane is a reference to a local struct that holds the details for provisioning the Control Plane for the Cluster.", 381 Default: map[string]interface{}{}, 382 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ControlPlaneClass"), 383 }, 384 }, 385 "workers": { 386 SchemaProps: spec.SchemaProps{ 387 Description: "Workers describes the worker nodes for the cluster. It is a collection of node types which can be used to create the worker nodes of the cluster.", 388 Default: map[string]interface{}{}, 389 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.WorkersClass"), 390 }, 391 }, 392 "variables": { 393 SchemaProps: spec.SchemaProps{ 394 Description: "Variables defines the variables which can be configured in the Cluster topology and are then used in patches.", 395 Type: []string{"array"}, 396 Items: &spec.SchemaOrArray{ 397 Schema: &spec.Schema{ 398 SchemaProps: spec.SchemaProps{ 399 Default: map[string]interface{}{}, 400 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassVariable"), 401 }, 402 }, 403 }, 404 }, 405 }, 406 "patches": { 407 SchemaProps: spec.SchemaProps{ 408 Description: "Patches defines the patches which are applied to customize referenced templates of a ClusterClass. Note: Patches will be applied in the order of the array.", 409 Type: []string{"array"}, 410 Items: &spec.SchemaOrArray{ 411 Schema: &spec.Schema{ 412 SchemaProps: spec.SchemaProps{ 413 Default: map[string]interface{}{}, 414 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassPatch"), 415 }, 416 }, 417 }, 418 }, 419 }, 420 }, 421 }, 422 }, 423 Dependencies: []string{ 424 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassPatch", "sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassVariable", "sigs.k8s.io/cluster-api/api/v1beta1.ControlPlaneClass", "sigs.k8s.io/cluster-api/api/v1beta1.LocalObjectTemplate", "sigs.k8s.io/cluster-api/api/v1beta1.WorkersClass"}, 425 } 426 } 427 428 func schema_sigsk8sio_cluster_api_api_v1beta1_ClusterClassStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { 429 return common.OpenAPIDefinition{ 430 Schema: spec.Schema{ 431 SchemaProps: spec.SchemaProps{ 432 Description: "ClusterClassStatus defines the observed state of the ClusterClass.", 433 Type: []string{"object"}, 434 Properties: map[string]spec.Schema{ 435 "variables": { 436 SchemaProps: spec.SchemaProps{ 437 Description: "Variables is a list of ClusterClassStatusVariable that are defined for the ClusterClass.", 438 Type: []string{"array"}, 439 Items: &spec.SchemaOrArray{ 440 Schema: &spec.Schema{ 441 SchemaProps: spec.SchemaProps{ 442 Default: map[string]interface{}{}, 443 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassStatusVariable"), 444 }, 445 }, 446 }, 447 }, 448 }, 449 "conditions": { 450 SchemaProps: spec.SchemaProps{ 451 Description: "Conditions defines current observed state of the ClusterClass.", 452 Type: []string{"array"}, 453 Items: &spec.SchemaOrArray{ 454 Schema: &spec.Schema{ 455 SchemaProps: spec.SchemaProps{ 456 Default: map[string]interface{}{}, 457 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.Condition"), 458 }, 459 }, 460 }, 461 }, 462 }, 463 "observedGeneration": { 464 SchemaProps: spec.SchemaProps{ 465 Description: "ObservedGeneration is the latest generation observed by the controller.", 466 Type: []string{"integer"}, 467 Format: "int64", 468 }, 469 }, 470 }, 471 }, 472 }, 473 Dependencies: []string{ 474 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassStatusVariable", "sigs.k8s.io/cluster-api/api/v1beta1.Condition"}, 475 } 476 } 477 478 func schema_sigsk8sio_cluster_api_api_v1beta1_ClusterClassStatusVariable(ref common.ReferenceCallback) common.OpenAPIDefinition { 479 return common.OpenAPIDefinition{ 480 Schema: spec.Schema{ 481 SchemaProps: spec.SchemaProps{ 482 Description: "ClusterClassStatusVariable defines a variable which appears in the status of a ClusterClass.", 483 Type: []string{"object"}, 484 Properties: map[string]spec.Schema{ 485 "name": { 486 SchemaProps: spec.SchemaProps{ 487 Description: "Name is the name of the variable.", 488 Default: "", 489 Type: []string{"string"}, 490 Format: "", 491 }, 492 }, 493 "definitionsConflict": { 494 SchemaProps: spec.SchemaProps{ 495 Description: "DefinitionsConflict specifies whether or not there are conflicting definitions for a single variable name.", 496 Default: false, 497 Type: []string{"boolean"}, 498 Format: "", 499 }, 500 }, 501 "definitions": { 502 SchemaProps: spec.SchemaProps{ 503 Description: "Definitions is a list of definitions for a variable.", 504 Type: []string{"array"}, 505 Items: &spec.SchemaOrArray{ 506 Schema: &spec.Schema{ 507 SchemaProps: spec.SchemaProps{ 508 Default: map[string]interface{}{}, 509 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassStatusVariableDefinition"), 510 }, 511 }, 512 }, 513 }, 514 }, 515 }, 516 Required: []string{"name", "definitions"}, 517 }, 518 }, 519 Dependencies: []string{ 520 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassStatusVariableDefinition"}, 521 } 522 } 523 524 func schema_sigsk8sio_cluster_api_api_v1beta1_ClusterClassStatusVariableDefinition(ref common.ReferenceCallback) common.OpenAPIDefinition { 525 return common.OpenAPIDefinition{ 526 Schema: spec.Schema{ 527 SchemaProps: spec.SchemaProps{ 528 Description: "ClusterClassStatusVariableDefinition defines a variable which appears in the status of a ClusterClass.", 529 Type: []string{"object"}, 530 Properties: map[string]spec.Schema{ 531 "from": { 532 SchemaProps: spec.SchemaProps{ 533 Description: "From specifies the origin of the variable definition. This will be `inline` for variables defined in the ClusterClass or the name of a patch defined in the ClusterClass for variables discovered from a DiscoverVariables runtime extensions.", 534 Default: "", 535 Type: []string{"string"}, 536 Format: "", 537 }, 538 }, 539 "required": { 540 SchemaProps: spec.SchemaProps{ 541 Description: "Required specifies if the variable is required. Note: this applies to the variable as a whole and thus the top-level object defined in the schema. If nested fields are required, this will be specified inside the schema.", 542 Default: false, 543 Type: []string{"boolean"}, 544 Format: "", 545 }, 546 }, 547 "metadata": { 548 SchemaProps: spec.SchemaProps{ 549 Description: "Metadata is the metadata of a variable. It can be used to add additional data for higher level tools to a ClusterClassVariable.", 550 Default: map[string]interface{}{}, 551 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassVariableMetadata"), 552 }, 553 }, 554 "schema": { 555 SchemaProps: spec.SchemaProps{ 556 Description: "Schema defines the schema of the variable.", 557 Default: map[string]interface{}{}, 558 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.VariableSchema"), 559 }, 560 }, 561 }, 562 Required: []string{"from", "required", "schema"}, 563 }, 564 }, 565 Dependencies: []string{ 566 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassVariableMetadata", "sigs.k8s.io/cluster-api/api/v1beta1.VariableSchema"}, 567 } 568 } 569 570 func schema_sigsk8sio_cluster_api_api_v1beta1_ClusterClassVariable(ref common.ReferenceCallback) common.OpenAPIDefinition { 571 return common.OpenAPIDefinition{ 572 Schema: spec.Schema{ 573 SchemaProps: spec.SchemaProps{ 574 Description: "ClusterClassVariable defines a variable which can be configured in the Cluster topology and used in patches.", 575 Type: []string{"object"}, 576 Properties: map[string]spec.Schema{ 577 "name": { 578 SchemaProps: spec.SchemaProps{ 579 Description: "Name of the variable.", 580 Default: "", 581 Type: []string{"string"}, 582 Format: "", 583 }, 584 }, 585 "required": { 586 SchemaProps: spec.SchemaProps{ 587 Description: "Required specifies if the variable is required. Note: this applies to the variable as a whole and thus the top-level object defined in the schema. If nested fields are required, this will be specified inside the schema.", 588 Default: false, 589 Type: []string{"boolean"}, 590 Format: "", 591 }, 592 }, 593 "metadata": { 594 SchemaProps: spec.SchemaProps{ 595 Description: "Metadata is the metadata of a variable. It can be used to add additional data for higher level tools to a ClusterClassVariable.", 596 Default: map[string]interface{}{}, 597 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassVariableMetadata"), 598 }, 599 }, 600 "schema": { 601 SchemaProps: spec.SchemaProps{ 602 Description: "Schema defines the schema of the variable.", 603 Default: map[string]interface{}{}, 604 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.VariableSchema"), 605 }, 606 }, 607 }, 608 Required: []string{"name", "required", "schema"}, 609 }, 610 }, 611 Dependencies: []string{ 612 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterClassVariableMetadata", "sigs.k8s.io/cluster-api/api/v1beta1.VariableSchema"}, 613 } 614 } 615 616 func schema_sigsk8sio_cluster_api_api_v1beta1_ClusterClassVariableMetadata(ref common.ReferenceCallback) common.OpenAPIDefinition { 617 return common.OpenAPIDefinition{ 618 Schema: spec.Schema{ 619 SchemaProps: spec.SchemaProps{ 620 Description: "ClusterClassVariableMetadata is the metadata of a variable. It can be used to add additional data for higher level tools to a ClusterClassVariable.", 621 Type: []string{"object"}, 622 Properties: map[string]spec.Schema{ 623 "labels": { 624 SchemaProps: spec.SchemaProps{ 625 Description: "Map of string keys and values that can be used to organize and categorize (scope and select) variables.", 626 Type: []string{"object"}, 627 AdditionalProperties: &spec.SchemaOrBool{ 628 Allows: true, 629 Schema: &spec.Schema{ 630 SchemaProps: spec.SchemaProps{ 631 Default: "", 632 Type: []string{"string"}, 633 Format: "", 634 }, 635 }, 636 }, 637 }, 638 }, 639 "annotations": { 640 SchemaProps: spec.SchemaProps{ 641 Description: "Annotations is an unstructured key value map that can be used to store and retrieve arbitrary metadata. They are not queryable.", 642 Type: []string{"object"}, 643 AdditionalProperties: &spec.SchemaOrBool{ 644 Allows: true, 645 Schema: &spec.Schema{ 646 SchemaProps: spec.SchemaProps{ 647 Default: "", 648 Type: []string{"string"}, 649 Format: "", 650 }, 651 }, 652 }, 653 }, 654 }, 655 }, 656 }, 657 }, 658 } 659 } 660 661 func schema_sigsk8sio_cluster_api_api_v1beta1_ClusterList(ref common.ReferenceCallback) common.OpenAPIDefinition { 662 return common.OpenAPIDefinition{ 663 Schema: spec.Schema{ 664 SchemaProps: spec.SchemaProps{ 665 Description: "ClusterList contains a list of Cluster.", 666 Type: []string{"object"}, 667 Properties: map[string]spec.Schema{ 668 "kind": { 669 SchemaProps: spec.SchemaProps{ 670 Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", 671 Type: []string{"string"}, 672 Format: "", 673 }, 674 }, 675 "apiVersion": { 676 SchemaProps: spec.SchemaProps{ 677 Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", 678 Type: []string{"string"}, 679 Format: "", 680 }, 681 }, 682 "metadata": { 683 SchemaProps: spec.SchemaProps{ 684 Default: map[string]interface{}{}, 685 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), 686 }, 687 }, 688 "items": { 689 SchemaProps: spec.SchemaProps{ 690 Type: []string{"array"}, 691 Items: &spec.SchemaOrArray{ 692 Schema: &spec.Schema{ 693 SchemaProps: spec.SchemaProps{ 694 Default: map[string]interface{}{}, 695 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.Cluster"), 696 }, 697 }, 698 }, 699 }, 700 }, 701 }, 702 Required: []string{"items"}, 703 }, 704 }, 705 Dependencies: []string{ 706 "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta", "sigs.k8s.io/cluster-api/api/v1beta1.Cluster"}, 707 } 708 } 709 710 func schema_sigsk8sio_cluster_api_api_v1beta1_ClusterNetwork(ref common.ReferenceCallback) common.OpenAPIDefinition { 711 return common.OpenAPIDefinition{ 712 Schema: spec.Schema{ 713 SchemaProps: spec.SchemaProps{ 714 Description: "ClusterNetwork specifies the different networking parameters for a cluster.", 715 Type: []string{"object"}, 716 Properties: map[string]spec.Schema{ 717 "apiServerPort": { 718 SchemaProps: spec.SchemaProps{ 719 Description: "APIServerPort specifies the port the API Server should bind to. Defaults to 6443.", 720 Type: []string{"integer"}, 721 Format: "int32", 722 }, 723 }, 724 "services": { 725 SchemaProps: spec.SchemaProps{ 726 Description: "The network ranges from which service VIPs are allocated.", 727 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.NetworkRanges"), 728 }, 729 }, 730 "pods": { 731 SchemaProps: spec.SchemaProps{ 732 Description: "The network ranges from which Pod networks are allocated.", 733 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.NetworkRanges"), 734 }, 735 }, 736 "serviceDomain": { 737 SchemaProps: spec.SchemaProps{ 738 Description: "Domain name for services.", 739 Type: []string{"string"}, 740 Format: "", 741 }, 742 }, 743 }, 744 }, 745 }, 746 Dependencies: []string{ 747 "sigs.k8s.io/cluster-api/api/v1beta1.NetworkRanges"}, 748 } 749 } 750 751 func schema_sigsk8sio_cluster_api_api_v1beta1_ClusterSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { 752 return common.OpenAPIDefinition{ 753 Schema: spec.Schema{ 754 SchemaProps: spec.SchemaProps{ 755 Description: "ClusterSpec defines the desired state of Cluster.", 756 Type: []string{"object"}, 757 Properties: map[string]spec.Schema{ 758 "paused": { 759 SchemaProps: spec.SchemaProps{ 760 Description: "Paused can be used to prevent controllers from processing the Cluster and all its associated objects.", 761 Type: []string{"boolean"}, 762 Format: "", 763 }, 764 }, 765 "clusterNetwork": { 766 SchemaProps: spec.SchemaProps{ 767 Description: "Cluster network configuration.", 768 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ClusterNetwork"), 769 }, 770 }, 771 "controlPlaneEndpoint": { 772 SchemaProps: spec.SchemaProps{ 773 Description: "ControlPlaneEndpoint represents the endpoint used to communicate with the control plane.", 774 Default: map[string]interface{}{}, 775 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.APIEndpoint"), 776 }, 777 }, 778 "controlPlaneRef": { 779 SchemaProps: spec.SchemaProps{ 780 Description: "ControlPlaneRef is an optional reference to a provider-specific resource that holds the details for provisioning the Control Plane for a Cluster.", 781 Ref: ref("k8s.io/api/core/v1.ObjectReference"), 782 }, 783 }, 784 "infrastructureRef": { 785 SchemaProps: spec.SchemaProps{ 786 Description: "InfrastructureRef is a reference to a provider-specific resource that holds the details for provisioning infrastructure for a cluster in said provider.", 787 Ref: ref("k8s.io/api/core/v1.ObjectReference"), 788 }, 789 }, 790 "topology": { 791 SchemaProps: spec.SchemaProps{ 792 Description: "This encapsulates the topology for the cluster. NOTE: It is required to enable the ClusterTopology feature gate flag to activate managed topologies support; this feature is highly experimental, and parts of it might still be not implemented.", 793 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.Topology"), 794 }, 795 }, 796 }, 797 }, 798 }, 799 Dependencies: []string{ 800 "k8s.io/api/core/v1.ObjectReference", "sigs.k8s.io/cluster-api/api/v1beta1.APIEndpoint", "sigs.k8s.io/cluster-api/api/v1beta1.ClusterNetwork", "sigs.k8s.io/cluster-api/api/v1beta1.Topology"}, 801 } 802 } 803 804 func schema_sigsk8sio_cluster_api_api_v1beta1_ClusterStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { 805 return common.OpenAPIDefinition{ 806 Schema: spec.Schema{ 807 SchemaProps: spec.SchemaProps{ 808 Description: "ClusterStatus defines the observed state of Cluster.", 809 Type: []string{"object"}, 810 Properties: map[string]spec.Schema{ 811 "failureDomains": { 812 SchemaProps: spec.SchemaProps{ 813 Description: "FailureDomains is a slice of failure domain objects synced from the infrastructure provider.", 814 Type: []string{"object"}, 815 AdditionalProperties: &spec.SchemaOrBool{ 816 Allows: true, 817 Schema: &spec.Schema{ 818 SchemaProps: spec.SchemaProps{ 819 Default: map[string]interface{}{}, 820 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.FailureDomainSpec"), 821 }, 822 }, 823 }, 824 }, 825 }, 826 "failureReason": { 827 SchemaProps: spec.SchemaProps{ 828 Description: "FailureReason indicates that there is a fatal problem reconciling the state, and will be set to a token value suitable for programmatic interpretation.", 829 Type: []string{"string"}, 830 Format: "", 831 }, 832 }, 833 "failureMessage": { 834 SchemaProps: spec.SchemaProps{ 835 Description: "FailureMessage indicates that there is a fatal problem reconciling the state, and will be set to a descriptive error message.", 836 Type: []string{"string"}, 837 Format: "", 838 }, 839 }, 840 "phase": { 841 SchemaProps: spec.SchemaProps{ 842 Description: "Phase represents the current phase of cluster actuation. E.g. Pending, Running, Terminating, Failed etc.", 843 Type: []string{"string"}, 844 Format: "", 845 }, 846 }, 847 "infrastructureReady": { 848 SchemaProps: spec.SchemaProps{ 849 Description: "InfrastructureReady is the state of the infrastructure provider.", 850 Default: false, 851 Type: []string{"boolean"}, 852 Format: "", 853 }, 854 }, 855 "controlPlaneReady": { 856 SchemaProps: spec.SchemaProps{ 857 Description: "ControlPlaneReady defines if the control plane is ready.", 858 Default: false, 859 Type: []string{"boolean"}, 860 Format: "", 861 }, 862 }, 863 "conditions": { 864 SchemaProps: spec.SchemaProps{ 865 Description: "Conditions defines current service state of the cluster.", 866 Type: []string{"array"}, 867 Items: &spec.SchemaOrArray{ 868 Schema: &spec.Schema{ 869 SchemaProps: spec.SchemaProps{ 870 Default: map[string]interface{}{}, 871 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.Condition"), 872 }, 873 }, 874 }, 875 }, 876 }, 877 "observedGeneration": { 878 SchemaProps: spec.SchemaProps{ 879 Description: "ObservedGeneration is the latest generation observed by the controller.", 880 Type: []string{"integer"}, 881 Format: "int64", 882 }, 883 }, 884 }, 885 }, 886 }, 887 Dependencies: []string{ 888 "sigs.k8s.io/cluster-api/api/v1beta1.Condition", "sigs.k8s.io/cluster-api/api/v1beta1.FailureDomainSpec"}, 889 } 890 } 891 892 func schema_sigsk8sio_cluster_api_api_v1beta1_ClusterVariable(ref common.ReferenceCallback) common.OpenAPIDefinition { 893 return common.OpenAPIDefinition{ 894 Schema: spec.Schema{ 895 SchemaProps: spec.SchemaProps{ 896 Description: "ClusterVariable can be used to customize the Cluster through patches. Each ClusterVariable is associated with a Variable definition in the ClusterClass `status` variables.", 897 Type: []string{"object"}, 898 Properties: map[string]spec.Schema{ 899 "name": { 900 SchemaProps: spec.SchemaProps{ 901 Description: "Name of the variable.", 902 Default: "", 903 Type: []string{"string"}, 904 Format: "", 905 }, 906 }, 907 "definitionFrom": { 908 SchemaProps: spec.SchemaProps{ 909 Description: "DefinitionFrom specifies where the definition of this Variable is from. DefinitionFrom is `inline` when the definition is from the ClusterClass `.spec.variables` or the name of a patch defined in the ClusterClass `.spec.patches` where the patch is external and provides external variables. This field is mandatory if the variable has `DefinitionsConflict: true` in ClusterClass `status.variables[]`", 910 Type: []string{"string"}, 911 Format: "", 912 }, 913 }, 914 "value": { 915 SchemaProps: spec.SchemaProps{ 916 Description: "Value of the variable. Note: the value will be validated against the schema of the corresponding ClusterClassVariable from the ClusterClass. Note: We have to use apiextensionsv1.JSON instead of a custom JSON type, because controller-tools has a hard-coded schema for apiextensionsv1.JSON which cannot be produced by another type via controller-tools, i.e. it is not possible to have no type field. Ref: https://github.com/kubernetes-sigs/controller-tools/blob/d0e03a142d0ecdd5491593e941ee1d6b5d91dba6/pkg/crd/known_types.go#L106-L111", 917 Ref: ref("k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSON"), 918 }, 919 }, 920 }, 921 Required: []string{"name", "value"}, 922 }, 923 }, 924 Dependencies: []string{ 925 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSON"}, 926 } 927 } 928 929 func schema_sigsk8sio_cluster_api_api_v1beta1_Condition(ref common.ReferenceCallback) common.OpenAPIDefinition { 930 return common.OpenAPIDefinition{ 931 Schema: spec.Schema{ 932 SchemaProps: spec.SchemaProps{ 933 Description: "Condition defines an observation of a Cluster API resource operational state.", 934 Type: []string{"object"}, 935 Properties: map[string]spec.Schema{ 936 "type": { 937 SchemaProps: spec.SchemaProps{ 938 Description: "Type of condition in CamelCase or in foo.example.com/CamelCase. Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important.", 939 Default: "", 940 Type: []string{"string"}, 941 Format: "", 942 }, 943 }, 944 "status": { 945 SchemaProps: spec.SchemaProps{ 946 Description: "Status of the condition, one of True, False, Unknown.", 947 Default: "", 948 Type: []string{"string"}, 949 Format: "", 950 }, 951 }, 952 "severity": { 953 SchemaProps: spec.SchemaProps{ 954 Description: "Severity provides an explicit classification of Reason code, so the users or machines can immediately understand the current situation and act accordingly. The Severity field MUST be set only when Status=False.", 955 Type: []string{"string"}, 956 Format: "", 957 }, 958 }, 959 "lastTransitionTime": { 960 SchemaProps: spec.SchemaProps{ 961 Description: "Last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.", 962 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), 963 }, 964 }, 965 "reason": { 966 SchemaProps: spec.SchemaProps{ 967 Description: "The reason for the condition's last transition in CamelCase. The specific API may choose whether or not this field is considered a guaranteed API. This field may not be empty.", 968 Type: []string{"string"}, 969 Format: "", 970 }, 971 }, 972 "message": { 973 SchemaProps: spec.SchemaProps{ 974 Description: "A human readable message indicating details about the transition. This field may be empty.", 975 Type: []string{"string"}, 976 Format: "", 977 }, 978 }, 979 }, 980 Required: []string{"type", "status", "lastTransitionTime"}, 981 }, 982 }, 983 Dependencies: []string{ 984 "k8s.io/apimachinery/pkg/apis/meta/v1.Time"}, 985 } 986 } 987 988 func schema_sigsk8sio_cluster_api_api_v1beta1_ControlPlaneClass(ref common.ReferenceCallback) common.OpenAPIDefinition { 989 return common.OpenAPIDefinition{ 990 Schema: spec.Schema{ 991 SchemaProps: spec.SchemaProps{ 992 Description: "ControlPlaneClass defines the class for the control plane.", 993 Type: []string{"object"}, 994 Properties: map[string]spec.Schema{ 995 "metadata": { 996 SchemaProps: spec.SchemaProps{ 997 Description: "Metadata is the metadata applied to the ControlPlane and the Machines of the ControlPlane if the ControlPlaneTemplate referenced is machine based. If not, it is applied only to the ControlPlane. At runtime this metadata is merged with the corresponding metadata from the topology.\n\nThis field is supported if and only if the control plane provider template referenced is Machine based.", 998 Default: map[string]interface{}{}, 999 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ObjectMeta"), 1000 }, 1001 }, 1002 "ref": { 1003 SchemaProps: spec.SchemaProps{ 1004 Description: "Ref is a required reference to a custom resource offered by a provider.", 1005 Ref: ref("k8s.io/api/core/v1.ObjectReference"), 1006 }, 1007 }, 1008 "machineInfrastructure": { 1009 SchemaProps: spec.SchemaProps{ 1010 Description: "MachineInfrastructure defines the metadata and infrastructure information for control plane machines.\n\nThis field is supported if and only if the control plane provider template referenced above is Machine based and supports setting replicas.", 1011 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.LocalObjectTemplate"), 1012 }, 1013 }, 1014 "machineHealthCheck": { 1015 SchemaProps: spec.SchemaProps{ 1016 Description: "MachineHealthCheck defines a MachineHealthCheck for this ControlPlaneClass. This field is supported if and only if the ControlPlane provider template referenced above is Machine based and supports setting replicas.", 1017 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheckClass"), 1018 }, 1019 }, 1020 "namingStrategy": { 1021 SchemaProps: spec.SchemaProps{ 1022 Description: "NamingStrategy allows changing the naming pattern used when creating the control plane provider object.", 1023 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ControlPlaneClassNamingStrategy"), 1024 }, 1025 }, 1026 "nodeDrainTimeout": { 1027 SchemaProps: spec.SchemaProps{ 1028 Description: "NodeDrainTimeout is the total amount of time that the controller will spend on draining a node. The default value is 0, meaning that the node can be drained without any time limitations. NOTE: NodeDrainTimeout is different from `kubectl drain --timeout` NOTE: This value can be overridden while defining a Cluster.Topology.", 1029 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 1030 }, 1031 }, 1032 "nodeVolumeDetachTimeout": { 1033 SchemaProps: spec.SchemaProps{ 1034 Description: "NodeVolumeDetachTimeout is the total amount of time that the controller will spend on waiting for all volumes to be detached. The default value is 0, meaning that the volumes can be detached without any time limitations. NOTE: This value can be overridden while defining a Cluster.Topology.", 1035 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 1036 }, 1037 }, 1038 "nodeDeletionTimeout": { 1039 SchemaProps: spec.SchemaProps{ 1040 Description: "NodeDeletionTimeout defines how long the controller will attempt to delete the Node that the Machine hosts after the Machine is marked for deletion. A duration of 0 will retry deletion indefinitely. Defaults to 10 seconds. NOTE: This value can be overridden while defining a Cluster.Topology.", 1041 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 1042 }, 1043 }, 1044 }, 1045 Required: []string{"ref"}, 1046 }, 1047 }, 1048 Dependencies: []string{ 1049 "k8s.io/api/core/v1.ObjectReference", "k8s.io/apimachinery/pkg/apis/meta/v1.Duration", "sigs.k8s.io/cluster-api/api/v1beta1.ControlPlaneClassNamingStrategy", "sigs.k8s.io/cluster-api/api/v1beta1.LocalObjectTemplate", "sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheckClass", "sigs.k8s.io/cluster-api/api/v1beta1.ObjectMeta"}, 1050 } 1051 } 1052 1053 func schema_sigsk8sio_cluster_api_api_v1beta1_ControlPlaneClassNamingStrategy(ref common.ReferenceCallback) common.OpenAPIDefinition { 1054 return common.OpenAPIDefinition{ 1055 Schema: spec.Schema{ 1056 SchemaProps: spec.SchemaProps{ 1057 Description: "ControlPlaneClassNamingStrategy defines the naming strategy for control plane objects.", 1058 Type: []string{"object"}, 1059 Properties: map[string]spec.Schema{ 1060 "template": { 1061 SchemaProps: spec.SchemaProps{ 1062 Description: "Template defines the template to use for generating the name of the ControlPlane object. If not defined, it will fallback to `{{ .cluster.name }}-{{ .random }}`. If the templated string exceeds 63 characters, it will be trimmed to 58 characters and will get concatenated with a random suffix of length 5. The templating mechanism provides the following arguments: * `.cluster.name`: The name of the cluster object. * `.random`: A random alphanumeric string, without vowels, of length 5.", 1063 Type: []string{"string"}, 1064 Format: "", 1065 }, 1066 }, 1067 }, 1068 }, 1069 }, 1070 } 1071 } 1072 1073 func schema_sigsk8sio_cluster_api_api_v1beta1_ControlPlaneTopology(ref common.ReferenceCallback) common.OpenAPIDefinition { 1074 return common.OpenAPIDefinition{ 1075 Schema: spec.Schema{ 1076 SchemaProps: spec.SchemaProps{ 1077 Description: "ControlPlaneTopology specifies the parameters for the control plane nodes in the cluster.", 1078 Type: []string{"object"}, 1079 Properties: map[string]spec.Schema{ 1080 "metadata": { 1081 SchemaProps: spec.SchemaProps{ 1082 Description: "Metadata is the metadata applied to the ControlPlane and the Machines of the ControlPlane if the ControlPlaneTemplate referenced by the ClusterClass is machine based. If not, it is applied only to the ControlPlane. At runtime this metadata is merged with the corresponding metadata from the ClusterClass.", 1083 Default: map[string]interface{}{}, 1084 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ObjectMeta"), 1085 }, 1086 }, 1087 "replicas": { 1088 SchemaProps: spec.SchemaProps{ 1089 Description: "Replicas is the number of control plane nodes. If the value is nil, the ControlPlane object is created without the number of Replicas and it's assumed that the control plane controller does not implement support for this field. When specified against a control plane provider that lacks support for this field, this value will be ignored.", 1090 Type: []string{"integer"}, 1091 Format: "int32", 1092 }, 1093 }, 1094 "machineHealthCheck": { 1095 SchemaProps: spec.SchemaProps{ 1096 Description: "MachineHealthCheck allows to enable, disable and override the MachineHealthCheck configuration in the ClusterClass for this control plane.", 1097 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheckTopology"), 1098 }, 1099 }, 1100 "nodeDrainTimeout": { 1101 SchemaProps: spec.SchemaProps{ 1102 Description: "NodeDrainTimeout is the total amount of time that the controller will spend on draining a node. The default value is 0, meaning that the node can be drained without any time limitations. NOTE: NodeDrainTimeout is different from `kubectl drain --timeout`", 1103 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 1104 }, 1105 }, 1106 "nodeVolumeDetachTimeout": { 1107 SchemaProps: spec.SchemaProps{ 1108 Description: "NodeVolumeDetachTimeout is the total amount of time that the controller will spend on waiting for all volumes to be detached. The default value is 0, meaning that the volumes can be detached without any time limitations.", 1109 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 1110 }, 1111 }, 1112 "nodeDeletionTimeout": { 1113 SchemaProps: spec.SchemaProps{ 1114 Description: "NodeDeletionTimeout defines how long the controller will attempt to delete the Node that the Machine hosts after the Machine is marked for deletion. A duration of 0 will retry deletion indefinitely. Defaults to 10 seconds.", 1115 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 1116 }, 1117 }, 1118 }, 1119 }, 1120 }, 1121 Dependencies: []string{ 1122 "k8s.io/apimachinery/pkg/apis/meta/v1.Duration", "sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheckTopology", "sigs.k8s.io/cluster-api/api/v1beta1.ObjectMeta"}, 1123 } 1124 } 1125 1126 func schema_sigsk8sio_cluster_api_api_v1beta1_ExternalPatchDefinition(ref common.ReferenceCallback) common.OpenAPIDefinition { 1127 return common.OpenAPIDefinition{ 1128 Schema: spec.Schema{ 1129 SchemaProps: spec.SchemaProps{ 1130 Description: "ExternalPatchDefinition defines an external patch. Note: At least one of GenerateExtension or ValidateExtension must be set.", 1131 Type: []string{"object"}, 1132 Properties: map[string]spec.Schema{ 1133 "generateExtension": { 1134 SchemaProps: spec.SchemaProps{ 1135 Description: "GenerateExtension references an extension which is called to generate patches.", 1136 Type: []string{"string"}, 1137 Format: "", 1138 }, 1139 }, 1140 "validateExtension": { 1141 SchemaProps: spec.SchemaProps{ 1142 Description: "ValidateExtension references an extension which is called to validate the topology.", 1143 Type: []string{"string"}, 1144 Format: "", 1145 }, 1146 }, 1147 "discoverVariablesExtension": { 1148 SchemaProps: spec.SchemaProps{ 1149 Description: "DiscoverVariablesExtension references an extension which is called to discover variables.", 1150 Type: []string{"string"}, 1151 Format: "", 1152 }, 1153 }, 1154 "settings": { 1155 SchemaProps: spec.SchemaProps{ 1156 Description: "Settings defines key value pairs to be passed to the extensions. Values defined here take precedence over the values defined in the corresponding ExtensionConfig.", 1157 Type: []string{"object"}, 1158 AdditionalProperties: &spec.SchemaOrBool{ 1159 Allows: true, 1160 Schema: &spec.Schema{ 1161 SchemaProps: spec.SchemaProps{ 1162 Default: "", 1163 Type: []string{"string"}, 1164 Format: "", 1165 }, 1166 }, 1167 }, 1168 }, 1169 }, 1170 }, 1171 }, 1172 }, 1173 } 1174 } 1175 1176 func schema_sigsk8sio_cluster_api_api_v1beta1_FailureDomainSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { 1177 return common.OpenAPIDefinition{ 1178 Schema: spec.Schema{ 1179 SchemaProps: spec.SchemaProps{ 1180 Description: "FailureDomainSpec is the Schema for Cluster API failure domains. It allows controllers to understand how many failure domains a cluster can optionally span across.", 1181 Type: []string{"object"}, 1182 Properties: map[string]spec.Schema{ 1183 "controlPlane": { 1184 SchemaProps: spec.SchemaProps{ 1185 Description: "ControlPlane determines if this failure domain is suitable for use by control plane machines.", 1186 Type: []string{"boolean"}, 1187 Format: "", 1188 }, 1189 }, 1190 "attributes": { 1191 SchemaProps: spec.SchemaProps{ 1192 Description: "Attributes is a free form map of attributes an infrastructure provider might use or require.", 1193 Type: []string{"object"}, 1194 AdditionalProperties: &spec.SchemaOrBool{ 1195 Allows: true, 1196 Schema: &spec.Schema{ 1197 SchemaProps: spec.SchemaProps{ 1198 Default: "", 1199 Type: []string{"string"}, 1200 Format: "", 1201 }, 1202 }, 1203 }, 1204 }, 1205 }, 1206 }, 1207 }, 1208 }, 1209 } 1210 } 1211 1212 func schema_sigsk8sio_cluster_api_api_v1beta1_JSONPatch(ref common.ReferenceCallback) common.OpenAPIDefinition { 1213 return common.OpenAPIDefinition{ 1214 Schema: spec.Schema{ 1215 SchemaProps: spec.SchemaProps{ 1216 Description: "JSONPatch defines a JSON patch.", 1217 Type: []string{"object"}, 1218 Properties: map[string]spec.Schema{ 1219 "op": { 1220 SchemaProps: spec.SchemaProps{ 1221 Description: "Op defines the operation of the patch. Note: Only `add`, `replace` and `remove` are supported.", 1222 Default: "", 1223 Type: []string{"string"}, 1224 Format: "", 1225 }, 1226 }, 1227 "path": { 1228 SchemaProps: spec.SchemaProps{ 1229 Description: "Path defines the path of the patch. Note: Only the spec of a template can be patched, thus the path has to start with /spec/. Note: For now the only allowed array modifications are `append` and `prepend`, i.e.: * for op: `add`: only index 0 (prepend) and - (append) are allowed * for op: `replace` or `remove`: no indexes are allowed", 1230 Default: "", 1231 Type: []string{"string"}, 1232 Format: "", 1233 }, 1234 }, 1235 "value": { 1236 SchemaProps: spec.SchemaProps{ 1237 Description: "Value defines the value of the patch. Note: Either Value or ValueFrom is required for add and replace operations. Only one of them is allowed to be set at the same time. Note: We have to use apiextensionsv1.JSON instead of our JSON type, because controller-tools has a hard-coded schema for apiextensionsv1.JSON which cannot be produced by another type (unset type field). Ref: https://github.com/kubernetes-sigs/controller-tools/blob/d0e03a142d0ecdd5491593e941ee1d6b5d91dba6/pkg/crd/known_types.go#L106-L111", 1238 Ref: ref("k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSON"), 1239 }, 1240 }, 1241 "valueFrom": { 1242 SchemaProps: spec.SchemaProps{ 1243 Description: "ValueFrom defines the value of the patch. Note: Either Value or ValueFrom is required for add and replace operations. Only one of them is allowed to be set at the same time.", 1244 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.JSONPatchValue"), 1245 }, 1246 }, 1247 }, 1248 Required: []string{"op", "path"}, 1249 }, 1250 }, 1251 Dependencies: []string{ 1252 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSON", "sigs.k8s.io/cluster-api/api/v1beta1.JSONPatchValue"}, 1253 } 1254 } 1255 1256 func schema_sigsk8sio_cluster_api_api_v1beta1_JSONPatchValue(ref common.ReferenceCallback) common.OpenAPIDefinition { 1257 return common.OpenAPIDefinition{ 1258 Schema: spec.Schema{ 1259 SchemaProps: spec.SchemaProps{ 1260 Description: "JSONPatchValue defines the value of a patch. Note: Only one of the fields is allowed to be set at the same time.", 1261 Type: []string{"object"}, 1262 Properties: map[string]spec.Schema{ 1263 "variable": { 1264 SchemaProps: spec.SchemaProps{ 1265 Description: "Variable is the variable to be used as value. Variable can be one of the variables defined in .spec.variables or a builtin variable.", 1266 Type: []string{"string"}, 1267 Format: "", 1268 }, 1269 }, 1270 "template": { 1271 SchemaProps: spec.SchemaProps{ 1272 Description: "Template is the Go template to be used to calculate the value. A template can reference variables defined in .spec.variables and builtin variables. Note: The template must evaluate to a valid YAML or JSON value.", 1273 Type: []string{"string"}, 1274 Format: "", 1275 }, 1276 }, 1277 }, 1278 }, 1279 }, 1280 } 1281 } 1282 1283 func schema_sigsk8sio_cluster_api_api_v1beta1_JSONSchemaProps(ref common.ReferenceCallback) common.OpenAPIDefinition { 1284 return common.OpenAPIDefinition{ 1285 Schema: spec.Schema{ 1286 SchemaProps: spec.SchemaProps{ 1287 Description: "JSONSchemaProps is a JSON-Schema following Specification Draft 4 (http://json-schema.org/). This struct has been initially copied from apiextensionsv1.JSONSchemaProps, but all fields which are not supported in CAPI have been removed.", 1288 Type: []string{"object"}, 1289 Properties: map[string]spec.Schema{ 1290 "description": { 1291 SchemaProps: spec.SchemaProps{ 1292 Description: "Description is a human-readable description of this variable.", 1293 Type: []string{"string"}, 1294 Format: "", 1295 }, 1296 }, 1297 "example": { 1298 SchemaProps: spec.SchemaProps{ 1299 Description: "Example is an example for this variable.", 1300 Ref: ref("k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSON"), 1301 }, 1302 }, 1303 "type": { 1304 SchemaProps: spec.SchemaProps{ 1305 Description: "Type is the type of the variable. Valid values are: object, array, string, integer, number or boolean.", 1306 Default: "", 1307 Type: []string{"string"}, 1308 Format: "", 1309 }, 1310 }, 1311 "properties": { 1312 SchemaProps: spec.SchemaProps{ 1313 Description: "Properties specifies fields of an object. NOTE: Can only be set if type is object. NOTE: Properties is mutually exclusive with AdditionalProperties. NOTE: This field uses PreserveUnknownFields and Schemaless, because recursive validation is not possible.", 1314 Type: []string{"object"}, 1315 AdditionalProperties: &spec.SchemaOrBool{ 1316 Allows: true, 1317 Schema: &spec.Schema{ 1318 SchemaProps: spec.SchemaProps{ 1319 Default: map[string]interface{}{}, 1320 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.JSONSchemaProps"), 1321 }, 1322 }, 1323 }, 1324 }, 1325 }, 1326 "additionalProperties": { 1327 SchemaProps: spec.SchemaProps{ 1328 Description: "AdditionalProperties specifies the schema of values in a map (keys are always strings). NOTE: Can only be set if type is object. NOTE: AdditionalProperties is mutually exclusive with Properties. NOTE: This field uses PreserveUnknownFields and Schemaless, because recursive validation is not possible.", 1329 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.JSONSchemaProps"), 1330 }, 1331 }, 1332 "required": { 1333 SchemaProps: spec.SchemaProps{ 1334 Description: "Required specifies which fields of an object are required. NOTE: Can only be set if type is object.", 1335 Type: []string{"array"}, 1336 Items: &spec.SchemaOrArray{ 1337 Schema: &spec.Schema{ 1338 SchemaProps: spec.SchemaProps{ 1339 Default: "", 1340 Type: []string{"string"}, 1341 Format: "", 1342 }, 1343 }, 1344 }, 1345 }, 1346 }, 1347 "items": { 1348 SchemaProps: spec.SchemaProps{ 1349 Description: "Items specifies fields of an array. NOTE: Can only be set if type is array. NOTE: This field uses PreserveUnknownFields and Schemaless, because recursive validation is not possible.", 1350 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.JSONSchemaProps"), 1351 }, 1352 }, 1353 "maxItems": { 1354 SchemaProps: spec.SchemaProps{ 1355 Description: "MaxItems is the max length of an array variable. NOTE: Can only be set if type is array.", 1356 Type: []string{"integer"}, 1357 Format: "int64", 1358 }, 1359 }, 1360 "minItems": { 1361 SchemaProps: spec.SchemaProps{ 1362 Description: "MinItems is the min length of an array variable. NOTE: Can only be set if type is array.", 1363 Type: []string{"integer"}, 1364 Format: "int64", 1365 }, 1366 }, 1367 "uniqueItems": { 1368 SchemaProps: spec.SchemaProps{ 1369 Description: "UniqueItems specifies if items in an array must be unique. NOTE: Can only be set if type is array.", 1370 Type: []string{"boolean"}, 1371 Format: "", 1372 }, 1373 }, 1374 "format": { 1375 SchemaProps: spec.SchemaProps{ 1376 Description: "Format is an OpenAPI v3 format string. Unknown formats are ignored. For a list of supported formats please see: (of the k8s.io/apiextensions-apiserver version we're currently using) https://github.com/kubernetes/apiextensions-apiserver/blob/master/pkg/apiserver/validation/formats.go NOTE: Can only be set if type is string.", 1377 Type: []string{"string"}, 1378 Format: "", 1379 }, 1380 }, 1381 "maxLength": { 1382 SchemaProps: spec.SchemaProps{ 1383 Description: "MaxLength is the max length of a string variable. NOTE: Can only be set if type is string.", 1384 Type: []string{"integer"}, 1385 Format: "int64", 1386 }, 1387 }, 1388 "minLength": { 1389 SchemaProps: spec.SchemaProps{ 1390 Description: "MinLength is the min length of a string variable. NOTE: Can only be set if type is string.", 1391 Type: []string{"integer"}, 1392 Format: "int64", 1393 }, 1394 }, 1395 "pattern": { 1396 SchemaProps: spec.SchemaProps{ 1397 Description: "Pattern is the regex which a string variable must match. NOTE: Can only be set if type is string.", 1398 Type: []string{"string"}, 1399 Format: "", 1400 }, 1401 }, 1402 "maximum": { 1403 SchemaProps: spec.SchemaProps{ 1404 Description: "Maximum is the maximum of an integer or number variable. If ExclusiveMaximum is false, the variable is valid if it is lower than, or equal to, the value of Maximum. If ExclusiveMaximum is true, the variable is valid if it is strictly lower than the value of Maximum. NOTE: Can only be set if type is integer or number.", 1405 Type: []string{"integer"}, 1406 Format: "int64", 1407 }, 1408 }, 1409 "exclusiveMaximum": { 1410 SchemaProps: spec.SchemaProps{ 1411 Description: "ExclusiveMaximum specifies if the Maximum is exclusive. NOTE: Can only be set if type is integer or number.", 1412 Type: []string{"boolean"}, 1413 Format: "", 1414 }, 1415 }, 1416 "minimum": { 1417 SchemaProps: spec.SchemaProps{ 1418 Description: "Minimum is the minimum of an integer or number variable. If ExclusiveMinimum is false, the variable is valid if it is greater than, or equal to, the value of Minimum. If ExclusiveMinimum is true, the variable is valid if it is strictly greater than the value of Minimum. NOTE: Can only be set if type is integer or number.", 1419 Type: []string{"integer"}, 1420 Format: "int64", 1421 }, 1422 }, 1423 "exclusiveMinimum": { 1424 SchemaProps: spec.SchemaProps{ 1425 Description: "ExclusiveMinimum specifies if the Minimum is exclusive. NOTE: Can only be set if type is integer or number.", 1426 Type: []string{"boolean"}, 1427 Format: "", 1428 }, 1429 }, 1430 "x-kubernetes-preserve-unknown-fields": { 1431 SchemaProps: spec.SchemaProps{ 1432 Description: "XPreserveUnknownFields allows setting fields in a variable object which are not defined in the variable schema. This affects fields recursively, except if nested properties or additionalProperties are specified in the schema.", 1433 Type: []string{"boolean"}, 1434 Format: "", 1435 }, 1436 }, 1437 "enum": { 1438 SchemaProps: spec.SchemaProps{ 1439 Description: "Enum is the list of valid values of the variable. NOTE: Can be set for all types.", 1440 Type: []string{"array"}, 1441 Items: &spec.SchemaOrArray{ 1442 Schema: &spec.Schema{ 1443 SchemaProps: spec.SchemaProps{ 1444 Ref: ref("k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSON"), 1445 }, 1446 }, 1447 }, 1448 }, 1449 }, 1450 "default": { 1451 SchemaProps: spec.SchemaProps{ 1452 Description: "Default is the default value of the variable. NOTE: Can be set for all types.", 1453 Ref: ref("k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSON"), 1454 }, 1455 }, 1456 }, 1457 Required: []string{"type"}, 1458 }, 1459 }, 1460 Dependencies: []string{ 1461 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSON", "sigs.k8s.io/cluster-api/api/v1beta1.JSONSchemaProps"}, 1462 } 1463 } 1464 1465 func schema_sigsk8sio_cluster_api_api_v1beta1_LocalObjectTemplate(ref common.ReferenceCallback) common.OpenAPIDefinition { 1466 return common.OpenAPIDefinition{ 1467 Schema: spec.Schema{ 1468 SchemaProps: spec.SchemaProps{ 1469 Description: "LocalObjectTemplate defines a template for a topology Class.", 1470 Type: []string{"object"}, 1471 Properties: map[string]spec.Schema{ 1472 "ref": { 1473 SchemaProps: spec.SchemaProps{ 1474 Description: "Ref is a required reference to a custom resource offered by a provider.", 1475 Ref: ref("k8s.io/api/core/v1.ObjectReference"), 1476 }, 1477 }, 1478 }, 1479 Required: []string{"ref"}, 1480 }, 1481 }, 1482 Dependencies: []string{ 1483 "k8s.io/api/core/v1.ObjectReference"}, 1484 } 1485 } 1486 1487 func schema_sigsk8sio_cluster_api_api_v1beta1_Machine(ref common.ReferenceCallback) common.OpenAPIDefinition { 1488 return common.OpenAPIDefinition{ 1489 Schema: spec.Schema{ 1490 SchemaProps: spec.SchemaProps{ 1491 Description: "Machine is the Schema for the machines API.", 1492 Type: []string{"object"}, 1493 Properties: map[string]spec.Schema{ 1494 "kind": { 1495 SchemaProps: spec.SchemaProps{ 1496 Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", 1497 Type: []string{"string"}, 1498 Format: "", 1499 }, 1500 }, 1501 "apiVersion": { 1502 SchemaProps: spec.SchemaProps{ 1503 Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", 1504 Type: []string{"string"}, 1505 Format: "", 1506 }, 1507 }, 1508 "metadata": { 1509 SchemaProps: spec.SchemaProps{ 1510 Default: map[string]interface{}{}, 1511 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), 1512 }, 1513 }, 1514 "spec": { 1515 SchemaProps: spec.SchemaProps{ 1516 Default: map[string]interface{}{}, 1517 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineSpec"), 1518 }, 1519 }, 1520 "status": { 1521 SchemaProps: spec.SchemaProps{ 1522 Default: map[string]interface{}{}, 1523 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineStatus"), 1524 }, 1525 }, 1526 }, 1527 }, 1528 }, 1529 Dependencies: []string{ 1530 "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta", "sigs.k8s.io/cluster-api/api/v1beta1.MachineSpec", "sigs.k8s.io/cluster-api/api/v1beta1.MachineStatus"}, 1531 } 1532 } 1533 1534 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineAddress(ref common.ReferenceCallback) common.OpenAPIDefinition { 1535 return common.OpenAPIDefinition{ 1536 Schema: spec.Schema{ 1537 SchemaProps: spec.SchemaProps{ 1538 Description: "MachineAddress contains information for the node's address.", 1539 Type: []string{"object"}, 1540 Properties: map[string]spec.Schema{ 1541 "type": { 1542 SchemaProps: spec.SchemaProps{ 1543 Description: "Machine address type, one of Hostname, ExternalIP, InternalIP, ExternalDNS or InternalDNS.", 1544 Default: "", 1545 Type: []string{"string"}, 1546 Format: "", 1547 }, 1548 }, 1549 "address": { 1550 SchemaProps: spec.SchemaProps{ 1551 Description: "The machine address.", 1552 Default: "", 1553 Type: []string{"string"}, 1554 Format: "", 1555 }, 1556 }, 1557 }, 1558 Required: []string{"type", "address"}, 1559 }, 1560 }, 1561 } 1562 } 1563 1564 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeployment(ref common.ReferenceCallback) common.OpenAPIDefinition { 1565 return common.OpenAPIDefinition{ 1566 Schema: spec.Schema{ 1567 SchemaProps: spec.SchemaProps{ 1568 Description: "MachineDeployment is the Schema for the machinedeployments API.", 1569 Type: []string{"object"}, 1570 Properties: map[string]spec.Schema{ 1571 "kind": { 1572 SchemaProps: spec.SchemaProps{ 1573 Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", 1574 Type: []string{"string"}, 1575 Format: "", 1576 }, 1577 }, 1578 "apiVersion": { 1579 SchemaProps: spec.SchemaProps{ 1580 Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", 1581 Type: []string{"string"}, 1582 Format: "", 1583 }, 1584 }, 1585 "metadata": { 1586 SchemaProps: spec.SchemaProps{ 1587 Default: map[string]interface{}{}, 1588 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), 1589 }, 1590 }, 1591 "spec": { 1592 SchemaProps: spec.SchemaProps{ 1593 Default: map[string]interface{}{}, 1594 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentSpec"), 1595 }, 1596 }, 1597 "status": { 1598 SchemaProps: spec.SchemaProps{ 1599 Default: map[string]interface{}{}, 1600 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentStatus"), 1601 }, 1602 }, 1603 }, 1604 }, 1605 }, 1606 Dependencies: []string{ 1607 "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta", "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentSpec", "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentStatus"}, 1608 } 1609 } 1610 1611 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeploymentClass(ref common.ReferenceCallback) common.OpenAPIDefinition { 1612 return common.OpenAPIDefinition{ 1613 Schema: spec.Schema{ 1614 SchemaProps: spec.SchemaProps{ 1615 Description: "MachineDeploymentClass serves as a template to define a set of worker nodes of the cluster provisioned using the `ClusterClass`.", 1616 Type: []string{"object"}, 1617 Properties: map[string]spec.Schema{ 1618 "class": { 1619 SchemaProps: spec.SchemaProps{ 1620 Description: "Class denotes a type of worker node present in the cluster, this name MUST be unique within a ClusterClass and can be referenced in the Cluster to create a managed MachineDeployment.", 1621 Default: "", 1622 Type: []string{"string"}, 1623 Format: "", 1624 }, 1625 }, 1626 "template": { 1627 SchemaProps: spec.SchemaProps{ 1628 Description: "Template is a local struct containing a collection of templates for creation of MachineDeployment objects representing a set of worker nodes.", 1629 Default: map[string]interface{}{}, 1630 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentClassTemplate"), 1631 }, 1632 }, 1633 "machineHealthCheck": { 1634 SchemaProps: spec.SchemaProps{ 1635 Description: "MachineHealthCheck defines a MachineHealthCheck for this MachineDeploymentClass.", 1636 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheckClass"), 1637 }, 1638 }, 1639 "failureDomain": { 1640 SchemaProps: spec.SchemaProps{ 1641 Description: "FailureDomain is the failure domain the machines will be created in. Must match a key in the FailureDomains map stored on the cluster object. NOTE: This value can be overridden while defining a Cluster.Topology using this MachineDeploymentClass.", 1642 Type: []string{"string"}, 1643 Format: "", 1644 }, 1645 }, 1646 "namingStrategy": { 1647 SchemaProps: spec.SchemaProps{ 1648 Description: "NamingStrategy allows changing the naming pattern used when creating the MachineDeployment.", 1649 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentClassNamingStrategy"), 1650 }, 1651 }, 1652 "nodeDrainTimeout": { 1653 SchemaProps: spec.SchemaProps{ 1654 Description: "NodeDrainTimeout is the total amount of time that the controller will spend on draining a node. The default value is 0, meaning that the node can be drained without any time limitations. NOTE: NodeDrainTimeout is different from `kubectl drain --timeout` NOTE: This value can be overridden while defining a Cluster.Topology using this MachineDeploymentClass.", 1655 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 1656 }, 1657 }, 1658 "nodeVolumeDetachTimeout": { 1659 SchemaProps: spec.SchemaProps{ 1660 Description: "NodeVolumeDetachTimeout is the total amount of time that the controller will spend on waiting for all volumes to be detached. The default value is 0, meaning that the volumes can be detached without any time limitations. NOTE: This value can be overridden while defining a Cluster.Topology using this MachineDeploymentClass.", 1661 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 1662 }, 1663 }, 1664 "nodeDeletionTimeout": { 1665 SchemaProps: spec.SchemaProps{ 1666 Description: "NodeDeletionTimeout defines how long the controller will attempt to delete the Node that the Machine hosts after the Machine is marked for deletion. A duration of 0 will retry deletion indefinitely. Defaults to 10 seconds. NOTE: This value can be overridden while defining a Cluster.Topology using this MachineDeploymentClass.", 1667 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 1668 }, 1669 }, 1670 "minReadySeconds": { 1671 SchemaProps: spec.SchemaProps{ 1672 Description: "Minimum number of seconds for which a newly created machine should be ready. Defaults to 0 (machine will be considered available as soon as it is ready) NOTE: This value can be overridden while defining a Cluster.Topology using this MachineDeploymentClass.", 1673 Type: []string{"integer"}, 1674 Format: "int32", 1675 }, 1676 }, 1677 "strategy": { 1678 SchemaProps: spec.SchemaProps{ 1679 Description: "The deployment strategy to use to replace existing machines with new ones. NOTE: This value can be overridden while defining a Cluster.Topology using this MachineDeploymentClass.", 1680 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentStrategy"), 1681 }, 1682 }, 1683 }, 1684 Required: []string{"class", "template"}, 1685 }, 1686 }, 1687 Dependencies: []string{ 1688 "k8s.io/apimachinery/pkg/apis/meta/v1.Duration", "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentClassNamingStrategy", "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentClassTemplate", "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentStrategy", "sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheckClass"}, 1689 } 1690 } 1691 1692 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeploymentClassNamingStrategy(ref common.ReferenceCallback) common.OpenAPIDefinition { 1693 return common.OpenAPIDefinition{ 1694 Schema: spec.Schema{ 1695 SchemaProps: spec.SchemaProps{ 1696 Description: "MachineDeploymentClassNamingStrategy defines the naming strategy for machine deployment objects.", 1697 Type: []string{"object"}, 1698 Properties: map[string]spec.Schema{ 1699 "template": { 1700 SchemaProps: spec.SchemaProps{ 1701 Description: "Template defines the template to use for generating the name of the MachineDeployment object. If not defined, it will fallback to `{{ .cluster.name }}-{{ .machineDeployment.topologyName }}-{{ .random }}`. If the templated string exceeds 63 characters, it will be trimmed to 58 characters and will get concatenated with a random suffix of length 5. The templating mechanism provides the following arguments: * `.cluster.name`: The name of the cluster object. * `.random`: A random alphanumeric string, without vowels, of length 5. * `.machineDeployment.topologyName`: The name of the MachineDeployment topology (Cluster.spec.topology.workers.machineDeployments[].name).", 1702 Type: []string{"string"}, 1703 Format: "", 1704 }, 1705 }, 1706 }, 1707 }, 1708 }, 1709 } 1710 } 1711 1712 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeploymentClassTemplate(ref common.ReferenceCallback) common.OpenAPIDefinition { 1713 return common.OpenAPIDefinition{ 1714 Schema: spec.Schema{ 1715 SchemaProps: spec.SchemaProps{ 1716 Description: "MachineDeploymentClassTemplate defines how a MachineDeployment generated from a MachineDeploymentClass should look like.", 1717 Type: []string{"object"}, 1718 Properties: map[string]spec.Schema{ 1719 "metadata": { 1720 SchemaProps: spec.SchemaProps{ 1721 Description: "Metadata is the metadata applied to the MachineDeployment and the machines of the MachineDeployment. At runtime this metadata is merged with the corresponding metadata from the topology.", 1722 Default: map[string]interface{}{}, 1723 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ObjectMeta"), 1724 }, 1725 }, 1726 "bootstrap": { 1727 SchemaProps: spec.SchemaProps{ 1728 Description: "Bootstrap contains the bootstrap template reference to be used for the creation of worker Machines.", 1729 Default: map[string]interface{}{}, 1730 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.LocalObjectTemplate"), 1731 }, 1732 }, 1733 "infrastructure": { 1734 SchemaProps: spec.SchemaProps{ 1735 Description: "Infrastructure contains the infrastructure template reference to be used for the creation of worker Machines.", 1736 Default: map[string]interface{}{}, 1737 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.LocalObjectTemplate"), 1738 }, 1739 }, 1740 }, 1741 Required: []string{"bootstrap", "infrastructure"}, 1742 }, 1743 }, 1744 Dependencies: []string{ 1745 "sigs.k8s.io/cluster-api/api/v1beta1.LocalObjectTemplate", "sigs.k8s.io/cluster-api/api/v1beta1.ObjectMeta"}, 1746 } 1747 } 1748 1749 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeploymentList(ref common.ReferenceCallback) common.OpenAPIDefinition { 1750 return common.OpenAPIDefinition{ 1751 Schema: spec.Schema{ 1752 SchemaProps: spec.SchemaProps{ 1753 Description: "MachineDeploymentList contains a list of MachineDeployment.", 1754 Type: []string{"object"}, 1755 Properties: map[string]spec.Schema{ 1756 "kind": { 1757 SchemaProps: spec.SchemaProps{ 1758 Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", 1759 Type: []string{"string"}, 1760 Format: "", 1761 }, 1762 }, 1763 "apiVersion": { 1764 SchemaProps: spec.SchemaProps{ 1765 Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", 1766 Type: []string{"string"}, 1767 Format: "", 1768 }, 1769 }, 1770 "metadata": { 1771 SchemaProps: spec.SchemaProps{ 1772 Default: map[string]interface{}{}, 1773 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), 1774 }, 1775 }, 1776 "items": { 1777 SchemaProps: spec.SchemaProps{ 1778 Type: []string{"array"}, 1779 Items: &spec.SchemaOrArray{ 1780 Schema: &spec.Schema{ 1781 SchemaProps: spec.SchemaProps{ 1782 Default: map[string]interface{}{}, 1783 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineDeployment"), 1784 }, 1785 }, 1786 }, 1787 }, 1788 }, 1789 }, 1790 Required: []string{"items"}, 1791 }, 1792 }, 1793 Dependencies: []string{ 1794 "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta", "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeployment"}, 1795 } 1796 } 1797 1798 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeploymentSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { 1799 return common.OpenAPIDefinition{ 1800 Schema: spec.Schema{ 1801 SchemaProps: spec.SchemaProps{ 1802 Description: "MachineDeploymentSpec defines the desired state of MachineDeployment.", 1803 Type: []string{"object"}, 1804 Properties: map[string]spec.Schema{ 1805 "clusterName": { 1806 SchemaProps: spec.SchemaProps{ 1807 Description: "ClusterName is the name of the Cluster this object belongs to.", 1808 Default: "", 1809 Type: []string{"string"}, 1810 Format: "", 1811 }, 1812 }, 1813 "replicas": { 1814 SchemaProps: spec.SchemaProps{ 1815 Description: "Number of desired machines. This is a pointer to distinguish between explicit zero and not specified.\n\nDefaults to: * if the Kubernetes autoscaler min size and max size annotations are set:\n - if it's a new MachineDeployment, use min size\n - if the replicas field of the old MachineDeployment is < min size, use min size\n - if the replicas field of the old MachineDeployment is > max size, use max size\n - if the replicas field of the old MachineDeployment is in the (min size, max size) range, keep the value from the oldMD\n* otherwise use 1 Note: Defaulting will be run whenever the replicas field is not set: * A new MachineDeployment is created with replicas not set. * On an existing MachineDeployment the replicas field was first set and is now unset. Those cases are especially relevant for the following Kubernetes autoscaler use cases: * A new MachineDeployment is created and replicas should be managed by the autoscaler * An existing MachineDeployment which initially wasn't controlled by the autoscaler\n should be later controlled by the autoscaler", 1816 Type: []string{"integer"}, 1817 Format: "int32", 1818 }, 1819 }, 1820 "rolloutAfter": { 1821 SchemaProps: spec.SchemaProps{ 1822 Description: "RolloutAfter is a field to indicate a rollout should be performed after the specified time even if no changes have been made to the MachineDeployment. Example: In the YAML the time can be specified in the RFC3339 format. To specify the rolloutAfter target as March 9, 2023, at 9 am UTC use \"2023-03-09T09:00:00Z\".", 1823 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), 1824 }, 1825 }, 1826 "selector": { 1827 SchemaProps: spec.SchemaProps{ 1828 Description: "Label selector for machines. Existing MachineSets whose machines are selected by this will be the ones affected by this deployment. It must match the machine template's labels.", 1829 Default: map[string]interface{}{}, 1830 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"), 1831 }, 1832 }, 1833 "template": { 1834 SchemaProps: spec.SchemaProps{ 1835 Description: "Template describes the machines that will be created.", 1836 Default: map[string]interface{}{}, 1837 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineTemplateSpec"), 1838 }, 1839 }, 1840 "strategy": { 1841 SchemaProps: spec.SchemaProps{ 1842 Description: "The deployment strategy to use to replace existing machines with new ones.", 1843 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentStrategy"), 1844 }, 1845 }, 1846 "minReadySeconds": { 1847 SchemaProps: spec.SchemaProps{ 1848 Description: "MinReadySeconds is the minimum number of seconds for which a Node for a newly created machine should be ready before considering the replica available. Defaults to 0 (machine will be considered available as soon as the Node is ready)", 1849 Type: []string{"integer"}, 1850 Format: "int32", 1851 }, 1852 }, 1853 "revisionHistoryLimit": { 1854 SchemaProps: spec.SchemaProps{ 1855 Description: "The number of old MachineSets to retain to allow rollback. This is a pointer to distinguish between explicit zero and not specified. Defaults to 1.", 1856 Type: []string{"integer"}, 1857 Format: "int32", 1858 }, 1859 }, 1860 "paused": { 1861 SchemaProps: spec.SchemaProps{ 1862 Description: "Indicates that the deployment is paused.", 1863 Type: []string{"boolean"}, 1864 Format: "", 1865 }, 1866 }, 1867 "progressDeadlineSeconds": { 1868 SchemaProps: spec.SchemaProps{ 1869 Description: "The maximum time in seconds for a deployment to make progress before it is considered to be failed. The deployment controller will continue to process failed deployments and a condition with a ProgressDeadlineExceeded reason will be surfaced in the deployment status. Note that progress will not be estimated during the time a deployment is paused. Defaults to 600s.", 1870 Type: []string{"integer"}, 1871 Format: "int32", 1872 }, 1873 }, 1874 }, 1875 Required: []string{"clusterName", "selector", "template"}, 1876 }, 1877 }, 1878 Dependencies: []string{ 1879 "k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector", "k8s.io/apimachinery/pkg/apis/meta/v1.Time", "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentStrategy", "sigs.k8s.io/cluster-api/api/v1beta1.MachineTemplateSpec"}, 1880 } 1881 } 1882 1883 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeploymentStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { 1884 return common.OpenAPIDefinition{ 1885 Schema: spec.Schema{ 1886 SchemaProps: spec.SchemaProps{ 1887 Description: "MachineDeploymentStatus defines the observed state of MachineDeployment.", 1888 Type: []string{"object"}, 1889 Properties: map[string]spec.Schema{ 1890 "observedGeneration": { 1891 SchemaProps: spec.SchemaProps{ 1892 Description: "The generation observed by the deployment controller.", 1893 Type: []string{"integer"}, 1894 Format: "int64", 1895 }, 1896 }, 1897 "selector": { 1898 SchemaProps: spec.SchemaProps{ 1899 Description: "Selector is the same as the label selector but in the string format to avoid introspection by clients. The string will be in the same format as the query-param syntax. More info about label selectors: http://kubernetes.io/docs/user-guide/labels#label-selectors", 1900 Type: []string{"string"}, 1901 Format: "", 1902 }, 1903 }, 1904 "replicas": { 1905 SchemaProps: spec.SchemaProps{ 1906 Description: "Total number of non-terminated machines targeted by this deployment (their labels match the selector).", 1907 Default: 0, 1908 Type: []string{"integer"}, 1909 Format: "int32", 1910 }, 1911 }, 1912 "updatedReplicas": { 1913 SchemaProps: spec.SchemaProps{ 1914 Description: "Total number of non-terminated machines targeted by this deployment that have the desired template spec.", 1915 Default: 0, 1916 Type: []string{"integer"}, 1917 Format: "int32", 1918 }, 1919 }, 1920 "readyReplicas": { 1921 SchemaProps: spec.SchemaProps{ 1922 Description: "Total number of ready machines targeted by this deployment.", 1923 Default: 0, 1924 Type: []string{"integer"}, 1925 Format: "int32", 1926 }, 1927 }, 1928 "availableReplicas": { 1929 SchemaProps: spec.SchemaProps{ 1930 Description: "Total number of available machines (ready for at least minReadySeconds) targeted by this deployment.", 1931 Default: 0, 1932 Type: []string{"integer"}, 1933 Format: "int32", 1934 }, 1935 }, 1936 "unavailableReplicas": { 1937 SchemaProps: spec.SchemaProps{ 1938 Description: "Total number of unavailable machines targeted by this deployment. This is the total number of machines that are still required for the deployment to have 100% available capacity. They may either be machines that are running but not yet available or machines that still have not been created.", 1939 Default: 0, 1940 Type: []string{"integer"}, 1941 Format: "int32", 1942 }, 1943 }, 1944 "phase": { 1945 SchemaProps: spec.SchemaProps{ 1946 Description: "Phase represents the current phase of a MachineDeployment (ScalingUp, ScalingDown, Running, Failed, or Unknown).", 1947 Type: []string{"string"}, 1948 Format: "", 1949 }, 1950 }, 1951 "conditions": { 1952 SchemaProps: spec.SchemaProps{ 1953 Description: "Conditions defines current service state of the MachineDeployment.", 1954 Type: []string{"array"}, 1955 Items: &spec.SchemaOrArray{ 1956 Schema: &spec.Schema{ 1957 SchemaProps: spec.SchemaProps{ 1958 Default: map[string]interface{}{}, 1959 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.Condition"), 1960 }, 1961 }, 1962 }, 1963 }, 1964 }, 1965 }, 1966 }, 1967 }, 1968 Dependencies: []string{ 1969 "sigs.k8s.io/cluster-api/api/v1beta1.Condition"}, 1970 } 1971 } 1972 1973 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeploymentStrategy(ref common.ReferenceCallback) common.OpenAPIDefinition { 1974 return common.OpenAPIDefinition{ 1975 Schema: spec.Schema{ 1976 SchemaProps: spec.SchemaProps{ 1977 Description: "MachineDeploymentStrategy describes how to replace existing machines with new ones.", 1978 Type: []string{"object"}, 1979 Properties: map[string]spec.Schema{ 1980 "type": { 1981 SchemaProps: spec.SchemaProps{ 1982 Description: "Type of deployment. Allowed values are RollingUpdate and OnDelete. The default is RollingUpdate.", 1983 Type: []string{"string"}, 1984 Format: "", 1985 }, 1986 }, 1987 "rollingUpdate": { 1988 SchemaProps: spec.SchemaProps{ 1989 Description: "Rolling update config params. Present only if MachineDeploymentStrategyType = RollingUpdate.", 1990 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineRollingUpdateDeployment"), 1991 }, 1992 }, 1993 }, 1994 }, 1995 }, 1996 Dependencies: []string{ 1997 "sigs.k8s.io/cluster-api/api/v1beta1.MachineRollingUpdateDeployment"}, 1998 } 1999 } 2000 2001 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeploymentTopology(ref common.ReferenceCallback) common.OpenAPIDefinition { 2002 return common.OpenAPIDefinition{ 2003 Schema: spec.Schema{ 2004 SchemaProps: spec.SchemaProps{ 2005 Description: "MachineDeploymentTopology specifies the different parameters for a set of worker nodes in the topology. This set of nodes is managed by a MachineDeployment object whose lifecycle is managed by the Cluster controller.", 2006 Type: []string{"object"}, 2007 Properties: map[string]spec.Schema{ 2008 "metadata": { 2009 SchemaProps: spec.SchemaProps{ 2010 Description: "Metadata is the metadata applied to the MachineDeployment and the machines of the MachineDeployment. At runtime this metadata is merged with the corresponding metadata from the ClusterClass.", 2011 Default: map[string]interface{}{}, 2012 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ObjectMeta"), 2013 }, 2014 }, 2015 "class": { 2016 SchemaProps: spec.SchemaProps{ 2017 Description: "Class is the name of the MachineDeploymentClass used to create the set of worker nodes. This should match one of the deployment classes defined in the ClusterClass object mentioned in the `Cluster.Spec.Class` field.", 2018 Default: "", 2019 Type: []string{"string"}, 2020 Format: "", 2021 }, 2022 }, 2023 "name": { 2024 SchemaProps: spec.SchemaProps{ 2025 Description: "Name is the unique identifier for this MachineDeploymentTopology. The value is used with other unique identifiers to create a MachineDeployment's Name (e.g. cluster's name, etc). In case the name is greater than the allowed maximum length, the values are hashed together.", 2026 Default: "", 2027 Type: []string{"string"}, 2028 Format: "", 2029 }, 2030 }, 2031 "failureDomain": { 2032 SchemaProps: spec.SchemaProps{ 2033 Description: "FailureDomain is the failure domain the machines will be created in. Must match a key in the FailureDomains map stored on the cluster object.", 2034 Type: []string{"string"}, 2035 Format: "", 2036 }, 2037 }, 2038 "replicas": { 2039 SchemaProps: spec.SchemaProps{ 2040 Description: "Replicas is the number of worker nodes belonging to this set. If the value is nil, the MachineDeployment is created without the number of Replicas (defaulting to 1) and it's assumed that an external entity (like cluster autoscaler) is responsible for the management of this value.", 2041 Type: []string{"integer"}, 2042 Format: "int32", 2043 }, 2044 }, 2045 "machineHealthCheck": { 2046 SchemaProps: spec.SchemaProps{ 2047 Description: "MachineHealthCheck allows to enable, disable and override the MachineHealthCheck configuration in the ClusterClass for this MachineDeployment.", 2048 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheckTopology"), 2049 }, 2050 }, 2051 "nodeDrainTimeout": { 2052 SchemaProps: spec.SchemaProps{ 2053 Description: "NodeDrainTimeout is the total amount of time that the controller will spend on draining a node. The default value is 0, meaning that the node can be drained without any time limitations. NOTE: NodeDrainTimeout is different from `kubectl drain --timeout`", 2054 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 2055 }, 2056 }, 2057 "nodeVolumeDetachTimeout": { 2058 SchemaProps: spec.SchemaProps{ 2059 Description: "NodeVolumeDetachTimeout is the total amount of time that the controller will spend on waiting for all volumes to be detached. The default value is 0, meaning that the volumes can be detached without any time limitations.", 2060 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 2061 }, 2062 }, 2063 "nodeDeletionTimeout": { 2064 SchemaProps: spec.SchemaProps{ 2065 Description: "NodeDeletionTimeout defines how long the controller will attempt to delete the Node that the Machine hosts after the Machine is marked for deletion. A duration of 0 will retry deletion indefinitely. Defaults to 10 seconds.", 2066 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 2067 }, 2068 }, 2069 "minReadySeconds": { 2070 SchemaProps: spec.SchemaProps{ 2071 Description: "Minimum number of seconds for which a newly created machine should be ready. Defaults to 0 (machine will be considered available as soon as it is ready)", 2072 Type: []string{"integer"}, 2073 Format: "int32", 2074 }, 2075 }, 2076 "strategy": { 2077 SchemaProps: spec.SchemaProps{ 2078 Description: "The deployment strategy to use to replace existing machines with new ones.", 2079 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentStrategy"), 2080 }, 2081 }, 2082 "variables": { 2083 SchemaProps: spec.SchemaProps{ 2084 Description: "Variables can be used to customize the MachineDeployment through patches.", 2085 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentVariables"), 2086 }, 2087 }, 2088 }, 2089 Required: []string{"class", "name"}, 2090 }, 2091 }, 2092 Dependencies: []string{ 2093 "k8s.io/apimachinery/pkg/apis/meta/v1.Duration", "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentStrategy", "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentVariables", "sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheckTopology", "sigs.k8s.io/cluster-api/api/v1beta1.ObjectMeta"}, 2094 } 2095 } 2096 2097 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineDeploymentVariables(ref common.ReferenceCallback) common.OpenAPIDefinition { 2098 return common.OpenAPIDefinition{ 2099 Schema: spec.Schema{ 2100 SchemaProps: spec.SchemaProps{ 2101 Description: "MachineDeploymentVariables can be used to provide variables for a specific MachineDeployment.", 2102 Type: []string{"object"}, 2103 Properties: map[string]spec.Schema{ 2104 "overrides": { 2105 SchemaProps: spec.SchemaProps{ 2106 Description: "Overrides can be used to override Cluster level variables.", 2107 Type: []string{"array"}, 2108 Items: &spec.SchemaOrArray{ 2109 Schema: &spec.Schema{ 2110 SchemaProps: spec.SchemaProps{ 2111 Default: map[string]interface{}{}, 2112 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ClusterVariable"), 2113 }, 2114 }, 2115 }, 2116 }, 2117 }, 2118 }, 2119 }, 2120 }, 2121 Dependencies: []string{ 2122 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterVariable"}, 2123 } 2124 } 2125 2126 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineHealthCheck(ref common.ReferenceCallback) common.OpenAPIDefinition { 2127 return common.OpenAPIDefinition{ 2128 Schema: spec.Schema{ 2129 SchemaProps: spec.SchemaProps{ 2130 Description: "MachineHealthCheck is the Schema for the machinehealthchecks API.", 2131 Type: []string{"object"}, 2132 Properties: map[string]spec.Schema{ 2133 "kind": { 2134 SchemaProps: spec.SchemaProps{ 2135 Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", 2136 Type: []string{"string"}, 2137 Format: "", 2138 }, 2139 }, 2140 "apiVersion": { 2141 SchemaProps: spec.SchemaProps{ 2142 Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", 2143 Type: []string{"string"}, 2144 Format: "", 2145 }, 2146 }, 2147 "metadata": { 2148 SchemaProps: spec.SchemaProps{ 2149 Default: map[string]interface{}{}, 2150 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), 2151 }, 2152 }, 2153 "spec": { 2154 SchemaProps: spec.SchemaProps{ 2155 Description: "Specification of machine health check policy", 2156 Default: map[string]interface{}{}, 2157 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheckSpec"), 2158 }, 2159 }, 2160 "status": { 2161 SchemaProps: spec.SchemaProps{ 2162 Description: "Most recently observed status of MachineHealthCheck resource", 2163 Default: map[string]interface{}{}, 2164 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheckStatus"), 2165 }, 2166 }, 2167 }, 2168 }, 2169 }, 2170 Dependencies: []string{ 2171 "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta", "sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheckSpec", "sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheckStatus"}, 2172 } 2173 } 2174 2175 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineHealthCheckClass(ref common.ReferenceCallback) common.OpenAPIDefinition { 2176 return common.OpenAPIDefinition{ 2177 Schema: spec.Schema{ 2178 SchemaProps: spec.SchemaProps{ 2179 Description: "MachineHealthCheckClass defines a MachineHealthCheck for a group of Machines.", 2180 Type: []string{"object"}, 2181 Properties: map[string]spec.Schema{ 2182 "unhealthyConditions": { 2183 SchemaProps: spec.SchemaProps{ 2184 Description: "UnhealthyConditions contains a list of the conditions that determine whether a node is considered unhealthy. The conditions are combined in a logical OR, i.e. if any of the conditions is met, the node is unhealthy.", 2185 Type: []string{"array"}, 2186 Items: &spec.SchemaOrArray{ 2187 Schema: &spec.Schema{ 2188 SchemaProps: spec.SchemaProps{ 2189 Default: map[string]interface{}{}, 2190 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.UnhealthyCondition"), 2191 }, 2192 }, 2193 }, 2194 }, 2195 }, 2196 "maxUnhealthy": { 2197 SchemaProps: spec.SchemaProps{ 2198 Description: "Any further remediation is only allowed if at most \"MaxUnhealthy\" machines selected by \"selector\" are not healthy.", 2199 Ref: ref("k8s.io/apimachinery/pkg/util/intstr.IntOrString"), 2200 }, 2201 }, 2202 "unhealthyRange": { 2203 SchemaProps: spec.SchemaProps{ 2204 Description: "Any further remediation is only allowed if the number of machines selected by \"selector\" as not healthy is within the range of \"UnhealthyRange\". Takes precedence over MaxUnhealthy. Eg. \"[3-5]\" - This means that remediation will be allowed only when: (a) there are at least 3 unhealthy machines (and) (b) there are at most 5 unhealthy machines", 2205 Type: []string{"string"}, 2206 Format: "", 2207 }, 2208 }, 2209 "nodeStartupTimeout": { 2210 SchemaProps: spec.SchemaProps{ 2211 Description: "Machines older than this duration without a node will be considered to have failed and will be remediated. If you wish to disable this feature, set the value explicitly to 0.", 2212 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 2213 }, 2214 }, 2215 "remediationTemplate": { 2216 SchemaProps: spec.SchemaProps{ 2217 Description: "RemediationTemplate is a reference to a remediation template provided by an infrastructure provider.\n\nThis field is completely optional, when filled, the MachineHealthCheck controller creates a new object from the template referenced and hands off remediation of the machine to a controller that lives outside of Cluster API.", 2218 Ref: ref("k8s.io/api/core/v1.ObjectReference"), 2219 }, 2220 }, 2221 }, 2222 }, 2223 }, 2224 Dependencies: []string{ 2225 "k8s.io/api/core/v1.ObjectReference", "k8s.io/apimachinery/pkg/apis/meta/v1.Duration", "k8s.io/apimachinery/pkg/util/intstr.IntOrString", "sigs.k8s.io/cluster-api/api/v1beta1.UnhealthyCondition"}, 2226 } 2227 } 2228 2229 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineHealthCheckList(ref common.ReferenceCallback) common.OpenAPIDefinition { 2230 return common.OpenAPIDefinition{ 2231 Schema: spec.Schema{ 2232 SchemaProps: spec.SchemaProps{ 2233 Description: "MachineHealthCheckList contains a list of MachineHealthCheck.", 2234 Type: []string{"object"}, 2235 Properties: map[string]spec.Schema{ 2236 "kind": { 2237 SchemaProps: spec.SchemaProps{ 2238 Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", 2239 Type: []string{"string"}, 2240 Format: "", 2241 }, 2242 }, 2243 "apiVersion": { 2244 SchemaProps: spec.SchemaProps{ 2245 Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", 2246 Type: []string{"string"}, 2247 Format: "", 2248 }, 2249 }, 2250 "metadata": { 2251 SchemaProps: spec.SchemaProps{ 2252 Default: map[string]interface{}{}, 2253 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), 2254 }, 2255 }, 2256 "items": { 2257 SchemaProps: spec.SchemaProps{ 2258 Type: []string{"array"}, 2259 Items: &spec.SchemaOrArray{ 2260 Schema: &spec.Schema{ 2261 SchemaProps: spec.SchemaProps{ 2262 Default: map[string]interface{}{}, 2263 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheck"), 2264 }, 2265 }, 2266 }, 2267 }, 2268 }, 2269 }, 2270 Required: []string{"items"}, 2271 }, 2272 }, 2273 Dependencies: []string{ 2274 "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta", "sigs.k8s.io/cluster-api/api/v1beta1.MachineHealthCheck"}, 2275 } 2276 } 2277 2278 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineHealthCheckSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { 2279 return common.OpenAPIDefinition{ 2280 Schema: spec.Schema{ 2281 SchemaProps: spec.SchemaProps{ 2282 Description: "MachineHealthCheckSpec defines the desired state of MachineHealthCheck.", 2283 Type: []string{"object"}, 2284 Properties: map[string]spec.Schema{ 2285 "clusterName": { 2286 SchemaProps: spec.SchemaProps{ 2287 Description: "ClusterName is the name of the Cluster this object belongs to.", 2288 Default: "", 2289 Type: []string{"string"}, 2290 Format: "", 2291 }, 2292 }, 2293 "selector": { 2294 SchemaProps: spec.SchemaProps{ 2295 Description: "Label selector to match machines whose health will be exercised", 2296 Default: map[string]interface{}{}, 2297 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"), 2298 }, 2299 }, 2300 "unhealthyConditions": { 2301 SchemaProps: spec.SchemaProps{ 2302 Description: "UnhealthyConditions contains a list of the conditions that determine whether a node is considered unhealthy. The conditions are combined in a logical OR, i.e. if any of the conditions is met, the node is unhealthy.", 2303 Type: []string{"array"}, 2304 Items: &spec.SchemaOrArray{ 2305 Schema: &spec.Schema{ 2306 SchemaProps: spec.SchemaProps{ 2307 Default: map[string]interface{}{}, 2308 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.UnhealthyCondition"), 2309 }, 2310 }, 2311 }, 2312 }, 2313 }, 2314 "maxUnhealthy": { 2315 SchemaProps: spec.SchemaProps{ 2316 Description: "Any further remediation is only allowed if at most \"MaxUnhealthy\" machines selected by \"selector\" are not healthy.", 2317 Ref: ref("k8s.io/apimachinery/pkg/util/intstr.IntOrString"), 2318 }, 2319 }, 2320 "unhealthyRange": { 2321 SchemaProps: spec.SchemaProps{ 2322 Description: "Any further remediation is only allowed if the number of machines selected by \"selector\" as not healthy is within the range of \"UnhealthyRange\". Takes precedence over MaxUnhealthy. Eg. \"[3-5]\" - This means that remediation will be allowed only when: (a) there are at least 3 unhealthy machines (and) (b) there are at most 5 unhealthy machines", 2323 Type: []string{"string"}, 2324 Format: "", 2325 }, 2326 }, 2327 "nodeStartupTimeout": { 2328 SchemaProps: spec.SchemaProps{ 2329 Description: "Machines older than this duration without a node will be considered to have failed and will be remediated. If not set, this value is defaulted to 10 minutes. If you wish to disable this feature, set the value explicitly to 0.", 2330 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 2331 }, 2332 }, 2333 "remediationTemplate": { 2334 SchemaProps: spec.SchemaProps{ 2335 Description: "RemediationTemplate is a reference to a remediation template provided by an infrastructure provider.\n\nThis field is completely optional, when filled, the MachineHealthCheck controller creates a new object from the template referenced and hands off remediation of the machine to a controller that lives outside of Cluster API.", 2336 Ref: ref("k8s.io/api/core/v1.ObjectReference"), 2337 }, 2338 }, 2339 }, 2340 Required: []string{"clusterName", "selector", "unhealthyConditions"}, 2341 }, 2342 }, 2343 Dependencies: []string{ 2344 "k8s.io/api/core/v1.ObjectReference", "k8s.io/apimachinery/pkg/apis/meta/v1.Duration", "k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector", "k8s.io/apimachinery/pkg/util/intstr.IntOrString", "sigs.k8s.io/cluster-api/api/v1beta1.UnhealthyCondition"}, 2345 } 2346 } 2347 2348 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineHealthCheckStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { 2349 return common.OpenAPIDefinition{ 2350 Schema: spec.Schema{ 2351 SchemaProps: spec.SchemaProps{ 2352 Description: "MachineHealthCheckStatus defines the observed state of MachineHealthCheck.", 2353 Type: []string{"object"}, 2354 Properties: map[string]spec.Schema{ 2355 "expectedMachines": { 2356 SchemaProps: spec.SchemaProps{ 2357 Description: "total number of machines counted by this machine health check", 2358 Default: 0, 2359 Type: []string{"integer"}, 2360 Format: "int32", 2361 }, 2362 }, 2363 "currentHealthy": { 2364 SchemaProps: spec.SchemaProps{ 2365 Description: "total number of healthy machines counted by this machine health check", 2366 Default: 0, 2367 Type: []string{"integer"}, 2368 Format: "int32", 2369 }, 2370 }, 2371 "remediationsAllowed": { 2372 SchemaProps: spec.SchemaProps{ 2373 Description: "RemediationsAllowed is the number of further remediations allowed by this machine health check before maxUnhealthy short circuiting will be applied", 2374 Default: 0, 2375 Type: []string{"integer"}, 2376 Format: "int32", 2377 }, 2378 }, 2379 "observedGeneration": { 2380 SchemaProps: spec.SchemaProps{ 2381 Description: "ObservedGeneration is the latest generation observed by the controller.", 2382 Type: []string{"integer"}, 2383 Format: "int64", 2384 }, 2385 }, 2386 "targets": { 2387 SchemaProps: spec.SchemaProps{ 2388 Description: "Targets shows the current list of machines the machine health check is watching", 2389 Type: []string{"array"}, 2390 Items: &spec.SchemaOrArray{ 2391 Schema: &spec.Schema{ 2392 SchemaProps: spec.SchemaProps{ 2393 Default: "", 2394 Type: []string{"string"}, 2395 Format: "", 2396 }, 2397 }, 2398 }, 2399 }, 2400 }, 2401 "conditions": { 2402 SchemaProps: spec.SchemaProps{ 2403 Description: "Conditions defines current service state of the MachineHealthCheck.", 2404 Type: []string{"array"}, 2405 Items: &spec.SchemaOrArray{ 2406 Schema: &spec.Schema{ 2407 SchemaProps: spec.SchemaProps{ 2408 Default: map[string]interface{}{}, 2409 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.Condition"), 2410 }, 2411 }, 2412 }, 2413 }, 2414 }, 2415 }, 2416 }, 2417 }, 2418 Dependencies: []string{ 2419 "sigs.k8s.io/cluster-api/api/v1beta1.Condition"}, 2420 } 2421 } 2422 2423 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineHealthCheckTopology(ref common.ReferenceCallback) common.OpenAPIDefinition { 2424 return common.OpenAPIDefinition{ 2425 Schema: spec.Schema{ 2426 SchemaProps: spec.SchemaProps{ 2427 Description: "MachineHealthCheckTopology defines a MachineHealthCheck for a group of machines.", 2428 Type: []string{"object"}, 2429 Properties: map[string]spec.Schema{ 2430 "enable": { 2431 SchemaProps: spec.SchemaProps{ 2432 Description: "Enable controls if a MachineHealthCheck should be created for the target machines.\n\nIf false: No MachineHealthCheck will be created.\n\nIf not set(default): A MachineHealthCheck will be created if it is defined here or\n in the associated ClusterClass. If no MachineHealthCheck is defined then none will be created.\n\nIf true: A MachineHealthCheck is guaranteed to be created. Cluster validation will block if `enable` is true and no MachineHealthCheck definition is available.", 2433 Type: []string{"boolean"}, 2434 Format: "", 2435 }, 2436 }, 2437 "unhealthyConditions": { 2438 SchemaProps: spec.SchemaProps{ 2439 Description: "UnhealthyConditions contains a list of the conditions that determine whether a node is considered unhealthy. The conditions are combined in a logical OR, i.e. if any of the conditions is met, the node is unhealthy.", 2440 Type: []string{"array"}, 2441 Items: &spec.SchemaOrArray{ 2442 Schema: &spec.Schema{ 2443 SchemaProps: spec.SchemaProps{ 2444 Default: map[string]interface{}{}, 2445 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.UnhealthyCondition"), 2446 }, 2447 }, 2448 }, 2449 }, 2450 }, 2451 "maxUnhealthy": { 2452 SchemaProps: spec.SchemaProps{ 2453 Description: "Any further remediation is only allowed if at most \"MaxUnhealthy\" machines selected by \"selector\" are not healthy.", 2454 Ref: ref("k8s.io/apimachinery/pkg/util/intstr.IntOrString"), 2455 }, 2456 }, 2457 "unhealthyRange": { 2458 SchemaProps: spec.SchemaProps{ 2459 Description: "Any further remediation is only allowed if the number of machines selected by \"selector\" as not healthy is within the range of \"UnhealthyRange\". Takes precedence over MaxUnhealthy. Eg. \"[3-5]\" - This means that remediation will be allowed only when: (a) there are at least 3 unhealthy machines (and) (b) there are at most 5 unhealthy machines", 2460 Type: []string{"string"}, 2461 Format: "", 2462 }, 2463 }, 2464 "nodeStartupTimeout": { 2465 SchemaProps: spec.SchemaProps{ 2466 Description: "Machines older than this duration without a node will be considered to have failed and will be remediated. If you wish to disable this feature, set the value explicitly to 0.", 2467 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 2468 }, 2469 }, 2470 "remediationTemplate": { 2471 SchemaProps: spec.SchemaProps{ 2472 Description: "RemediationTemplate is a reference to a remediation template provided by an infrastructure provider.\n\nThis field is completely optional, when filled, the MachineHealthCheck controller creates a new object from the template referenced and hands off remediation of the machine to a controller that lives outside of Cluster API.", 2473 Ref: ref("k8s.io/api/core/v1.ObjectReference"), 2474 }, 2475 }, 2476 }, 2477 }, 2478 }, 2479 Dependencies: []string{ 2480 "k8s.io/api/core/v1.ObjectReference", "k8s.io/apimachinery/pkg/apis/meta/v1.Duration", "k8s.io/apimachinery/pkg/util/intstr.IntOrString", "sigs.k8s.io/cluster-api/api/v1beta1.UnhealthyCondition"}, 2481 } 2482 } 2483 2484 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineList(ref common.ReferenceCallback) common.OpenAPIDefinition { 2485 return common.OpenAPIDefinition{ 2486 Schema: spec.Schema{ 2487 SchemaProps: spec.SchemaProps{ 2488 Description: "MachineList contains a list of Machine.", 2489 Type: []string{"object"}, 2490 Properties: map[string]spec.Schema{ 2491 "kind": { 2492 SchemaProps: spec.SchemaProps{ 2493 Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", 2494 Type: []string{"string"}, 2495 Format: "", 2496 }, 2497 }, 2498 "apiVersion": { 2499 SchemaProps: spec.SchemaProps{ 2500 Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", 2501 Type: []string{"string"}, 2502 Format: "", 2503 }, 2504 }, 2505 "metadata": { 2506 SchemaProps: spec.SchemaProps{ 2507 Default: map[string]interface{}{}, 2508 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), 2509 }, 2510 }, 2511 "items": { 2512 SchemaProps: spec.SchemaProps{ 2513 Type: []string{"array"}, 2514 Items: &spec.SchemaOrArray{ 2515 Schema: &spec.Schema{ 2516 SchemaProps: spec.SchemaProps{ 2517 Default: map[string]interface{}{}, 2518 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.Machine"), 2519 }, 2520 }, 2521 }, 2522 }, 2523 }, 2524 }, 2525 Required: []string{"items"}, 2526 }, 2527 }, 2528 Dependencies: []string{ 2529 "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta", "sigs.k8s.io/cluster-api/api/v1beta1.Machine"}, 2530 } 2531 } 2532 2533 func schema_sigsk8sio_cluster_api_api_v1beta1_MachinePoolClass(ref common.ReferenceCallback) common.OpenAPIDefinition { 2534 return common.OpenAPIDefinition{ 2535 Schema: spec.Schema{ 2536 SchemaProps: spec.SchemaProps{ 2537 Description: "MachinePoolClass serves as a template to define a pool of worker nodes of the cluster provisioned using `ClusterClass`.", 2538 Type: []string{"object"}, 2539 Properties: map[string]spec.Schema{ 2540 "class": { 2541 SchemaProps: spec.SchemaProps{ 2542 Description: "Class denotes a type of machine pool present in the cluster, this name MUST be unique within a ClusterClass and can be referenced in the Cluster to create a managed MachinePool.", 2543 Default: "", 2544 Type: []string{"string"}, 2545 Format: "", 2546 }, 2547 }, 2548 "template": { 2549 SchemaProps: spec.SchemaProps{ 2550 Description: "Template is a local struct containing a collection of templates for creation of MachinePools objects representing a pool of worker nodes.", 2551 Default: map[string]interface{}{}, 2552 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachinePoolClassTemplate"), 2553 }, 2554 }, 2555 "failureDomains": { 2556 SchemaProps: spec.SchemaProps{ 2557 Description: "FailureDomains is the list of failure domains the MachinePool should be attached to. Must match a key in the FailureDomains map stored on the cluster object. NOTE: This value can be overridden while defining a Cluster.Topology using this MachinePoolClass.", 2558 Type: []string{"array"}, 2559 Items: &spec.SchemaOrArray{ 2560 Schema: &spec.Schema{ 2561 SchemaProps: spec.SchemaProps{ 2562 Default: "", 2563 Type: []string{"string"}, 2564 Format: "", 2565 }, 2566 }, 2567 }, 2568 }, 2569 }, 2570 "namingStrategy": { 2571 SchemaProps: spec.SchemaProps{ 2572 Description: "NamingStrategy allows changing the naming pattern used when creating the MachinePool.", 2573 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachinePoolClassNamingStrategy"), 2574 }, 2575 }, 2576 "nodeDrainTimeout": { 2577 SchemaProps: spec.SchemaProps{ 2578 Description: "NodeDrainTimeout is the total amount of time that the controller will spend on draining a node. The default value is 0, meaning that the node can be drained without any time limitations. NOTE: NodeDrainTimeout is different from `kubectl drain --timeout` NOTE: This value can be overridden while defining a Cluster.Topology using this MachinePoolClass.", 2579 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 2580 }, 2581 }, 2582 "nodeVolumeDetachTimeout": { 2583 SchemaProps: spec.SchemaProps{ 2584 Description: "NodeVolumeDetachTimeout is the total amount of time that the controller will spend on waiting for all volumes to be detached. The default value is 0, meaning that the volumes can be detached without any time limitations. NOTE: This value can be overridden while defining a Cluster.Topology using this MachinePoolClass.", 2585 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 2586 }, 2587 }, 2588 "nodeDeletionTimeout": { 2589 SchemaProps: spec.SchemaProps{ 2590 Description: "NodeDeletionTimeout defines how long the controller will attempt to delete the Node that the Machine hosts after the Machine Pool is marked for deletion. A duration of 0 will retry deletion indefinitely. Defaults to 10 seconds. NOTE: This value can be overridden while defining a Cluster.Topology using this MachinePoolClass.", 2591 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 2592 }, 2593 }, 2594 "minReadySeconds": { 2595 SchemaProps: spec.SchemaProps{ 2596 Description: "Minimum number of seconds for which a newly created machine pool should be ready. Defaults to 0 (machine will be considered available as soon as it is ready) NOTE: This value can be overridden while defining a Cluster.Topology using this MachinePoolClass.", 2597 Type: []string{"integer"}, 2598 Format: "int32", 2599 }, 2600 }, 2601 }, 2602 Required: []string{"class", "template"}, 2603 }, 2604 }, 2605 Dependencies: []string{ 2606 "k8s.io/apimachinery/pkg/apis/meta/v1.Duration", "sigs.k8s.io/cluster-api/api/v1beta1.MachinePoolClassNamingStrategy", "sigs.k8s.io/cluster-api/api/v1beta1.MachinePoolClassTemplate"}, 2607 } 2608 } 2609 2610 func schema_sigsk8sio_cluster_api_api_v1beta1_MachinePoolClassNamingStrategy(ref common.ReferenceCallback) common.OpenAPIDefinition { 2611 return common.OpenAPIDefinition{ 2612 Schema: spec.Schema{ 2613 SchemaProps: spec.SchemaProps{ 2614 Description: "MachinePoolClassNamingStrategy defines the naming strategy for machine pool objects.", 2615 Type: []string{"object"}, 2616 Properties: map[string]spec.Schema{ 2617 "template": { 2618 SchemaProps: spec.SchemaProps{ 2619 Description: "Template defines the template to use for generating the name of the MachinePool object. If not defined, it will fallback to `{{ .cluster.name }}-{{ .machinePool.topologyName }}-{{ .random }}`. If the templated string exceeds 63 characters, it will be trimmed to 58 characters and will get concatenated with a random suffix of length 5. The templating mechanism provides the following arguments: * `.cluster.name`: The name of the cluster object. * `.random`: A random alphanumeric string, without vowels, of length 5. * `.machinePool.topologyName`: The name of the MachinePool topology (Cluster.spec.topology.workers.machinePools[].name).", 2620 Type: []string{"string"}, 2621 Format: "", 2622 }, 2623 }, 2624 }, 2625 }, 2626 }, 2627 } 2628 } 2629 2630 func schema_sigsk8sio_cluster_api_api_v1beta1_MachinePoolClassTemplate(ref common.ReferenceCallback) common.OpenAPIDefinition { 2631 return common.OpenAPIDefinition{ 2632 Schema: spec.Schema{ 2633 SchemaProps: spec.SchemaProps{ 2634 Description: "MachinePoolClassTemplate defines how a MachinePool generated from a MachinePoolClass should look like.", 2635 Type: []string{"object"}, 2636 Properties: map[string]spec.Schema{ 2637 "metadata": { 2638 SchemaProps: spec.SchemaProps{ 2639 Description: "Metadata is the metadata applied to the MachinePool. At runtime this metadata is merged with the corresponding metadata from the topology.", 2640 Default: map[string]interface{}{}, 2641 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ObjectMeta"), 2642 }, 2643 }, 2644 "bootstrap": { 2645 SchemaProps: spec.SchemaProps{ 2646 Description: "Bootstrap contains the bootstrap template reference to be used for the creation of the Machines in the MachinePool.", 2647 Default: map[string]interface{}{}, 2648 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.LocalObjectTemplate"), 2649 }, 2650 }, 2651 "infrastructure": { 2652 SchemaProps: spec.SchemaProps{ 2653 Description: "Infrastructure contains the infrastructure template reference to be used for the creation of the MachinePool.", 2654 Default: map[string]interface{}{}, 2655 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.LocalObjectTemplate"), 2656 }, 2657 }, 2658 }, 2659 Required: []string{"bootstrap", "infrastructure"}, 2660 }, 2661 }, 2662 Dependencies: []string{ 2663 "sigs.k8s.io/cluster-api/api/v1beta1.LocalObjectTemplate", "sigs.k8s.io/cluster-api/api/v1beta1.ObjectMeta"}, 2664 } 2665 } 2666 2667 func schema_sigsk8sio_cluster_api_api_v1beta1_MachinePoolTopology(ref common.ReferenceCallback) common.OpenAPIDefinition { 2668 return common.OpenAPIDefinition{ 2669 Schema: spec.Schema{ 2670 SchemaProps: spec.SchemaProps{ 2671 Description: "MachinePoolTopology specifies the different parameters for a pool of worker nodes in the topology. This pool of nodes is managed by a MachinePool object whose lifecycle is managed by the Cluster controller.", 2672 Type: []string{"object"}, 2673 Properties: map[string]spec.Schema{ 2674 "metadata": { 2675 SchemaProps: spec.SchemaProps{ 2676 Description: "Metadata is the metadata applied to the MachinePool. At runtime this metadata is merged with the corresponding metadata from the ClusterClass.", 2677 Default: map[string]interface{}{}, 2678 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ObjectMeta"), 2679 }, 2680 }, 2681 "class": { 2682 SchemaProps: spec.SchemaProps{ 2683 Description: "Class is the name of the MachinePoolClass used to create the pool of worker nodes. This should match one of the deployment classes defined in the ClusterClass object mentioned in the `Cluster.Spec.Class` field.", 2684 Default: "", 2685 Type: []string{"string"}, 2686 Format: "", 2687 }, 2688 }, 2689 "name": { 2690 SchemaProps: spec.SchemaProps{ 2691 Description: "Name is the unique identifier for this MachinePoolTopology. The value is used with other unique identifiers to create a MachinePool's Name (e.g. cluster's name, etc). In case the name is greater than the allowed maximum length, the values are hashed together.", 2692 Default: "", 2693 Type: []string{"string"}, 2694 Format: "", 2695 }, 2696 }, 2697 "failureDomains": { 2698 SchemaProps: spec.SchemaProps{ 2699 Description: "FailureDomains is the list of failure domains the machine pool will be created in. Must match a key in the FailureDomains map stored on the cluster object.", 2700 Type: []string{"array"}, 2701 Items: &spec.SchemaOrArray{ 2702 Schema: &spec.Schema{ 2703 SchemaProps: spec.SchemaProps{ 2704 Default: "", 2705 Type: []string{"string"}, 2706 Format: "", 2707 }, 2708 }, 2709 }, 2710 }, 2711 }, 2712 "nodeDrainTimeout": { 2713 SchemaProps: spec.SchemaProps{ 2714 Description: "NodeDrainTimeout is the total amount of time that the controller will spend on draining a node. The default value is 0, meaning that the node can be drained without any time limitations. NOTE: NodeDrainTimeout is different from `kubectl drain --timeout`", 2715 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 2716 }, 2717 }, 2718 "nodeVolumeDetachTimeout": { 2719 SchemaProps: spec.SchemaProps{ 2720 Description: "NodeVolumeDetachTimeout is the total amount of time that the controller will spend on waiting for all volumes to be detached. The default value is 0, meaning that the volumes can be detached without any time limitations.", 2721 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 2722 }, 2723 }, 2724 "nodeDeletionTimeout": { 2725 SchemaProps: spec.SchemaProps{ 2726 Description: "NodeDeletionTimeout defines how long the controller will attempt to delete the Node that the MachinePool hosts after the MachinePool is marked for deletion. A duration of 0 will retry deletion indefinitely. Defaults to 10 seconds.", 2727 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 2728 }, 2729 }, 2730 "minReadySeconds": { 2731 SchemaProps: spec.SchemaProps{ 2732 Description: "Minimum number of seconds for which a newly created machine pool should be ready. Defaults to 0 (machine will be considered available as soon as it is ready)", 2733 Type: []string{"integer"}, 2734 Format: "int32", 2735 }, 2736 }, 2737 "replicas": { 2738 SchemaProps: spec.SchemaProps{ 2739 Description: "Replicas is the number of nodes belonging to this pool. If the value is nil, the MachinePool is created without the number of Replicas (defaulting to 1) and it's assumed that an external entity (like cluster autoscaler) is responsible for the management of this value.", 2740 Type: []string{"integer"}, 2741 Format: "int32", 2742 }, 2743 }, 2744 "variables": { 2745 SchemaProps: spec.SchemaProps{ 2746 Description: "Variables can be used to customize the MachinePool through patches.", 2747 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachinePoolVariables"), 2748 }, 2749 }, 2750 }, 2751 Required: []string{"class", "name"}, 2752 }, 2753 }, 2754 Dependencies: []string{ 2755 "k8s.io/apimachinery/pkg/apis/meta/v1.Duration", "sigs.k8s.io/cluster-api/api/v1beta1.MachinePoolVariables", "sigs.k8s.io/cluster-api/api/v1beta1.ObjectMeta"}, 2756 } 2757 } 2758 2759 func schema_sigsk8sio_cluster_api_api_v1beta1_MachinePoolVariables(ref common.ReferenceCallback) common.OpenAPIDefinition { 2760 return common.OpenAPIDefinition{ 2761 Schema: spec.Schema{ 2762 SchemaProps: spec.SchemaProps{ 2763 Description: "MachinePoolVariables can be used to provide variables for a specific MachinePool.", 2764 Type: []string{"object"}, 2765 Properties: map[string]spec.Schema{ 2766 "overrides": { 2767 SchemaProps: spec.SchemaProps{ 2768 Description: "Overrides can be used to override Cluster level variables.", 2769 Type: []string{"array"}, 2770 Items: &spec.SchemaOrArray{ 2771 Schema: &spec.Schema{ 2772 SchemaProps: spec.SchemaProps{ 2773 Default: map[string]interface{}{}, 2774 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ClusterVariable"), 2775 }, 2776 }, 2777 }, 2778 }, 2779 }, 2780 }, 2781 }, 2782 }, 2783 Dependencies: []string{ 2784 "sigs.k8s.io/cluster-api/api/v1beta1.ClusterVariable"}, 2785 } 2786 } 2787 2788 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineRollingUpdateDeployment(ref common.ReferenceCallback) common.OpenAPIDefinition { 2789 return common.OpenAPIDefinition{ 2790 Schema: spec.Schema{ 2791 SchemaProps: spec.SchemaProps{ 2792 Description: "MachineRollingUpdateDeployment is used to control the desired behavior of rolling update.", 2793 Type: []string{"object"}, 2794 Properties: map[string]spec.Schema{ 2795 "maxUnavailable": { 2796 SchemaProps: spec.SchemaProps{ 2797 Description: "The maximum number of machines that can be unavailable during the update. Value can be an absolute number (ex: 5) or a percentage of desired machines (ex: 10%). Absolute number is calculated from percentage by rounding down. This can not be 0 if MaxSurge is 0. Defaults to 0. Example: when this is set to 30%, the old MachineSet can be scaled down to 70% of desired machines immediately when the rolling update starts. Once new machines are ready, old MachineSet can be scaled down further, followed by scaling up the new MachineSet, ensuring that the total number of machines available at all times during the update is at least 70% of desired machines.", 2798 Ref: ref("k8s.io/apimachinery/pkg/util/intstr.IntOrString"), 2799 }, 2800 }, 2801 "maxSurge": { 2802 SchemaProps: spec.SchemaProps{ 2803 Description: "The maximum number of machines that can be scheduled above the desired number of machines. Value can be an absolute number (ex: 5) or a percentage of desired machines (ex: 10%). This can not be 0 if MaxUnavailable is 0. Absolute number is calculated from percentage by rounding up. Defaults to 1. Example: when this is set to 30%, the new MachineSet can be scaled up immediately when the rolling update starts, such that the total number of old and new machines do not exceed 130% of desired machines. Once old machines have been killed, new MachineSet can be scaled up further, ensuring that total number of machines running at any time during the update is at most 130% of desired machines.", 2804 Ref: ref("k8s.io/apimachinery/pkg/util/intstr.IntOrString"), 2805 }, 2806 }, 2807 "deletePolicy": { 2808 SchemaProps: spec.SchemaProps{ 2809 Description: "DeletePolicy defines the policy used by the MachineDeployment to identify nodes to delete when downscaling. Valid values are \"Random, \"Newest\", \"Oldest\" When no value is supplied, the default DeletePolicy of MachineSet is used", 2810 Type: []string{"string"}, 2811 Format: "", 2812 }, 2813 }, 2814 }, 2815 }, 2816 }, 2817 Dependencies: []string{ 2818 "k8s.io/apimachinery/pkg/util/intstr.IntOrString"}, 2819 } 2820 } 2821 2822 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineSet(ref common.ReferenceCallback) common.OpenAPIDefinition { 2823 return common.OpenAPIDefinition{ 2824 Schema: spec.Schema{ 2825 SchemaProps: spec.SchemaProps{ 2826 Description: "MachineSet is the Schema for the machinesets API.", 2827 Type: []string{"object"}, 2828 Properties: map[string]spec.Schema{ 2829 "kind": { 2830 SchemaProps: spec.SchemaProps{ 2831 Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", 2832 Type: []string{"string"}, 2833 Format: "", 2834 }, 2835 }, 2836 "apiVersion": { 2837 SchemaProps: spec.SchemaProps{ 2838 Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", 2839 Type: []string{"string"}, 2840 Format: "", 2841 }, 2842 }, 2843 "metadata": { 2844 SchemaProps: spec.SchemaProps{ 2845 Default: map[string]interface{}{}, 2846 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), 2847 }, 2848 }, 2849 "spec": { 2850 SchemaProps: spec.SchemaProps{ 2851 Default: map[string]interface{}{}, 2852 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineSetSpec"), 2853 }, 2854 }, 2855 "status": { 2856 SchemaProps: spec.SchemaProps{ 2857 Default: map[string]interface{}{}, 2858 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineSetStatus"), 2859 }, 2860 }, 2861 }, 2862 }, 2863 }, 2864 Dependencies: []string{ 2865 "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta", "sigs.k8s.io/cluster-api/api/v1beta1.MachineSetSpec", "sigs.k8s.io/cluster-api/api/v1beta1.MachineSetStatus"}, 2866 } 2867 } 2868 2869 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineSetList(ref common.ReferenceCallback) common.OpenAPIDefinition { 2870 return common.OpenAPIDefinition{ 2871 Schema: spec.Schema{ 2872 SchemaProps: spec.SchemaProps{ 2873 Description: "MachineSetList contains a list of MachineSet.", 2874 Type: []string{"object"}, 2875 Properties: map[string]spec.Schema{ 2876 "kind": { 2877 SchemaProps: spec.SchemaProps{ 2878 Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", 2879 Type: []string{"string"}, 2880 Format: "", 2881 }, 2882 }, 2883 "apiVersion": { 2884 SchemaProps: spec.SchemaProps{ 2885 Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", 2886 Type: []string{"string"}, 2887 Format: "", 2888 }, 2889 }, 2890 "metadata": { 2891 SchemaProps: spec.SchemaProps{ 2892 Default: map[string]interface{}{}, 2893 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), 2894 }, 2895 }, 2896 "items": { 2897 SchemaProps: spec.SchemaProps{ 2898 Type: []string{"array"}, 2899 Items: &spec.SchemaOrArray{ 2900 Schema: &spec.Schema{ 2901 SchemaProps: spec.SchemaProps{ 2902 Default: map[string]interface{}{}, 2903 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineSet"), 2904 }, 2905 }, 2906 }, 2907 }, 2908 }, 2909 }, 2910 Required: []string{"items"}, 2911 }, 2912 }, 2913 Dependencies: []string{ 2914 "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta", "sigs.k8s.io/cluster-api/api/v1beta1.MachineSet"}, 2915 } 2916 } 2917 2918 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineSetSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { 2919 return common.OpenAPIDefinition{ 2920 Schema: spec.Schema{ 2921 SchemaProps: spec.SchemaProps{ 2922 Description: "MachineSetSpec defines the desired state of MachineSet.", 2923 Type: []string{"object"}, 2924 Properties: map[string]spec.Schema{ 2925 "clusterName": { 2926 SchemaProps: spec.SchemaProps{ 2927 Description: "ClusterName is the name of the Cluster this object belongs to.", 2928 Default: "", 2929 Type: []string{"string"}, 2930 Format: "", 2931 }, 2932 }, 2933 "replicas": { 2934 SchemaProps: spec.SchemaProps{ 2935 Description: "Replicas is the number of desired replicas. This is a pointer to distinguish between explicit zero and unspecified.\n\nDefaults to: * if the Kubernetes autoscaler min size and max size annotations are set:\n - if it's a new MachineSet, use min size\n - if the replicas field of the old MachineSet is < min size, use min size\n - if the replicas field of the old MachineSet is > max size, use max size\n - if the replicas field of the old MachineSet is in the (min size, max size) range, keep the value from the oldMS\n* otherwise use 1 Note: Defaulting will be run whenever the replicas field is not set: * A new MachineSet is created with replicas not set. * On an existing MachineSet the replicas field was first set and is now unset. Those cases are especially relevant for the following Kubernetes autoscaler use cases: * A new MachineSet is created and replicas should be managed by the autoscaler * An existing MachineSet which initially wasn't controlled by the autoscaler\n should be later controlled by the autoscaler", 2936 Type: []string{"integer"}, 2937 Format: "int32", 2938 }, 2939 }, 2940 "minReadySeconds": { 2941 SchemaProps: spec.SchemaProps{ 2942 Description: "MinReadySeconds is the minimum number of seconds for which a Node for a newly created machine should be ready before considering the replica available. Defaults to 0 (machine will be considered available as soon as the Node is ready)", 2943 Type: []string{"integer"}, 2944 Format: "int32", 2945 }, 2946 }, 2947 "deletePolicy": { 2948 SchemaProps: spec.SchemaProps{ 2949 Description: "DeletePolicy defines the policy used to identify nodes to delete when downscaling. Defaults to \"Random\". Valid values are \"Random, \"Newest\", \"Oldest\"", 2950 Type: []string{"string"}, 2951 Format: "", 2952 }, 2953 }, 2954 "selector": { 2955 SchemaProps: spec.SchemaProps{ 2956 Description: "Selector is a label query over machines that should match the replica count. Label keys and values that must match in order to be controlled by this MachineSet. It must match the machine template's labels. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors", 2957 Default: map[string]interface{}{}, 2958 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"), 2959 }, 2960 }, 2961 "template": { 2962 SchemaProps: spec.SchemaProps{ 2963 Description: "Template is the object that describes the machine that will be created if insufficient replicas are detected. Object references to custom resources are treated as templates.", 2964 Default: map[string]interface{}{}, 2965 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineTemplateSpec"), 2966 }, 2967 }, 2968 }, 2969 Required: []string{"clusterName", "selector"}, 2970 }, 2971 }, 2972 Dependencies: []string{ 2973 "k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector", "sigs.k8s.io/cluster-api/api/v1beta1.MachineTemplateSpec"}, 2974 } 2975 } 2976 2977 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineSetStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { 2978 return common.OpenAPIDefinition{ 2979 Schema: spec.Schema{ 2980 SchemaProps: spec.SchemaProps{ 2981 Description: "MachineSetStatus defines the observed state of MachineSet.", 2982 Type: []string{"object"}, 2983 Properties: map[string]spec.Schema{ 2984 "selector": { 2985 SchemaProps: spec.SchemaProps{ 2986 Description: "Selector is the same as the label selector but in the string format to avoid introspection by clients. The string will be in the same format as the query-param syntax. More info about label selectors: http://kubernetes.io/docs/user-guide/labels#label-selectors", 2987 Type: []string{"string"}, 2988 Format: "", 2989 }, 2990 }, 2991 "replicas": { 2992 SchemaProps: spec.SchemaProps{ 2993 Description: "Replicas is the most recently observed number of replicas.", 2994 Default: 0, 2995 Type: []string{"integer"}, 2996 Format: "int32", 2997 }, 2998 }, 2999 "fullyLabeledReplicas": { 3000 SchemaProps: spec.SchemaProps{ 3001 Description: "The number of replicas that have labels matching the labels of the machine template of the MachineSet.", 3002 Default: 0, 3003 Type: []string{"integer"}, 3004 Format: "int32", 3005 }, 3006 }, 3007 "readyReplicas": { 3008 SchemaProps: spec.SchemaProps{ 3009 Description: "The number of ready replicas for this MachineSet. A machine is considered ready when the node has been created and is \"Ready\".", 3010 Default: 0, 3011 Type: []string{"integer"}, 3012 Format: "int32", 3013 }, 3014 }, 3015 "availableReplicas": { 3016 SchemaProps: spec.SchemaProps{ 3017 Description: "The number of available replicas (ready for at least minReadySeconds) for this MachineSet.", 3018 Default: 0, 3019 Type: []string{"integer"}, 3020 Format: "int32", 3021 }, 3022 }, 3023 "observedGeneration": { 3024 SchemaProps: spec.SchemaProps{ 3025 Description: "ObservedGeneration reflects the generation of the most recently observed MachineSet.", 3026 Type: []string{"integer"}, 3027 Format: "int64", 3028 }, 3029 }, 3030 "failureReason": { 3031 SchemaProps: spec.SchemaProps{ 3032 Description: "In the event that there is a terminal problem reconciling the replicas, both FailureReason and FailureMessage will be set. FailureReason will be populated with a succinct value suitable for machine interpretation, while FailureMessage will contain a more verbose string suitable for logging and human consumption.\n\nThese fields should not be set for transitive errors that a controller faces that are expected to be fixed automatically over time (like service outages), but instead indicate that something is fundamentally wrong with the MachineTemplate's spec or the configuration of the machine controller, and that manual intervention is required. Examples of terminal errors would be invalid combinations of settings in the spec, values that are unsupported by the machine controller, or the responsible machine controller itself being critically misconfigured.\n\nAny transient errors that occur during the reconciliation of Machines can be added as events to the MachineSet object and/or logged in the controller's output.", 3033 Type: []string{"string"}, 3034 Format: "", 3035 }, 3036 }, 3037 "failureMessage": { 3038 SchemaProps: spec.SchemaProps{ 3039 Type: []string{"string"}, 3040 Format: "", 3041 }, 3042 }, 3043 "conditions": { 3044 SchemaProps: spec.SchemaProps{ 3045 Description: "Conditions defines current service state of the MachineSet.", 3046 Type: []string{"array"}, 3047 Items: &spec.SchemaOrArray{ 3048 Schema: &spec.Schema{ 3049 SchemaProps: spec.SchemaProps{ 3050 Default: map[string]interface{}{}, 3051 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.Condition"), 3052 }, 3053 }, 3054 }, 3055 }, 3056 }, 3057 }, 3058 }, 3059 }, 3060 Dependencies: []string{ 3061 "sigs.k8s.io/cluster-api/api/v1beta1.Condition"}, 3062 } 3063 } 3064 3065 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { 3066 return common.OpenAPIDefinition{ 3067 Schema: spec.Schema{ 3068 SchemaProps: spec.SchemaProps{ 3069 Description: "MachineSpec defines the desired state of Machine.", 3070 Type: []string{"object"}, 3071 Properties: map[string]spec.Schema{ 3072 "clusterName": { 3073 SchemaProps: spec.SchemaProps{ 3074 Description: "ClusterName is the name of the Cluster this object belongs to.", 3075 Default: "", 3076 Type: []string{"string"}, 3077 Format: "", 3078 }, 3079 }, 3080 "bootstrap": { 3081 SchemaProps: spec.SchemaProps{ 3082 Description: "Bootstrap is a reference to a local struct which encapsulates fields to configure the Machine’s bootstrapping mechanism.", 3083 Default: map[string]interface{}{}, 3084 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.Bootstrap"), 3085 }, 3086 }, 3087 "infrastructureRef": { 3088 SchemaProps: spec.SchemaProps{ 3089 Description: "InfrastructureRef is a required reference to a custom resource offered by an infrastructure provider.", 3090 Default: map[string]interface{}{}, 3091 Ref: ref("k8s.io/api/core/v1.ObjectReference"), 3092 }, 3093 }, 3094 "version": { 3095 SchemaProps: spec.SchemaProps{ 3096 Description: "Version defines the desired Kubernetes version. This field is meant to be optionally used by bootstrap providers.", 3097 Type: []string{"string"}, 3098 Format: "", 3099 }, 3100 }, 3101 "providerID": { 3102 SchemaProps: spec.SchemaProps{ 3103 Description: "ProviderID is the identification ID of the machine provided by the provider. This field must match the provider ID as seen on the node object corresponding to this machine. This field is required by higher level consumers of cluster-api. Example use case is cluster autoscaler with cluster-api as provider. Clean-up logic in the autoscaler compares machines to nodes to find out machines at provider which could not get registered as Kubernetes nodes. With cluster-api as a generic out-of-tree provider for autoscaler, this field is required by autoscaler to be able to have a provider view of the list of machines. Another list of nodes is queried from the k8s apiserver and then a comparison is done to find out unregistered machines and are marked for delete. This field will be set by the actuators and consumed by higher level entities like autoscaler that will be interfacing with cluster-api as generic provider.", 3104 Type: []string{"string"}, 3105 Format: "", 3106 }, 3107 }, 3108 "failureDomain": { 3109 SchemaProps: spec.SchemaProps{ 3110 Description: "FailureDomain is the failure domain the machine will be created in. Must match a key in the FailureDomains map stored on the cluster object.", 3111 Type: []string{"string"}, 3112 Format: "", 3113 }, 3114 }, 3115 "nodeDrainTimeout": { 3116 SchemaProps: spec.SchemaProps{ 3117 Description: "NodeDrainTimeout is the total amount of time that the controller will spend on draining a node. The default value is 0, meaning that the node can be drained without any time limitations. NOTE: NodeDrainTimeout is different from `kubectl drain --timeout`", 3118 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 3119 }, 3120 }, 3121 "nodeVolumeDetachTimeout": { 3122 SchemaProps: spec.SchemaProps{ 3123 Description: "NodeVolumeDetachTimeout is the total amount of time that the controller will spend on waiting for all volumes to be detached. The default value is 0, meaning that the volumes can be detached without any time limitations.", 3124 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 3125 }, 3126 }, 3127 "nodeDeletionTimeout": { 3128 SchemaProps: spec.SchemaProps{ 3129 Description: "NodeDeletionTimeout defines how long the controller will attempt to delete the Node that the Machine hosts after the Machine is marked for deletion. A duration of 0 will retry deletion indefinitely. Defaults to 10 seconds.", 3130 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 3131 }, 3132 }, 3133 }, 3134 Required: []string{"clusterName", "bootstrap", "infrastructureRef"}, 3135 }, 3136 }, 3137 Dependencies: []string{ 3138 "k8s.io/api/core/v1.ObjectReference", "k8s.io/apimachinery/pkg/apis/meta/v1.Duration", "sigs.k8s.io/cluster-api/api/v1beta1.Bootstrap"}, 3139 } 3140 } 3141 3142 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { 3143 return common.OpenAPIDefinition{ 3144 Schema: spec.Schema{ 3145 SchemaProps: spec.SchemaProps{ 3146 Description: "MachineStatus defines the observed state of Machine.", 3147 Type: []string{"object"}, 3148 Properties: map[string]spec.Schema{ 3149 "nodeRef": { 3150 SchemaProps: spec.SchemaProps{ 3151 Description: "NodeRef will point to the corresponding Node if it exists.", 3152 Ref: ref("k8s.io/api/core/v1.ObjectReference"), 3153 }, 3154 }, 3155 "nodeInfo": { 3156 SchemaProps: spec.SchemaProps{ 3157 Description: "NodeInfo is a set of ids/uuids to uniquely identify the node. More info: https://kubernetes.io/docs/concepts/nodes/node/#info", 3158 Ref: ref("k8s.io/api/core/v1.NodeSystemInfo"), 3159 }, 3160 }, 3161 "lastUpdated": { 3162 SchemaProps: spec.SchemaProps{ 3163 Description: "LastUpdated identifies when the phase of the Machine last transitioned.", 3164 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), 3165 }, 3166 }, 3167 "failureReason": { 3168 SchemaProps: spec.SchemaProps{ 3169 Description: "FailureReason will be set in the event that there is a terminal problem reconciling the Machine and will contain a succinct value suitable for machine interpretation.\n\nThis field should not be set for transitive errors that a controller faces that are expected to be fixed automatically over time (like service outages), but instead indicate that something is fundamentally wrong with the Machine's spec or the configuration of the controller, and that manual intervention is required. Examples of terminal errors would be invalid combinations of settings in the spec, values that are unsupported by the controller, or the responsible controller itself being critically misconfigured.\n\nAny transient errors that occur during the reconciliation of Machines can be added as events to the Machine object and/or logged in the controller's output.", 3170 Type: []string{"string"}, 3171 Format: "", 3172 }, 3173 }, 3174 "failureMessage": { 3175 SchemaProps: spec.SchemaProps{ 3176 Description: "FailureMessage will be set in the event that there is a terminal problem reconciling the Machine and will contain a more verbose string suitable for logging and human consumption.\n\nThis field should not be set for transitive errors that a controller faces that are expected to be fixed automatically over time (like service outages), but instead indicate that something is fundamentally wrong with the Machine's spec or the configuration of the controller, and that manual intervention is required. Examples of terminal errors would be invalid combinations of settings in the spec, values that are unsupported by the controller, or the responsible controller itself being critically misconfigured.\n\nAny transient errors that occur during the reconciliation of Machines can be added as events to the Machine object and/or logged in the controller's output.", 3177 Type: []string{"string"}, 3178 Format: "", 3179 }, 3180 }, 3181 "addresses": { 3182 SchemaProps: spec.SchemaProps{ 3183 Description: "Addresses is a list of addresses assigned to the machine. This field is copied from the infrastructure provider reference.", 3184 Type: []string{"array"}, 3185 Items: &spec.SchemaOrArray{ 3186 Schema: &spec.Schema{ 3187 SchemaProps: spec.SchemaProps{ 3188 Default: map[string]interface{}{}, 3189 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineAddress"), 3190 }, 3191 }, 3192 }, 3193 }, 3194 }, 3195 "phase": { 3196 SchemaProps: spec.SchemaProps{ 3197 Description: "Phase represents the current phase of machine actuation. E.g. Pending, Running, Terminating, Failed etc.", 3198 Type: []string{"string"}, 3199 Format: "", 3200 }, 3201 }, 3202 "certificatesExpiryDate": { 3203 SchemaProps: spec.SchemaProps{ 3204 Description: "CertificatesExpiryDate is the expiry date of the machine certificates. This value is only set for control plane machines.", 3205 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), 3206 }, 3207 }, 3208 "bootstrapReady": { 3209 SchemaProps: spec.SchemaProps{ 3210 Description: "BootstrapReady is the state of the bootstrap provider.", 3211 Default: false, 3212 Type: []string{"boolean"}, 3213 Format: "", 3214 }, 3215 }, 3216 "infrastructureReady": { 3217 SchemaProps: spec.SchemaProps{ 3218 Description: "InfrastructureReady is the state of the infrastructure provider.", 3219 Default: false, 3220 Type: []string{"boolean"}, 3221 Format: "", 3222 }, 3223 }, 3224 "observedGeneration": { 3225 SchemaProps: spec.SchemaProps{ 3226 Description: "ObservedGeneration is the latest generation observed by the controller.", 3227 Type: []string{"integer"}, 3228 Format: "int64", 3229 }, 3230 }, 3231 "conditions": { 3232 SchemaProps: spec.SchemaProps{ 3233 Description: "Conditions defines current service state of the Machine.", 3234 Type: []string{"array"}, 3235 Items: &spec.SchemaOrArray{ 3236 Schema: &spec.Schema{ 3237 SchemaProps: spec.SchemaProps{ 3238 Default: map[string]interface{}{}, 3239 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.Condition"), 3240 }, 3241 }, 3242 }, 3243 }, 3244 }, 3245 }, 3246 }, 3247 }, 3248 Dependencies: []string{ 3249 "k8s.io/api/core/v1.NodeSystemInfo", "k8s.io/api/core/v1.ObjectReference", "k8s.io/apimachinery/pkg/apis/meta/v1.Time", "sigs.k8s.io/cluster-api/api/v1beta1.Condition", "sigs.k8s.io/cluster-api/api/v1beta1.MachineAddress"}, 3250 } 3251 } 3252 3253 func schema_sigsk8sio_cluster_api_api_v1beta1_MachineTemplateSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { 3254 return common.OpenAPIDefinition{ 3255 Schema: spec.Schema{ 3256 SchemaProps: spec.SchemaProps{ 3257 Description: "MachineTemplateSpec describes the data needed to create a Machine from a template.", 3258 Type: []string{"object"}, 3259 Properties: map[string]spec.Schema{ 3260 "metadata": { 3261 SchemaProps: spec.SchemaProps{ 3262 Description: "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata", 3263 Default: map[string]interface{}{}, 3264 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ObjectMeta"), 3265 }, 3266 }, 3267 "spec": { 3268 SchemaProps: spec.SchemaProps{ 3269 Description: "Specification of the desired behavior of the machine. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status", 3270 Default: map[string]interface{}{}, 3271 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineSpec"), 3272 }, 3273 }, 3274 }, 3275 }, 3276 }, 3277 Dependencies: []string{ 3278 "sigs.k8s.io/cluster-api/api/v1beta1.MachineSpec", "sigs.k8s.io/cluster-api/api/v1beta1.ObjectMeta"}, 3279 } 3280 } 3281 3282 func schema_sigsk8sio_cluster_api_api_v1beta1_NetworkRanges(ref common.ReferenceCallback) common.OpenAPIDefinition { 3283 return common.OpenAPIDefinition{ 3284 Schema: spec.Schema{ 3285 SchemaProps: spec.SchemaProps{ 3286 Description: "NetworkRanges represents ranges of network addresses.", 3287 Type: []string{"object"}, 3288 Properties: map[string]spec.Schema{ 3289 "cidrBlocks": { 3290 SchemaProps: spec.SchemaProps{ 3291 Type: []string{"array"}, 3292 Items: &spec.SchemaOrArray{ 3293 Schema: &spec.Schema{ 3294 SchemaProps: spec.SchemaProps{ 3295 Default: "", 3296 Type: []string{"string"}, 3297 Format: "", 3298 }, 3299 }, 3300 }, 3301 }, 3302 }, 3303 }, 3304 Required: []string{"cidrBlocks"}, 3305 }, 3306 }, 3307 } 3308 } 3309 3310 func schema_sigsk8sio_cluster_api_api_v1beta1_ObjectMeta(ref common.ReferenceCallback) common.OpenAPIDefinition { 3311 return common.OpenAPIDefinition{ 3312 Schema: spec.Schema{ 3313 SchemaProps: spec.SchemaProps{ 3314 Description: "ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. This is a copy of customizable fields from metav1.ObjectMeta.\n\nObjectMeta is embedded in `Machine.Spec`, `MachineDeployment.Template` and `MachineSet.Template`, which are not top-level Kubernetes objects. Given that metav1.ObjectMeta has lots of special cases and read-only fields which end up in the generated CRD validation, having it as a subset simplifies the API and some issues that can impact user experience.\n\nDuring the [upgrade to controller-tools@v2](https://github.com/kubernetes-sigs/cluster-api/pull/1054) for v1alpha2, we noticed a failure would occur running Cluster API test suite against the new CRDs, specifically `spec.metadata.creationTimestamp in body must be of type string: \"null\"`. The investigation showed that `controller-tools@v2` behaves differently than its previous version when handling types from [metav1](k8s.io/apimachinery/pkg/apis/meta/v1) package.\n\nIn more details, we found that embedded (non-top level) types that embedded `metav1.ObjectMeta` had validation properties, including for `creationTimestamp` (metav1.Time). The `metav1.Time` type specifies a custom json marshaller that, when IsZero() is true, returns `null` which breaks validation because the field isn't marked as nullable.\n\nIn future versions, controller-tools@v2 might allow overriding the type and validation for embedded types. When that happens, this hack should be revisited.", 3315 Type: []string{"object"}, 3316 Properties: map[string]spec.Schema{ 3317 "labels": { 3318 SchemaProps: spec.SchemaProps{ 3319 Description: "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels", 3320 Type: []string{"object"}, 3321 AdditionalProperties: &spec.SchemaOrBool{ 3322 Allows: true, 3323 Schema: &spec.Schema{ 3324 SchemaProps: spec.SchemaProps{ 3325 Default: "", 3326 Type: []string{"string"}, 3327 Format: "", 3328 }, 3329 }, 3330 }, 3331 }, 3332 }, 3333 "annotations": { 3334 SchemaProps: spec.SchemaProps{ 3335 Description: "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations", 3336 Type: []string{"object"}, 3337 AdditionalProperties: &spec.SchemaOrBool{ 3338 Allows: true, 3339 Schema: &spec.Schema{ 3340 SchemaProps: spec.SchemaProps{ 3341 Default: "", 3342 Type: []string{"string"}, 3343 Format: "", 3344 }, 3345 }, 3346 }, 3347 }, 3348 }, 3349 }, 3350 }, 3351 }, 3352 } 3353 } 3354 3355 func schema_sigsk8sio_cluster_api_api_v1beta1_PatchDefinition(ref common.ReferenceCallback) common.OpenAPIDefinition { 3356 return common.OpenAPIDefinition{ 3357 Schema: spec.Schema{ 3358 SchemaProps: spec.SchemaProps{ 3359 Description: "PatchDefinition defines a patch which is applied to customize the referenced templates.", 3360 Type: []string{"object"}, 3361 Properties: map[string]spec.Schema{ 3362 "selector": { 3363 SchemaProps: spec.SchemaProps{ 3364 Description: "Selector defines on which templates the patch should be applied.", 3365 Default: map[string]interface{}{}, 3366 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.PatchSelector"), 3367 }, 3368 }, 3369 "jsonPatches": { 3370 SchemaProps: spec.SchemaProps{ 3371 Description: "JSONPatches defines the patches which should be applied on the templates matching the selector. Note: Patches will be applied in the order of the array.", 3372 Type: []string{"array"}, 3373 Items: &spec.SchemaOrArray{ 3374 Schema: &spec.Schema{ 3375 SchemaProps: spec.SchemaProps{ 3376 Default: map[string]interface{}{}, 3377 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.JSONPatch"), 3378 }, 3379 }, 3380 }, 3381 }, 3382 }, 3383 }, 3384 Required: []string{"selector", "jsonPatches"}, 3385 }, 3386 }, 3387 Dependencies: []string{ 3388 "sigs.k8s.io/cluster-api/api/v1beta1.JSONPatch", "sigs.k8s.io/cluster-api/api/v1beta1.PatchSelector"}, 3389 } 3390 } 3391 3392 func schema_sigsk8sio_cluster_api_api_v1beta1_PatchSelector(ref common.ReferenceCallback) common.OpenAPIDefinition { 3393 return common.OpenAPIDefinition{ 3394 Schema: spec.Schema{ 3395 SchemaProps: spec.SchemaProps{ 3396 Description: "PatchSelector defines on which templates the patch should be applied. Note: Matching on APIVersion and Kind is mandatory, to enforce that the patches are written for the correct version. The version of the references in the ClusterClass may be automatically updated during reconciliation if there is a newer version for the same contract. Note: The results of selection based on the individual fields are ANDed.", 3397 Type: []string{"object"}, 3398 Properties: map[string]spec.Schema{ 3399 "apiVersion": { 3400 SchemaProps: spec.SchemaProps{ 3401 Description: "APIVersion filters templates by apiVersion.", 3402 Default: "", 3403 Type: []string{"string"}, 3404 Format: "", 3405 }, 3406 }, 3407 "kind": { 3408 SchemaProps: spec.SchemaProps{ 3409 Description: "Kind filters templates by kind.", 3410 Default: "", 3411 Type: []string{"string"}, 3412 Format: "", 3413 }, 3414 }, 3415 "matchResources": { 3416 SchemaProps: spec.SchemaProps{ 3417 Description: "MatchResources selects templates based on where they are referenced.", 3418 Default: map[string]interface{}{}, 3419 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.PatchSelectorMatch"), 3420 }, 3421 }, 3422 }, 3423 Required: []string{"apiVersion", "kind", "matchResources"}, 3424 }, 3425 }, 3426 Dependencies: []string{ 3427 "sigs.k8s.io/cluster-api/api/v1beta1.PatchSelectorMatch"}, 3428 } 3429 } 3430 3431 func schema_sigsk8sio_cluster_api_api_v1beta1_PatchSelectorMatch(ref common.ReferenceCallback) common.OpenAPIDefinition { 3432 return common.OpenAPIDefinition{ 3433 Schema: spec.Schema{ 3434 SchemaProps: spec.SchemaProps{ 3435 Description: "PatchSelectorMatch selects templates based on where they are referenced. Note: The selector must match at least one template. Note: The results of selection based on the individual fields are ORed.", 3436 Type: []string{"object"}, 3437 Properties: map[string]spec.Schema{ 3438 "controlPlane": { 3439 SchemaProps: spec.SchemaProps{ 3440 Description: "ControlPlane selects templates referenced in .spec.ControlPlane. Note: this will match the controlPlane and also the controlPlane machineInfrastructure (depending on the kind and apiVersion).", 3441 Type: []string{"boolean"}, 3442 Format: "", 3443 }, 3444 }, 3445 "infrastructureCluster": { 3446 SchemaProps: spec.SchemaProps{ 3447 Description: "InfrastructureCluster selects templates referenced in .spec.infrastructure.", 3448 Type: []string{"boolean"}, 3449 Format: "", 3450 }, 3451 }, 3452 "machineDeploymentClass": { 3453 SchemaProps: spec.SchemaProps{ 3454 Description: "MachineDeploymentClass selects templates referenced in specific MachineDeploymentClasses in .spec.workers.machineDeployments.", 3455 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.PatchSelectorMatchMachineDeploymentClass"), 3456 }, 3457 }, 3458 "machinePoolClass": { 3459 SchemaProps: spec.SchemaProps{ 3460 Description: "MachinePoolClass selects templates referenced in specific MachinePoolClasses in .spec.workers.machinePools.", 3461 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.PatchSelectorMatchMachinePoolClass"), 3462 }, 3463 }, 3464 }, 3465 }, 3466 }, 3467 Dependencies: []string{ 3468 "sigs.k8s.io/cluster-api/api/v1beta1.PatchSelectorMatchMachineDeploymentClass", "sigs.k8s.io/cluster-api/api/v1beta1.PatchSelectorMatchMachinePoolClass"}, 3469 } 3470 } 3471 3472 func schema_sigsk8sio_cluster_api_api_v1beta1_PatchSelectorMatchMachineDeploymentClass(ref common.ReferenceCallback) common.OpenAPIDefinition { 3473 return common.OpenAPIDefinition{ 3474 Schema: spec.Schema{ 3475 SchemaProps: spec.SchemaProps{ 3476 Description: "PatchSelectorMatchMachineDeploymentClass selects templates referenced in specific MachineDeploymentClasses in .spec.workers.machineDeployments.", 3477 Type: []string{"object"}, 3478 Properties: map[string]spec.Schema{ 3479 "names": { 3480 SchemaProps: spec.SchemaProps{ 3481 Description: "Names selects templates by class names.", 3482 Type: []string{"array"}, 3483 Items: &spec.SchemaOrArray{ 3484 Schema: &spec.Schema{ 3485 SchemaProps: spec.SchemaProps{ 3486 Default: "", 3487 Type: []string{"string"}, 3488 Format: "", 3489 }, 3490 }, 3491 }, 3492 }, 3493 }, 3494 }, 3495 }, 3496 }, 3497 } 3498 } 3499 3500 func schema_sigsk8sio_cluster_api_api_v1beta1_PatchSelectorMatchMachinePoolClass(ref common.ReferenceCallback) common.OpenAPIDefinition { 3501 return common.OpenAPIDefinition{ 3502 Schema: spec.Schema{ 3503 SchemaProps: spec.SchemaProps{ 3504 Description: "PatchSelectorMatchMachinePoolClass selects templates referenced in specific MachinePoolClasses in .spec.workers.machinePools.", 3505 Type: []string{"object"}, 3506 Properties: map[string]spec.Schema{ 3507 "names": { 3508 SchemaProps: spec.SchemaProps{ 3509 Description: "Names selects templates by class names.", 3510 Type: []string{"array"}, 3511 Items: &spec.SchemaOrArray{ 3512 Schema: &spec.Schema{ 3513 SchemaProps: spec.SchemaProps{ 3514 Default: "", 3515 Type: []string{"string"}, 3516 Format: "", 3517 }, 3518 }, 3519 }, 3520 }, 3521 }, 3522 }, 3523 }, 3524 }, 3525 } 3526 } 3527 3528 func schema_sigsk8sio_cluster_api_api_v1beta1_Topology(ref common.ReferenceCallback) common.OpenAPIDefinition { 3529 return common.OpenAPIDefinition{ 3530 Schema: spec.Schema{ 3531 SchemaProps: spec.SchemaProps{ 3532 Description: "Topology encapsulates the information of the managed resources.", 3533 Type: []string{"object"}, 3534 Properties: map[string]spec.Schema{ 3535 "class": { 3536 SchemaProps: spec.SchemaProps{ 3537 Description: "The name of the ClusterClass object to create the topology.", 3538 Default: "", 3539 Type: []string{"string"}, 3540 Format: "", 3541 }, 3542 }, 3543 "version": { 3544 SchemaProps: spec.SchemaProps{ 3545 Description: "The Kubernetes version of the cluster.", 3546 Default: "", 3547 Type: []string{"string"}, 3548 Format: "", 3549 }, 3550 }, 3551 "rolloutAfter": { 3552 SchemaProps: spec.SchemaProps{ 3553 Description: "RolloutAfter performs a rollout of the entire cluster one component at a time, control plane first and then machine deployments.\n\nDeprecated: This field has no function and is going to be removed in the next apiVersion.", 3554 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), 3555 }, 3556 }, 3557 "controlPlane": { 3558 SchemaProps: spec.SchemaProps{ 3559 Description: "ControlPlane describes the cluster control plane.", 3560 Default: map[string]interface{}{}, 3561 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ControlPlaneTopology"), 3562 }, 3563 }, 3564 "workers": { 3565 SchemaProps: spec.SchemaProps{ 3566 Description: "Workers encapsulates the different constructs that form the worker nodes for the cluster.", 3567 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.WorkersTopology"), 3568 }, 3569 }, 3570 "variables": { 3571 SchemaProps: spec.SchemaProps{ 3572 Description: "Variables can be used to customize the Cluster through patches. They must comply to the corresponding VariableClasses defined in the ClusterClass.", 3573 Type: []string{"array"}, 3574 Items: &spec.SchemaOrArray{ 3575 Schema: &spec.Schema{ 3576 SchemaProps: spec.SchemaProps{ 3577 Default: map[string]interface{}{}, 3578 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.ClusterVariable"), 3579 }, 3580 }, 3581 }, 3582 }, 3583 }, 3584 }, 3585 Required: []string{"class", "version"}, 3586 }, 3587 }, 3588 Dependencies: []string{ 3589 "k8s.io/apimachinery/pkg/apis/meta/v1.Time", "sigs.k8s.io/cluster-api/api/v1beta1.ClusterVariable", "sigs.k8s.io/cluster-api/api/v1beta1.ControlPlaneTopology", "sigs.k8s.io/cluster-api/api/v1beta1.WorkersTopology"}, 3590 } 3591 } 3592 3593 func schema_sigsk8sio_cluster_api_api_v1beta1_UnhealthyCondition(ref common.ReferenceCallback) common.OpenAPIDefinition { 3594 return common.OpenAPIDefinition{ 3595 Schema: spec.Schema{ 3596 SchemaProps: spec.SchemaProps{ 3597 Description: "UnhealthyCondition represents a Node condition type and value with a timeout specified as a duration. When the named condition has been in the given status for at least the timeout value, a node is considered unhealthy.", 3598 Type: []string{"object"}, 3599 Properties: map[string]spec.Schema{ 3600 "type": { 3601 SchemaProps: spec.SchemaProps{ 3602 Default: "", 3603 Type: []string{"string"}, 3604 Format: "", 3605 }, 3606 }, 3607 "status": { 3608 SchemaProps: spec.SchemaProps{ 3609 Default: "", 3610 Type: []string{"string"}, 3611 Format: "", 3612 }, 3613 }, 3614 "timeout": { 3615 SchemaProps: spec.SchemaProps{ 3616 Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Duration"), 3617 }, 3618 }, 3619 }, 3620 Required: []string{"type", "status", "timeout"}, 3621 }, 3622 }, 3623 Dependencies: []string{ 3624 "k8s.io/apimachinery/pkg/apis/meta/v1.Duration"}, 3625 } 3626 } 3627 3628 func schema_sigsk8sio_cluster_api_api_v1beta1_VariableSchema(ref common.ReferenceCallback) common.OpenAPIDefinition { 3629 return common.OpenAPIDefinition{ 3630 Schema: spec.Schema{ 3631 SchemaProps: spec.SchemaProps{ 3632 Description: "VariableSchema defines the schema of a variable.", 3633 Type: []string{"object"}, 3634 Properties: map[string]spec.Schema{ 3635 "openAPIV3Schema": { 3636 SchemaProps: spec.SchemaProps{ 3637 Description: "OpenAPIV3Schema defines the schema of a variable via OpenAPI v3 schema. The schema is a subset of the schema used in Kubernetes CRDs.", 3638 Default: map[string]interface{}{}, 3639 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.JSONSchemaProps"), 3640 }, 3641 }, 3642 }, 3643 Required: []string{"openAPIV3Schema"}, 3644 }, 3645 }, 3646 Dependencies: []string{ 3647 "sigs.k8s.io/cluster-api/api/v1beta1.JSONSchemaProps"}, 3648 } 3649 } 3650 3651 func schema_sigsk8sio_cluster_api_api_v1beta1_WorkersClass(ref common.ReferenceCallback) common.OpenAPIDefinition { 3652 return common.OpenAPIDefinition{ 3653 Schema: spec.Schema{ 3654 SchemaProps: spec.SchemaProps{ 3655 Description: "WorkersClass is a collection of deployment classes.", 3656 Type: []string{"object"}, 3657 Properties: map[string]spec.Schema{ 3658 "machineDeployments": { 3659 SchemaProps: spec.SchemaProps{ 3660 Description: "MachineDeployments is a list of machine deployment classes that can be used to create a set of worker nodes.", 3661 Type: []string{"array"}, 3662 Items: &spec.SchemaOrArray{ 3663 Schema: &spec.Schema{ 3664 SchemaProps: spec.SchemaProps{ 3665 Default: map[string]interface{}{}, 3666 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentClass"), 3667 }, 3668 }, 3669 }, 3670 }, 3671 }, 3672 "machinePools": { 3673 SchemaProps: spec.SchemaProps{ 3674 Description: "MachinePools is a list of machine pool classes that can be used to create a set of worker nodes.", 3675 Type: []string{"array"}, 3676 Items: &spec.SchemaOrArray{ 3677 Schema: &spec.Schema{ 3678 SchemaProps: spec.SchemaProps{ 3679 Default: map[string]interface{}{}, 3680 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachinePoolClass"), 3681 }, 3682 }, 3683 }, 3684 }, 3685 }, 3686 }, 3687 }, 3688 }, 3689 Dependencies: []string{ 3690 "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentClass", "sigs.k8s.io/cluster-api/api/v1beta1.MachinePoolClass"}, 3691 } 3692 } 3693 3694 func schema_sigsk8sio_cluster_api_api_v1beta1_WorkersTopology(ref common.ReferenceCallback) common.OpenAPIDefinition { 3695 return common.OpenAPIDefinition{ 3696 Schema: spec.Schema{ 3697 SchemaProps: spec.SchemaProps{ 3698 Description: "WorkersTopology represents the different sets of worker nodes in the cluster.", 3699 Type: []string{"object"}, 3700 Properties: map[string]spec.Schema{ 3701 "machineDeployments": { 3702 SchemaProps: spec.SchemaProps{ 3703 Description: "MachineDeployments is a list of machine deployments in the cluster.", 3704 Type: []string{"array"}, 3705 Items: &spec.SchemaOrArray{ 3706 Schema: &spec.Schema{ 3707 SchemaProps: spec.SchemaProps{ 3708 Default: map[string]interface{}{}, 3709 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentTopology"), 3710 }, 3711 }, 3712 }, 3713 }, 3714 }, 3715 "machinePools": { 3716 SchemaProps: spec.SchemaProps{ 3717 Description: "MachinePools is a list of machine pools in the cluster.", 3718 Type: []string{"array"}, 3719 Items: &spec.SchemaOrArray{ 3720 Schema: &spec.Schema{ 3721 SchemaProps: spec.SchemaProps{ 3722 Default: map[string]interface{}{}, 3723 Ref: ref("sigs.k8s.io/cluster-api/api/v1beta1.MachinePoolTopology"), 3724 }, 3725 }, 3726 }, 3727 }, 3728 }, 3729 }, 3730 }, 3731 }, 3732 Dependencies: []string{ 3733 "sigs.k8s.io/cluster-api/api/v1beta1.MachineDeploymentTopology", "sigs.k8s.io/cluster-api/api/v1beta1.MachinePoolTopology"}, 3734 } 3735 }