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