sigs.k8s.io/cluster-api@v1.7.1/config/crd/bases/cluster.x-k8s.io_machines.yaml (about)

     1  ---
     2  apiVersion: apiextensions.k8s.io/v1
     3  kind: CustomResourceDefinition
     4  metadata:
     5    annotations:
     6      controller-gen.kubebuilder.io/version: v0.14.0
     7    name: machines.cluster.x-k8s.io
     8  spec:
     9    group: cluster.x-k8s.io
    10    names:
    11      categories:
    12      - cluster-api
    13      kind: Machine
    14      listKind: MachineList
    15      plural: machines
    16      shortNames:
    17      - ma
    18      singular: machine
    19    scope: Namespaced
    20    versions:
    21    - additionalPrinterColumns:
    22      - description: Provider ID
    23        jsonPath: .spec.providerID
    24        name: ProviderID
    25        type: string
    26      - description: Machine status such as Terminating/Pending/Running/Failed etc
    27        jsonPath: .status.phase
    28        name: Phase
    29        type: string
    30      - description: Kubernetes version associated with this Machine
    31        jsonPath: .spec.version
    32        name: Version
    33        type: string
    34      - description: Node name associated with this machine
    35        jsonPath: .status.nodeRef.name
    36        name: NodeName
    37        priority: 1
    38        type: string
    39      deprecated: true
    40      name: v1alpha3
    41      schema:
    42        openAPIV3Schema:
    43          description: |-
    44            Machine is the Schema for the machines API.
    45  
    46  
    47            Deprecated: This type will be removed in one of the next releases.
    48          properties:
    49            apiVersion:
    50              description: |-
    51                APIVersion defines the versioned schema of this representation of an object.
    52                Servers should convert recognized schemas to the latest internal value, and
    53                may reject unrecognized values.
    54                More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
    55              type: string
    56            kind:
    57              description: |-
    58                Kind is a string value representing the REST resource this object represents.
    59                Servers may infer this from the endpoint the client submits requests to.
    60                Cannot be updated.
    61                In CamelCase.
    62                More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
    63              type: string
    64            metadata:
    65              type: object
    66            spec:
    67              description: MachineSpec defines the desired state of Machine.
    68              properties:
    69                bootstrap:
    70                  description: |-
    71                    Bootstrap is a reference to a local struct which encapsulates
    72                    fields to configure the Machine’s bootstrapping mechanism.
    73                  properties:
    74                    configRef:
    75                      description: |-
    76                        ConfigRef is a reference to a bootstrap provider-specific resource
    77                        that holds configuration details. The reference is optional to
    78                        allow users/operators to specify Bootstrap.Data without
    79                        the need of a controller.
    80                      properties:
    81                        apiVersion:
    82                          description: API version of the referent.
    83                          type: string
    84                        fieldPath:
    85                          description: |-
    86                            If referring to a piece of an object instead of an entire object, this string
    87                            should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
    88                            For example, if the object reference is to a container within a pod, this would take on a value like:
    89                            "spec.containers{name}" (where "name" refers to the name of the container that triggered
    90                            the event) or if no container name is specified "spec.containers[2]" (container with
    91                            index 2 in this pod). This syntax is chosen only to have some well-defined way of
    92                            referencing a part of an object.
    93                            TODO: this design is not final and this field is subject to change in the future.
    94                          type: string
    95                        kind:
    96                          description: |-
    97                            Kind of the referent.
    98                            More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
    99                          type: string
   100                        name:
   101                          description: |-
   102                            Name of the referent.
   103                            More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   104                          type: string
   105                        namespace:
   106                          description: |-
   107                            Namespace of the referent.
   108                            More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
   109                          type: string
   110                        resourceVersion:
   111                          description: |-
   112                            Specific resourceVersion to which this reference is made, if any.
   113                            More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
   114                          type: string
   115                        uid:
   116                          description: |-
   117                            UID of the referent.
   118                            More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
   119                          type: string
   120                      type: object
   121                      x-kubernetes-map-type: atomic
   122                    data:
   123                      description: |-
   124                        Data contains the bootstrap data, such as cloud-init details scripts.
   125                        If nil, the Machine should remain in the Pending state.
   126  
   127  
   128                        Deprecated: Switch to DataSecretName.
   129                      type: string
   130                    dataSecretName:
   131                      description: |-
   132                        DataSecretName is the name of the secret that stores the bootstrap data script.
   133                        If nil, the Machine should remain in the Pending state.
   134                      type: string
   135                  type: object
   136                clusterName:
   137                  description: ClusterName is the name of the Cluster this object belongs
   138                    to.
   139                  minLength: 1
   140                  type: string
   141                failureDomain:
   142                  description: |-
   143                    FailureDomain is the failure domain the machine will be created in.
   144                    Must match a key in the FailureDomains map stored on the cluster object.
   145                  type: string
   146                infrastructureRef:
   147                  description: |-
   148                    InfrastructureRef is a required reference to a custom resource
   149                    offered by an infrastructure provider.
   150                  properties:
   151                    apiVersion:
   152                      description: API version of the referent.
   153                      type: string
   154                    fieldPath:
   155                      description: |-
   156                        If referring to a piece of an object instead of an entire object, this string
   157                        should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
   158                        For example, if the object reference is to a container within a pod, this would take on a value like:
   159                        "spec.containers{name}" (where "name" refers to the name of the container that triggered
   160                        the event) or if no container name is specified "spec.containers[2]" (container with
   161                        index 2 in this pod). This syntax is chosen only to have some well-defined way of
   162                        referencing a part of an object.
   163                        TODO: this design is not final and this field is subject to change in the future.
   164                      type: string
   165                    kind:
   166                      description: |-
   167                        Kind of the referent.
   168                        More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
   169                      type: string
   170                    name:
   171                      description: |-
   172                        Name of the referent.
   173                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   174                      type: string
   175                    namespace:
   176                      description: |-
   177                        Namespace of the referent.
   178                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
   179                      type: string
   180                    resourceVersion:
   181                      description: |-
   182                        Specific resourceVersion to which this reference is made, if any.
   183                        More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
   184                      type: string
   185                    uid:
   186                      description: |-
   187                        UID of the referent.
   188                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
   189                      type: string
   190                  type: object
   191                  x-kubernetes-map-type: atomic
   192                nodeDrainTimeout:
   193                  description: |-
   194                    NodeDrainTimeout is the total amount of time that the controller will spend on draining a node.
   195                    The default value is 0, meaning that the node can be drained without any time limitations.
   196                    NOTE: NodeDrainTimeout is different from `kubectl drain --timeout`
   197                  type: string
   198                providerID:
   199                  description: |-
   200                    ProviderID is the identification ID of the machine provided by the provider.
   201                    This field must match the provider ID as seen on the node object corresponding to this machine.
   202                    This field is required by higher level consumers of cluster-api. Example use case is cluster autoscaler
   203                    with cluster-api as provider. Clean-up logic in the autoscaler compares machines to nodes to find out
   204                    machines at provider which could not get registered as Kubernetes nodes. With cluster-api as a
   205                    generic out-of-tree provider for autoscaler, this field is required by autoscaler to be
   206                    able to have a provider view of the list of machines. Another list of nodes is queried from the k8s apiserver
   207                    and then a comparison is done to find out unregistered machines and are marked for delete.
   208                    This field will be set by the actuators and consumed by higher level entities like autoscaler that will
   209                    be interfacing with cluster-api as generic provider.
   210                  type: string
   211                version:
   212                  description: |-
   213                    Version defines the desired Kubernetes version.
   214                    This field is meant to be optionally used by bootstrap providers.
   215                  type: string
   216              required:
   217              - bootstrap
   218              - clusterName
   219              - infrastructureRef
   220              type: object
   221            status:
   222              description: MachineStatus defines the observed state of Machine.
   223              properties:
   224                addresses:
   225                  description: |-
   226                    Addresses is a list of addresses assigned to the machine.
   227                    This field is copied from the infrastructure provider reference.
   228                  items:
   229                    description: MachineAddress contains information for the node's
   230                      address.
   231                    properties:
   232                      address:
   233                        description: The machine address.
   234                        type: string
   235                      type:
   236                        description: Machine address type, one of Hostname, ExternalIP
   237                          or InternalIP.
   238                        type: string
   239                    required:
   240                    - address
   241                    - type
   242                    type: object
   243                  type: array
   244                bootstrapReady:
   245                  description: BootstrapReady is the state of the bootstrap provider.
   246                  type: boolean
   247                conditions:
   248                  description: Conditions defines current service state of the Machine.
   249                  items:
   250                    description: Condition defines an observation of a Cluster API resource
   251                      operational state.
   252                    properties:
   253                      lastTransitionTime:
   254                        description: |-
   255                          Last time the condition transitioned from one status to another.
   256                          This should be when the underlying condition changed. If that is not known, then using the time when
   257                          the API field changed is acceptable.
   258                        format: date-time
   259                        type: string
   260                      message:
   261                        description: |-
   262                          A human readable message indicating details about the transition.
   263                          This field may be empty.
   264                        type: string
   265                      reason:
   266                        description: |-
   267                          The reason for the condition's last transition in CamelCase.
   268                          The specific API may choose whether or not this field is considered a guaranteed API.
   269                          This field may not be empty.
   270                        type: string
   271                      severity:
   272                        description: |-
   273                          Severity provides an explicit classification of Reason code, so the users or machines can immediately
   274                          understand the current situation and act accordingly.
   275                          The Severity field MUST be set only when Status=False.
   276                        type: string
   277                      status:
   278                        description: Status of the condition, one of True, False, Unknown.
   279                        type: string
   280                      type:
   281                        description: |-
   282                          Type of condition in CamelCase or in foo.example.com/CamelCase.
   283                          Many .condition.type values are consistent across resources like Available, but because arbitrary conditions
   284                          can be useful (see .node.status.conditions), the ability to deconflict is important.
   285                        type: string
   286                    required:
   287                    - status
   288                    - type
   289                    type: object
   290                  type: array
   291                failureMessage:
   292                  description: |-
   293                    FailureMessage will be set in the event that there is a terminal problem
   294                    reconciling the Machine and will contain a more verbose string suitable
   295                    for logging and human consumption.
   296  
   297  
   298                    This field should not be set for transitive errors that a controller
   299                    faces that are expected to be fixed automatically over
   300                    time (like service outages), but instead indicate that something is
   301                    fundamentally wrong with the Machine's spec or the configuration of
   302                    the controller, and that manual intervention is required. Examples
   303                    of terminal errors would be invalid combinations of settings in the
   304                    spec, values that are unsupported by the controller, or the
   305                    responsible controller itself being critically misconfigured.
   306  
   307  
   308                    Any transient errors that occur during the reconciliation of Machines
   309                    can be added as events to the Machine object and/or logged in the
   310                    controller's output.
   311                  type: string
   312                failureReason:
   313                  description: |-
   314                    FailureReason will be set in the event that there is a terminal problem
   315                    reconciling the Machine and will contain a succinct value suitable
   316                    for machine interpretation.
   317  
   318  
   319                    This field should not be set for transitive errors that a controller
   320                    faces that are expected to be fixed automatically over
   321                    time (like service outages), but instead indicate that something is
   322                    fundamentally wrong with the Machine's spec or the configuration of
   323                    the controller, and that manual intervention is required. Examples
   324                    of terminal errors would be invalid combinations of settings in the
   325                    spec, values that are unsupported by the controller, or the
   326                    responsible controller itself being critically misconfigured.
   327  
   328  
   329                    Any transient errors that occur during the reconciliation of Machines
   330                    can be added as events to the Machine object and/or logged in the
   331                    controller's output.
   332                  type: string
   333                infrastructureReady:
   334                  description: InfrastructureReady is the state of the infrastructure
   335                    provider.
   336                  type: boolean
   337                lastUpdated:
   338                  description: LastUpdated identifies when the phase of the Machine
   339                    last transitioned.
   340                  format: date-time
   341                  type: string
   342                nodeRef:
   343                  description: NodeRef will point to the corresponding Node if it exists.
   344                  properties:
   345                    apiVersion:
   346                      description: API version of the referent.
   347                      type: string
   348                    fieldPath:
   349                      description: |-
   350                        If referring to a piece of an object instead of an entire object, this string
   351                        should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
   352                        For example, if the object reference is to a container within a pod, this would take on a value like:
   353                        "spec.containers{name}" (where "name" refers to the name of the container that triggered
   354                        the event) or if no container name is specified "spec.containers[2]" (container with
   355                        index 2 in this pod). This syntax is chosen only to have some well-defined way of
   356                        referencing a part of an object.
   357                        TODO: this design is not final and this field is subject to change in the future.
   358                      type: string
   359                    kind:
   360                      description: |-
   361                        Kind of the referent.
   362                        More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
   363                      type: string
   364                    name:
   365                      description: |-
   366                        Name of the referent.
   367                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   368                      type: string
   369                    namespace:
   370                      description: |-
   371                        Namespace of the referent.
   372                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
   373                      type: string
   374                    resourceVersion:
   375                      description: |-
   376                        Specific resourceVersion to which this reference is made, if any.
   377                        More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
   378                      type: string
   379                    uid:
   380                      description: |-
   381                        UID of the referent.
   382                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
   383                      type: string
   384                  type: object
   385                  x-kubernetes-map-type: atomic
   386                observedGeneration:
   387                  description: ObservedGeneration is the latest generation observed
   388                    by the controller.
   389                  format: int64
   390                  type: integer
   391                phase:
   392                  description: |-
   393                    Phase represents the current phase of machine actuation.
   394                    E.g. Pending, Running, Terminating, Failed etc.
   395                  type: string
   396                version:
   397                  description: |-
   398                    Version specifies the current version of Kubernetes running
   399                    on the corresponding Node. This is meant to be a means of bubbling
   400                    up status from the Node to the Machine.
   401                    It is entirely optional, but useful for end-user UX if it’s present.
   402                  type: string
   403              type: object
   404          type: object
   405      served: false
   406      storage: false
   407      subresources:
   408        status: {}
   409    - additionalPrinterColumns:
   410      - description: Cluster
   411        jsonPath: .spec.clusterName
   412        name: Cluster
   413        type: string
   414      - description: Time duration since creation of Machine
   415        jsonPath: .metadata.creationTimestamp
   416        name: Age
   417        type: date
   418      - description: Provider ID
   419        jsonPath: .spec.providerID
   420        name: ProviderID
   421        type: string
   422      - description: Machine status such as Terminating/Pending/Running/Failed etc
   423        jsonPath: .status.phase
   424        name: Phase
   425        type: string
   426      - description: Kubernetes version associated with this Machine
   427        jsonPath: .spec.version
   428        name: Version
   429        type: string
   430      - description: Node name associated with this machine
   431        jsonPath: .status.nodeRef.name
   432        name: NodeName
   433        priority: 1
   434        type: string
   435      deprecated: true
   436      name: v1alpha4
   437      schema:
   438        openAPIV3Schema:
   439          description: |-
   440            Machine is the Schema for the machines API.
   441  
   442  
   443            Deprecated: This type will be removed in one of the next releases.
   444          properties:
   445            apiVersion:
   446              description: |-
   447                APIVersion defines the versioned schema of this representation of an object.
   448                Servers should convert recognized schemas to the latest internal value, and
   449                may reject unrecognized values.
   450                More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
   451              type: string
   452            kind:
   453              description: |-
   454                Kind is a string value representing the REST resource this object represents.
   455                Servers may infer this from the endpoint the client submits requests to.
   456                Cannot be updated.
   457                In CamelCase.
   458                More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
   459              type: string
   460            metadata:
   461              type: object
   462            spec:
   463              description: MachineSpec defines the desired state of Machine.
   464              properties:
   465                bootstrap:
   466                  description: |-
   467                    Bootstrap is a reference to a local struct which encapsulates
   468                    fields to configure the Machine’s bootstrapping mechanism.
   469                  properties:
   470                    configRef:
   471                      description: |-
   472                        ConfigRef is a reference to a bootstrap provider-specific resource
   473                        that holds configuration details. The reference is optional to
   474                        allow users/operators to specify Bootstrap.DataSecretName without
   475                        the need of a controller.
   476                      properties:
   477                        apiVersion:
   478                          description: API version of the referent.
   479                          type: string
   480                        fieldPath:
   481                          description: |-
   482                            If referring to a piece of an object instead of an entire object, this string
   483                            should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
   484                            For example, if the object reference is to a container within a pod, this would take on a value like:
   485                            "spec.containers{name}" (where "name" refers to the name of the container that triggered
   486                            the event) or if no container name is specified "spec.containers[2]" (container with
   487                            index 2 in this pod). This syntax is chosen only to have some well-defined way of
   488                            referencing a part of an object.
   489                            TODO: this design is not final and this field is subject to change in the future.
   490                          type: string
   491                        kind:
   492                          description: |-
   493                            Kind of the referent.
   494                            More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
   495                          type: string
   496                        name:
   497                          description: |-
   498                            Name of the referent.
   499                            More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   500                          type: string
   501                        namespace:
   502                          description: |-
   503                            Namespace of the referent.
   504                            More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
   505                          type: string
   506                        resourceVersion:
   507                          description: |-
   508                            Specific resourceVersion to which this reference is made, if any.
   509                            More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
   510                          type: string
   511                        uid:
   512                          description: |-
   513                            UID of the referent.
   514                            More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
   515                          type: string
   516                      type: object
   517                      x-kubernetes-map-type: atomic
   518                    dataSecretName:
   519                      description: |-
   520                        DataSecretName is the name of the secret that stores the bootstrap data script.
   521                        If nil, the Machine should remain in the Pending state.
   522                      type: string
   523                  type: object
   524                clusterName:
   525                  description: ClusterName is the name of the Cluster this object belongs
   526                    to.
   527                  minLength: 1
   528                  type: string
   529                failureDomain:
   530                  description: |-
   531                    FailureDomain is the failure domain the machine will be created in.
   532                    Must match a key in the FailureDomains map stored on the cluster object.
   533                  type: string
   534                infrastructureRef:
   535                  description: |-
   536                    InfrastructureRef is a required reference to a custom resource
   537                    offered by an infrastructure provider.
   538                  properties:
   539                    apiVersion:
   540                      description: API version of the referent.
   541                      type: string
   542                    fieldPath:
   543                      description: |-
   544                        If referring to a piece of an object instead of an entire object, this string
   545                        should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
   546                        For example, if the object reference is to a container within a pod, this would take on a value like:
   547                        "spec.containers{name}" (where "name" refers to the name of the container that triggered
   548                        the event) or if no container name is specified "spec.containers[2]" (container with
   549                        index 2 in this pod). This syntax is chosen only to have some well-defined way of
   550                        referencing a part of an object.
   551                        TODO: this design is not final and this field is subject to change in the future.
   552                      type: string
   553                    kind:
   554                      description: |-
   555                        Kind of the referent.
   556                        More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
   557                      type: string
   558                    name:
   559                      description: |-
   560                        Name of the referent.
   561                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   562                      type: string
   563                    namespace:
   564                      description: |-
   565                        Namespace of the referent.
   566                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
   567                      type: string
   568                    resourceVersion:
   569                      description: |-
   570                        Specific resourceVersion to which this reference is made, if any.
   571                        More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
   572                      type: string
   573                    uid:
   574                      description: |-
   575                        UID of the referent.
   576                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
   577                      type: string
   578                  type: object
   579                  x-kubernetes-map-type: atomic
   580                nodeDrainTimeout:
   581                  description: |-
   582                    NodeDrainTimeout is the total amount of time that the controller will spend on draining a node.
   583                    The default value is 0, meaning that the node can be drained without any time limitations.
   584                    NOTE: NodeDrainTimeout is different from `kubectl drain --timeout`
   585                  type: string
   586                providerID:
   587                  description: |-
   588                    ProviderID is the identification ID of the machine provided by the provider.
   589                    This field must match the provider ID as seen on the node object corresponding to this machine.
   590                    This field is required by higher level consumers of cluster-api. Example use case is cluster autoscaler
   591                    with cluster-api as provider. Clean-up logic in the autoscaler compares machines to nodes to find out
   592                    machines at provider which could not get registered as Kubernetes nodes. With cluster-api as a
   593                    generic out-of-tree provider for autoscaler, this field is required by autoscaler to be
   594                    able to have a provider view of the list of machines. Another list of nodes is queried from the k8s apiserver
   595                    and then a comparison is done to find out unregistered machines and are marked for delete.
   596                    This field will be set by the actuators and consumed by higher level entities like autoscaler that will
   597                    be interfacing with cluster-api as generic provider.
   598                  type: string
   599                version:
   600                  description: |-
   601                    Version defines the desired Kubernetes version.
   602                    This field is meant to be optionally used by bootstrap providers.
   603                  type: string
   604              required:
   605              - bootstrap
   606              - clusterName
   607              - infrastructureRef
   608              type: object
   609            status:
   610              description: MachineStatus defines the observed state of Machine.
   611              properties:
   612                addresses:
   613                  description: |-
   614                    Addresses is a list of addresses assigned to the machine.
   615                    This field is copied from the infrastructure provider reference.
   616                  items:
   617                    description: MachineAddress contains information for the node's
   618                      address.
   619                    properties:
   620                      address:
   621                        description: The machine address.
   622                        type: string
   623                      type:
   624                        description: Machine address type, one of Hostname, ExternalIP
   625                          or InternalIP.
   626                        type: string
   627                    required:
   628                    - address
   629                    - type
   630                    type: object
   631                  type: array
   632                bootstrapReady:
   633                  description: BootstrapReady is the state of the bootstrap provider.
   634                  type: boolean
   635                conditions:
   636                  description: Conditions defines current service state of the Machine.
   637                  items:
   638                    description: Condition defines an observation of a Cluster API resource
   639                      operational state.
   640                    properties:
   641                      lastTransitionTime:
   642                        description: |-
   643                          Last time the condition transitioned from one status to another.
   644                          This should be when the underlying condition changed. If that is not known, then using the time when
   645                          the API field changed is acceptable.
   646                        format: date-time
   647                        type: string
   648                      message:
   649                        description: |-
   650                          A human readable message indicating details about the transition.
   651                          This field may be empty.
   652                        type: string
   653                      reason:
   654                        description: |-
   655                          The reason for the condition's last transition in CamelCase.
   656                          The specific API may choose whether or not this field is considered a guaranteed API.
   657                          This field may not be empty.
   658                        type: string
   659                      severity:
   660                        description: |-
   661                          Severity provides an explicit classification of Reason code, so the users or machines can immediately
   662                          understand the current situation and act accordingly.
   663                          The Severity field MUST be set only when Status=False.
   664                        type: string
   665                      status:
   666                        description: Status of the condition, one of True, False, Unknown.
   667                        type: string
   668                      type:
   669                        description: |-
   670                          Type of condition in CamelCase or in foo.example.com/CamelCase.
   671                          Many .condition.type values are consistent across resources like Available, but because arbitrary conditions
   672                          can be useful (see .node.status.conditions), the ability to deconflict is important.
   673                        type: string
   674                    required:
   675                    - status
   676                    - type
   677                    type: object
   678                  type: array
   679                failureMessage:
   680                  description: |-
   681                    FailureMessage will be set in the event that there is a terminal problem
   682                    reconciling the Machine and will contain a more verbose string suitable
   683                    for logging and human consumption.
   684  
   685  
   686                    This field should not be set for transitive errors that a controller
   687                    faces that are expected to be fixed automatically over
   688                    time (like service outages), but instead indicate that something is
   689                    fundamentally wrong with the Machine's spec or the configuration of
   690                    the controller, and that manual intervention is required. Examples
   691                    of terminal errors would be invalid combinations of settings in the
   692                    spec, values that are unsupported by the controller, or the
   693                    responsible controller itself being critically misconfigured.
   694  
   695  
   696                    Any transient errors that occur during the reconciliation of Machines
   697                    can be added as events to the Machine object and/or logged in the
   698                    controller's output.
   699                  type: string
   700                failureReason:
   701                  description: |-
   702                    FailureReason will be set in the event that there is a terminal problem
   703                    reconciling the Machine and will contain a succinct value suitable
   704                    for machine interpretation.
   705  
   706  
   707                    This field should not be set for transitive errors that a controller
   708                    faces that are expected to be fixed automatically over
   709                    time (like service outages), but instead indicate that something is
   710                    fundamentally wrong with the Machine's spec or the configuration of
   711                    the controller, and that manual intervention is required. Examples
   712                    of terminal errors would be invalid combinations of settings in the
   713                    spec, values that are unsupported by the controller, or the
   714                    responsible controller itself being critically misconfigured.
   715  
   716  
   717                    Any transient errors that occur during the reconciliation of Machines
   718                    can be added as events to the Machine object and/or logged in the
   719                    controller's output.
   720                  type: string
   721                infrastructureReady:
   722                  description: InfrastructureReady is the state of the infrastructure
   723                    provider.
   724                  type: boolean
   725                lastUpdated:
   726                  description: LastUpdated identifies when the phase of the Machine
   727                    last transitioned.
   728                  format: date-time
   729                  type: string
   730                nodeInfo:
   731                  description: |-
   732                    NodeInfo is a set of ids/uuids to uniquely identify the node.
   733                    More info: https://kubernetes.io/docs/concepts/nodes/node/#info
   734                  properties:
   735                    architecture:
   736                      description: The Architecture reported by the node
   737                      type: string
   738                    bootID:
   739                      description: Boot ID reported by the node.
   740                      type: string
   741                    containerRuntimeVersion:
   742                      description: ContainerRuntime Version reported by the node through
   743                        runtime remote API (e.g. containerd://1.4.2).
   744                      type: string
   745                    kernelVersion:
   746                      description: Kernel Version reported by the node from 'uname -r'
   747                        (e.g. 3.16.0-0.bpo.4-amd64).
   748                      type: string
   749                    kubeProxyVersion:
   750                      description: KubeProxy Version reported by the node.
   751                      type: string
   752                    kubeletVersion:
   753                      description: Kubelet Version reported by the node.
   754                      type: string
   755                    machineID:
   756                      description: |-
   757                        MachineID reported by the node. For unique machine identification
   758                        in the cluster this field is preferred. Learn more from man(5)
   759                        machine-id: http://man7.org/linux/man-pages/man5/machine-id.5.html
   760                      type: string
   761                    operatingSystem:
   762                      description: The Operating System reported by the node
   763                      type: string
   764                    osImage:
   765                      description: OS Image reported by the node from /etc/os-release
   766                        (e.g. Debian GNU/Linux 7 (wheezy)).
   767                      type: string
   768                    systemUUID:
   769                      description: |-
   770                        SystemUUID reported by the node. For unique machine identification
   771                        MachineID is preferred. This field is specific to Red Hat hosts
   772                        https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid
   773                      type: string
   774                  required:
   775                  - architecture
   776                  - bootID
   777                  - containerRuntimeVersion
   778                  - kernelVersion
   779                  - kubeProxyVersion
   780                  - kubeletVersion
   781                  - machineID
   782                  - operatingSystem
   783                  - osImage
   784                  - systemUUID
   785                  type: object
   786                nodeRef:
   787                  description: NodeRef will point to the corresponding Node if it exists.
   788                  properties:
   789                    apiVersion:
   790                      description: API version of the referent.
   791                      type: string
   792                    fieldPath:
   793                      description: |-
   794                        If referring to a piece of an object instead of an entire object, this string
   795                        should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
   796                        For example, if the object reference is to a container within a pod, this would take on a value like:
   797                        "spec.containers{name}" (where "name" refers to the name of the container that triggered
   798                        the event) or if no container name is specified "spec.containers[2]" (container with
   799                        index 2 in this pod). This syntax is chosen only to have some well-defined way of
   800                        referencing a part of an object.
   801                        TODO: this design is not final and this field is subject to change in the future.
   802                      type: string
   803                    kind:
   804                      description: |-
   805                        Kind of the referent.
   806                        More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
   807                      type: string
   808                    name:
   809                      description: |-
   810                        Name of the referent.
   811                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   812                      type: string
   813                    namespace:
   814                      description: |-
   815                        Namespace of the referent.
   816                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
   817                      type: string
   818                    resourceVersion:
   819                      description: |-
   820                        Specific resourceVersion to which this reference is made, if any.
   821                        More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
   822                      type: string
   823                    uid:
   824                      description: |-
   825                        UID of the referent.
   826                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
   827                      type: string
   828                  type: object
   829                  x-kubernetes-map-type: atomic
   830                observedGeneration:
   831                  description: ObservedGeneration is the latest generation observed
   832                    by the controller.
   833                  format: int64
   834                  type: integer
   835                phase:
   836                  description: |-
   837                    Phase represents the current phase of machine actuation.
   838                    E.g. Pending, Running, Terminating, Failed etc.
   839                  type: string
   840                version:
   841                  description: |-
   842                    Version specifies the current version of Kubernetes running
   843                    on the corresponding Node. This is meant to be a means of bubbling
   844                    up status from the Node to the Machine.
   845                    It is entirely optional, but useful for end-user UX if it’s present.
   846                  type: string
   847              type: object
   848          type: object
   849      served: false
   850      storage: false
   851      subresources:
   852        status: {}
   853    - additionalPrinterColumns:
   854      - description: Cluster
   855        jsonPath: .spec.clusterName
   856        name: Cluster
   857        type: string
   858      - description: Node name associated with this machine
   859        jsonPath: .status.nodeRef.name
   860        name: NodeName
   861        type: string
   862      - description: Provider ID
   863        jsonPath: .spec.providerID
   864        name: ProviderID
   865        type: string
   866      - description: Machine status such as Terminating/Pending/Running/Failed etc
   867        jsonPath: .status.phase
   868        name: Phase
   869        type: string
   870      - description: Time duration since creation of Machine
   871        jsonPath: .metadata.creationTimestamp
   872        name: Age
   873        type: date
   874      - description: Kubernetes version associated with this Machine
   875        jsonPath: .spec.version
   876        name: Version
   877        type: string
   878      name: v1beta1
   879      schema:
   880        openAPIV3Schema:
   881          description: Machine is the Schema for the machines API.
   882          properties:
   883            apiVersion:
   884              description: |-
   885                APIVersion defines the versioned schema of this representation of an object.
   886                Servers should convert recognized schemas to the latest internal value, and
   887                may reject unrecognized values.
   888                More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
   889              type: string
   890            kind:
   891              description: |-
   892                Kind is a string value representing the REST resource this object represents.
   893                Servers may infer this from the endpoint the client submits requests to.
   894                Cannot be updated.
   895                In CamelCase.
   896                More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
   897              type: string
   898            metadata:
   899              type: object
   900            spec:
   901              description: MachineSpec defines the desired state of Machine.
   902              properties:
   903                bootstrap:
   904                  description: |-
   905                    Bootstrap is a reference to a local struct which encapsulates
   906                    fields to configure the Machine’s bootstrapping mechanism.
   907                  properties:
   908                    configRef:
   909                      description: |-
   910                        ConfigRef is a reference to a bootstrap provider-specific resource
   911                        that holds configuration details. The reference is optional to
   912                        allow users/operators to specify Bootstrap.DataSecretName without
   913                        the need of a controller.
   914                      properties:
   915                        apiVersion:
   916                          description: API version of the referent.
   917                          type: string
   918                        fieldPath:
   919                          description: |-
   920                            If referring to a piece of an object instead of an entire object, this string
   921                            should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
   922                            For example, if the object reference is to a container within a pod, this would take on a value like:
   923                            "spec.containers{name}" (where "name" refers to the name of the container that triggered
   924                            the event) or if no container name is specified "spec.containers[2]" (container with
   925                            index 2 in this pod). This syntax is chosen only to have some well-defined way of
   926                            referencing a part of an object.
   927                            TODO: this design is not final and this field is subject to change in the future.
   928                          type: string
   929                        kind:
   930                          description: |-
   931                            Kind of the referent.
   932                            More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
   933                          type: string
   934                        name:
   935                          description: |-
   936                            Name of the referent.
   937                            More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   938                          type: string
   939                        namespace:
   940                          description: |-
   941                            Namespace of the referent.
   942                            More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
   943                          type: string
   944                        resourceVersion:
   945                          description: |-
   946                            Specific resourceVersion to which this reference is made, if any.
   947                            More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
   948                          type: string
   949                        uid:
   950                          description: |-
   951                            UID of the referent.
   952                            More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
   953                          type: string
   954                      type: object
   955                      x-kubernetes-map-type: atomic
   956                    dataSecretName:
   957                      description: |-
   958                        DataSecretName is the name of the secret that stores the bootstrap data script.
   959                        If nil, the Machine should remain in the Pending state.
   960                      type: string
   961                  type: object
   962                clusterName:
   963                  description: ClusterName is the name of the Cluster this object belongs
   964                    to.
   965                  minLength: 1
   966                  type: string
   967                failureDomain:
   968                  description: |-
   969                    FailureDomain is the failure domain the machine will be created in.
   970                    Must match a key in the FailureDomains map stored on the cluster object.
   971                  type: string
   972                infrastructureRef:
   973                  description: |-
   974                    InfrastructureRef is a required reference to a custom resource
   975                    offered by an infrastructure provider.
   976                  properties:
   977                    apiVersion:
   978                      description: API version of the referent.
   979                      type: string
   980                    fieldPath:
   981                      description: |-
   982                        If referring to a piece of an object instead of an entire object, this string
   983                        should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
   984                        For example, if the object reference is to a container within a pod, this would take on a value like:
   985                        "spec.containers{name}" (where "name" refers to the name of the container that triggered
   986                        the event) or if no container name is specified "spec.containers[2]" (container with
   987                        index 2 in this pod). This syntax is chosen only to have some well-defined way of
   988                        referencing a part of an object.
   989                        TODO: this design is not final and this field is subject to change in the future.
   990                      type: string
   991                    kind:
   992                      description: |-
   993                        Kind of the referent.
   994                        More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
   995                      type: string
   996                    name:
   997                      description: |-
   998                        Name of the referent.
   999                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  1000                      type: string
  1001                    namespace:
  1002                      description: |-
  1003                        Namespace of the referent.
  1004                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
  1005                      type: string
  1006                    resourceVersion:
  1007                      description: |-
  1008                        Specific resourceVersion to which this reference is made, if any.
  1009                        More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
  1010                      type: string
  1011                    uid:
  1012                      description: |-
  1013                        UID of the referent.
  1014                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
  1015                      type: string
  1016                  type: object
  1017                  x-kubernetes-map-type: atomic
  1018                nodeDeletionTimeout:
  1019                  description: |-
  1020                    NodeDeletionTimeout defines how long the controller will attempt to delete the Node that the Machine
  1021                    hosts after the Machine is marked for deletion. A duration of 0 will retry deletion indefinitely.
  1022                    Defaults to 10 seconds.
  1023                  type: string
  1024                nodeDrainTimeout:
  1025                  description: |-
  1026                    NodeDrainTimeout is the total amount of time that the controller will spend on draining a node.
  1027                    The default value is 0, meaning that the node can be drained without any time limitations.
  1028                    NOTE: NodeDrainTimeout is different from `kubectl drain --timeout`
  1029                  type: string
  1030                nodeVolumeDetachTimeout:
  1031                  description: |-
  1032                    NodeVolumeDetachTimeout is the total amount of time that the controller will spend on waiting for all volumes
  1033                    to be detached. The default value is 0, meaning that the volumes can be detached without any time limitations.
  1034                  type: string
  1035                providerID:
  1036                  description: |-
  1037                    ProviderID is the identification ID of the machine provided by the provider.
  1038                    This field must match the provider ID as seen on the node object corresponding to this machine.
  1039                    This field is required by higher level consumers of cluster-api. Example use case is cluster autoscaler
  1040                    with cluster-api as provider. Clean-up logic in the autoscaler compares machines to nodes to find out
  1041                    machines at provider which could not get registered as Kubernetes nodes. With cluster-api as a
  1042                    generic out-of-tree provider for autoscaler, this field is required by autoscaler to be
  1043                    able to have a provider view of the list of machines. Another list of nodes is queried from the k8s apiserver
  1044                    and then a comparison is done to find out unregistered machines and are marked for delete.
  1045                    This field will be set by the actuators and consumed by higher level entities like autoscaler that will
  1046                    be interfacing with cluster-api as generic provider.
  1047                  type: string
  1048                version:
  1049                  description: |-
  1050                    Version defines the desired Kubernetes version.
  1051                    This field is meant to be optionally used by bootstrap providers.
  1052                  type: string
  1053              required:
  1054              - bootstrap
  1055              - clusterName
  1056              - infrastructureRef
  1057              type: object
  1058            status:
  1059              description: MachineStatus defines the observed state of Machine.
  1060              properties:
  1061                addresses:
  1062                  description: |-
  1063                    Addresses is a list of addresses assigned to the machine.
  1064                    This field is copied from the infrastructure provider reference.
  1065                  items:
  1066                    description: MachineAddress contains information for the node's
  1067                      address.
  1068                    properties:
  1069                      address:
  1070                        description: The machine address.
  1071                        type: string
  1072                      type:
  1073                        description: Machine address type, one of Hostname, ExternalIP,
  1074                          InternalIP, ExternalDNS or InternalDNS.
  1075                        type: string
  1076                    required:
  1077                    - address
  1078                    - type
  1079                    type: object
  1080                  type: array
  1081                bootstrapReady:
  1082                  description: BootstrapReady is the state of the bootstrap provider.
  1083                  type: boolean
  1084                certificatesExpiryDate:
  1085                  description: |-
  1086                    CertificatesExpiryDate is the expiry date of the machine certificates.
  1087                    This value is only set for control plane machines.
  1088                  format: date-time
  1089                  type: string
  1090                conditions:
  1091                  description: Conditions defines current service state of the Machine.
  1092                  items:
  1093                    description: Condition defines an observation of a Cluster API resource
  1094                      operational state.
  1095                    properties:
  1096                      lastTransitionTime:
  1097                        description: |-
  1098                          Last time the condition transitioned from one status to another.
  1099                          This should be when the underlying condition changed. If that is not known, then using the time when
  1100                          the API field changed is acceptable.
  1101                        format: date-time
  1102                        type: string
  1103                      message:
  1104                        description: |-
  1105                          A human readable message indicating details about the transition.
  1106                          This field may be empty.
  1107                        type: string
  1108                      reason:
  1109                        description: |-
  1110                          The reason for the condition's last transition in CamelCase.
  1111                          The specific API may choose whether or not this field is considered a guaranteed API.
  1112                          This field may not be empty.
  1113                        type: string
  1114                      severity:
  1115                        description: |-
  1116                          Severity provides an explicit classification of Reason code, so the users or machines can immediately
  1117                          understand the current situation and act accordingly.
  1118                          The Severity field MUST be set only when Status=False.
  1119                        type: string
  1120                      status:
  1121                        description: Status of the condition, one of True, False, Unknown.
  1122                        type: string
  1123                      type:
  1124                        description: |-
  1125                          Type of condition in CamelCase or in foo.example.com/CamelCase.
  1126                          Many .condition.type values are consistent across resources like Available, but because arbitrary conditions
  1127                          can be useful (see .node.status.conditions), the ability to deconflict is important.
  1128                        type: string
  1129                    required:
  1130                    - lastTransitionTime
  1131                    - status
  1132                    - type
  1133                    type: object
  1134                  type: array
  1135                failureMessage:
  1136                  description: |-
  1137                    FailureMessage will be set in the event that there is a terminal problem
  1138                    reconciling the Machine and will contain a more verbose string suitable
  1139                    for logging and human consumption.
  1140  
  1141  
  1142                    This field should not be set for transitive errors that a controller
  1143                    faces that are expected to be fixed automatically over
  1144                    time (like service outages), but instead indicate that something is
  1145                    fundamentally wrong with the Machine's spec or the configuration of
  1146                    the controller, and that manual intervention is required. Examples
  1147                    of terminal errors would be invalid combinations of settings in the
  1148                    spec, values that are unsupported by the controller, or the
  1149                    responsible controller itself being critically misconfigured.
  1150  
  1151  
  1152                    Any transient errors that occur during the reconciliation of Machines
  1153                    can be added as events to the Machine object and/or logged in the
  1154                    controller's output.
  1155                  type: string
  1156                failureReason:
  1157                  description: |-
  1158                    FailureReason will be set in the event that there is a terminal problem
  1159                    reconciling the Machine and will contain a succinct value suitable
  1160                    for machine interpretation.
  1161  
  1162  
  1163                    This field should not be set for transitive errors that a controller
  1164                    faces that are expected to be fixed automatically over
  1165                    time (like service outages), but instead indicate that something is
  1166                    fundamentally wrong with the Machine's spec or the configuration of
  1167                    the controller, and that manual intervention is required. Examples
  1168                    of terminal errors would be invalid combinations of settings in the
  1169                    spec, values that are unsupported by the controller, or the
  1170                    responsible controller itself being critically misconfigured.
  1171  
  1172  
  1173                    Any transient errors that occur during the reconciliation of Machines
  1174                    can be added as events to the Machine object and/or logged in the
  1175                    controller's output.
  1176                  type: string
  1177                infrastructureReady:
  1178                  description: InfrastructureReady is the state of the infrastructure
  1179                    provider.
  1180                  type: boolean
  1181                lastUpdated:
  1182                  description: LastUpdated identifies when the phase of the Machine
  1183                    last transitioned.
  1184                  format: date-time
  1185                  type: string
  1186                nodeInfo:
  1187                  description: |-
  1188                    NodeInfo is a set of ids/uuids to uniquely identify the node.
  1189                    More info: https://kubernetes.io/docs/concepts/nodes/node/#info
  1190                  properties:
  1191                    architecture:
  1192                      description: The Architecture reported by the node
  1193                      type: string
  1194                    bootID:
  1195                      description: Boot ID reported by the node.
  1196                      type: string
  1197                    containerRuntimeVersion:
  1198                      description: ContainerRuntime Version reported by the node through
  1199                        runtime remote API (e.g. containerd://1.4.2).
  1200                      type: string
  1201                    kernelVersion:
  1202                      description: Kernel Version reported by the node from 'uname -r'
  1203                        (e.g. 3.16.0-0.bpo.4-amd64).
  1204                      type: string
  1205                    kubeProxyVersion:
  1206                      description: KubeProxy Version reported by the node.
  1207                      type: string
  1208                    kubeletVersion:
  1209                      description: Kubelet Version reported by the node.
  1210                      type: string
  1211                    machineID:
  1212                      description: |-
  1213                        MachineID reported by the node. For unique machine identification
  1214                        in the cluster this field is preferred. Learn more from man(5)
  1215                        machine-id: http://man7.org/linux/man-pages/man5/machine-id.5.html
  1216                      type: string
  1217                    operatingSystem:
  1218                      description: The Operating System reported by the node
  1219                      type: string
  1220                    osImage:
  1221                      description: OS Image reported by the node from /etc/os-release
  1222                        (e.g. Debian GNU/Linux 7 (wheezy)).
  1223                      type: string
  1224                    systemUUID:
  1225                      description: |-
  1226                        SystemUUID reported by the node. For unique machine identification
  1227                        MachineID is preferred. This field is specific to Red Hat hosts
  1228                        https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid
  1229                      type: string
  1230                  required:
  1231                  - architecture
  1232                  - bootID
  1233                  - containerRuntimeVersion
  1234                  - kernelVersion
  1235                  - kubeProxyVersion
  1236                  - kubeletVersion
  1237                  - machineID
  1238                  - operatingSystem
  1239                  - osImage
  1240                  - systemUUID
  1241                  type: object
  1242                nodeRef:
  1243                  description: NodeRef will point to the corresponding Node if it exists.
  1244                  properties:
  1245                    apiVersion:
  1246                      description: API version of the referent.
  1247                      type: string
  1248                    fieldPath:
  1249                      description: |-
  1250                        If referring to a piece of an object instead of an entire object, this string
  1251                        should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
  1252                        For example, if the object reference is to a container within a pod, this would take on a value like:
  1253                        "spec.containers{name}" (where "name" refers to the name of the container that triggered
  1254                        the event) or if no container name is specified "spec.containers[2]" (container with
  1255                        index 2 in this pod). This syntax is chosen only to have some well-defined way of
  1256                        referencing a part of an object.
  1257                        TODO: this design is not final and this field is subject to change in the future.
  1258                      type: string
  1259                    kind:
  1260                      description: |-
  1261                        Kind of the referent.
  1262                        More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  1263                      type: string
  1264                    name:
  1265                      description: |-
  1266                        Name of the referent.
  1267                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  1268                      type: string
  1269                    namespace:
  1270                      description: |-
  1271                        Namespace of the referent.
  1272                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
  1273                      type: string
  1274                    resourceVersion:
  1275                      description: |-
  1276                        Specific resourceVersion to which this reference is made, if any.
  1277                        More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
  1278                      type: string
  1279                    uid:
  1280                      description: |-
  1281                        UID of the referent.
  1282                        More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
  1283                      type: string
  1284                  type: object
  1285                  x-kubernetes-map-type: atomic
  1286                observedGeneration:
  1287                  description: ObservedGeneration is the latest generation observed
  1288                    by the controller.
  1289                  format: int64
  1290                  type: integer
  1291                phase:
  1292                  description: |-
  1293                    Phase represents the current phase of machine actuation.
  1294                    E.g. Pending, Running, Terminating, Failed etc.
  1295                  type: string
  1296              type: object
  1297          type: object
  1298      served: true
  1299      storage: true
  1300      subresources:
  1301        status: {}