sigs.k8s.io/cluster-api@v1.7.1/api/v1beta1/zz_generated.openapi.go (about)

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