sigs.k8s.io/cluster-api/bootstrap/kubeadm@v0.0.0-20191016155141-23a891785b60/config-capi/crd/bases/cluster.x-k8s.io_machines.yaml (about) 1 2 --- 3 apiVersion: apiextensions.k8s.io/v1beta1 4 kind: CustomResourceDefinition 5 metadata: 6 creationTimestamp: null 7 name: machines.cluster.x-k8s.io 8 spec: 9 additionalPrinterColumns: 10 - JSONPath: .spec.providerID 11 description: Provider ID 12 name: ProviderID 13 type: string 14 - JSONPath: .status.phase 15 description: Machine status such as Terminating/Pending/Running/Failed etc 16 name: Phase 17 type: string 18 - JSONPath: .status.nodeRef.name 19 description: Node name associated with this machine 20 name: NodeName 21 priority: 1 22 type: string 23 group: cluster.x-k8s.io 24 names: 25 kind: Machine 26 plural: machines 27 shortNames: 28 - ma 29 scope: Namespaced 30 subresources: 31 status: {} 32 validation: 33 openAPIV3Schema: 34 description: / [Machine] Machine is the Schema for the machines API 35 properties: 36 apiVersion: 37 description: 'APIVersion defines the versioned schema of this representation 38 of an object. Servers should convert recognized schemas to the latest 39 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources' 40 type: string 41 kind: 42 description: 'Kind is a string value representing the REST resource this 43 object represents. Servers may infer this from the endpoint the client 44 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds' 45 type: string 46 metadata: 47 type: object 48 spec: 49 description: / [MachineSpec] MachineSpec defines the desired state of Machine 50 properties: 51 bootstrap: 52 description: Bootstrap is a reference to a local struct which encapsulates 53 fields to configure the Machine’s bootstrapping mechanism. 54 properties: 55 configRef: 56 description: ConfigRef is a reference to a bootstrap provider-specific 57 resource that holds configuration details. The reference is optional 58 to allow users/operators to specify Bootstrap.Data without the 59 need of a controller. 60 properties: 61 apiVersion: 62 description: API version of the referent. 63 type: string 64 fieldPath: 65 description: 'If referring to a piece of an object instead of 66 an entire object, this string should contain a valid JSON/Go 67 field access statement, such as desiredState.manifest.containers[2]. 68 For example, if the object reference is to a container within 69 a pod, this would take on a value like: "spec.containers{name}" 70 (where "name" refers to the name of the container that triggered 71 the event) or if no container name is specified "spec.containers[2]" 72 (container with index 2 in this pod). This syntax is chosen 73 only to have some well-defined way of referencing a part of 74 an object. TODO: this design is not final and this field is 75 subject to change in the future.' 76 type: string 77 kind: 78 description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds' 79 type: string 80 name: 81 description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' 82 type: string 83 namespace: 84 description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/' 85 type: string 86 resourceVersion: 87 description: 'Specific resourceVersion to which this reference 88 is made, if any. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency' 89 type: string 90 uid: 91 description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids' 92 type: string 93 type: object 94 data: 95 description: Data contains the bootstrap data, such as cloud-init 96 details scripts. If nil, the Machine should remain in the Pending 97 state. 98 type: string 99 type: object 100 infrastructureRef: 101 description: InfrastructureRef is a required reference to a custom resource 102 offered by an infrastructure provider. 103 properties: 104 apiVersion: 105 description: API version of the referent. 106 type: string 107 fieldPath: 108 description: 'If referring to a piece of an object instead of an 109 entire object, this string should contain a valid JSON/Go field 110 access statement, such as desiredState.manifest.containers[2]. 111 For example, if the object reference is to a container within 112 a pod, this would take on a value like: "spec.containers{name}" 113 (where "name" refers to the name of the container that triggered 114 the event) or if no container name is specified "spec.containers[2]" 115 (container with index 2 in this pod). This syntax is chosen only 116 to have some well-defined way of referencing a part of an object. 117 TODO: this design is not final and this field is subject to change 118 in the future.' 119 type: string 120 kind: 121 description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds' 122 type: string 123 name: 124 description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' 125 type: string 126 namespace: 127 description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/' 128 type: string 129 resourceVersion: 130 description: 'Specific resourceVersion to which this reference is 131 made, if any. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency' 132 type: string 133 uid: 134 description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids' 135 type: string 136 type: object 137 metadata: 138 description: ObjectMeta will autopopulate the Node created. Use this 139 to indicate what labels, annotations, name prefix, etc., should be 140 used when creating the Node. 141 properties: 142 annotations: 143 additionalProperties: 144 type: string 145 description: 'Annotations is an unstructured key value map stored 146 with a resource that may be set by external tools to store and 147 retrieve arbitrary metadata. They are not queryable and should 148 be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations' 149 type: object 150 generateName: 151 description: "GenerateName is an optional prefix, used by the server, 152 to generate a unique name ONLY IF the Name field has not been 153 provided. If this field is used, the name returned to the client 154 will be different than the name passed. This value will also be 155 combined with a unique suffix. The provided value has the same 156 validation rules as the Name field, and may be truncated by the 157 length of the suffix required to make the value unique on the 158 server. \n If this field is specified and the generated name exists, 159 the server will NOT return a 409 - instead, it will either return 160 201 Created or 500 with Reason ServerTimeout indicating a unique 161 name could not be found in the time allotted, and the client should 162 retry (optionally after the time indicated in the Retry-After 163 header). \n Applied only if Name is not specified. More info: 164 https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency" 165 type: string 166 labels: 167 additionalProperties: 168 type: string 169 description: 'Map of string keys and values that can be used to 170 organize and categorize (scope and select) objects. May match 171 selectors of replication controllers and services. More info: 172 http://kubernetes.io/docs/user-guide/labels' 173 type: object 174 name: 175 description: 'Name must be unique within a namespace. Is required 176 when creating resources, although some resources may allow a client 177 to request the generation of an appropriate name automatically. 178 Name is primarily intended for creation idempotence and configuration 179 definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names' 180 type: string 181 namespace: 182 description: "Namespace defines the space within each name must 183 be unique. An empty namespace is equivalent to the \"default\" 184 namespace, but \"default\" is the canonical representation. Not 185 all objects are required to be scoped to a namespace - the value 186 of this field for those objects will be empty. \n Must be a DNS_LABEL. 187 Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces" 188 type: string 189 ownerReferences: 190 description: List of objects depended by this object. If ALL objects 191 in the list have been deleted, this object will be garbage collected. 192 If this object is managed by a controller, then an entry in this 193 list will point to this controller, with the controller field 194 set to true. There cannot be more than one managing controller. 195 items: 196 description: OwnerReference contains enough information to let 197 you identify an owning object. An owning object must be in the 198 same namespace as the dependent, or be cluster-scoped, so there 199 is no namespace field. 200 properties: 201 apiVersion: 202 description: API version of the referent. 203 type: string 204 blockOwnerDeletion: 205 description: If true, AND if the owner has the "foregroundDeletion" 206 finalizer, then the owner cannot be deleted from the key-value 207 store until this reference is removed. Defaults to false. 208 To set this field, a user needs "delete" permission of the 209 owner, otherwise 422 (Unprocessable Entity) will be returned. 210 type: boolean 211 controller: 212 description: If true, this reference points to the managing 213 controller. 214 type: boolean 215 kind: 216 description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds' 217 type: string 218 name: 219 description: 'Name of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#names' 220 type: string 221 uid: 222 description: 'UID of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#uids' 223 type: string 224 required: 225 - apiVersion 226 - kind 227 - name 228 - uid 229 type: object 230 type: array 231 type: object 232 providerID: 233 description: ProviderID is the identification ID of the machine provided 234 by the provider. This field must match the provider ID as seen on 235 the node object corresponding to this machine. This field is required 236 by higher level consumers of cluster-api. Example use case is cluster 237 autoscaler with cluster-api as provider. Clean-up logic in the autoscaler 238 compares machines to nodes to find out machines at provider which 239 could not get registered as Kubernetes nodes. With cluster-api as 240 a generic out-of-tree provider for autoscaler, this field is required 241 by autoscaler to be able to have a provider view of the list of machines. 242 Another list of nodes is queried from the k8s apiserver and then a 243 comparison is done to find out unregistered machines and are marked 244 for delete. This field will be set by the actuators and consumed by 245 higher level entities like autoscaler that will be interfacing with 246 cluster-api as generic provider. 247 type: string 248 version: 249 description: Version defines the desired Kubernetes version. This field 250 is meant to be optionally used by bootstrap providers. 251 type: string 252 required: 253 - bootstrap 254 - infrastructureRef 255 type: object 256 status: 257 description: / [MachineStatus] MachineStatus defines the observed state 258 of Machine 259 properties: 260 addresses: 261 description: Addresses is a list of addresses assigned to the machine. 262 This field is copied from the infrastructure provider reference. 263 items: 264 description: MachineAddress contains information for the node's address. 265 properties: 266 address: 267 description: The machine address. 268 type: string 269 type: 270 description: Machine address type, one of Hostname, ExternalIP 271 or InternalIP. 272 type: string 273 required: 274 - address 275 - type 276 type: object 277 type: array 278 bootstrapReady: 279 description: BootstrapReady is the state of the bootstrap provider. 280 type: boolean 281 errorMessage: 282 description: "ErrorMessage will be set in the event that there is a 283 terminal problem reconciling the Machine and will contain a more verbose 284 string suitable for logging and human consumption. \n This field should 285 not be set for transitive errors that a controller faces that are 286 expected to be fixed automatically over time (like service outages), 287 but instead indicate that something is fundamentally wrong with the 288 Machine's spec or the configuration of the controller, and that manual 289 intervention is required. Examples of terminal errors would be invalid 290 combinations of settings in the spec, values that are unsupported 291 by the controller, or the responsible controller itself being critically 292 misconfigured. \n Any transient errors that occur during the reconciliation 293 of Machines can be added as events to the Machine object and/or logged 294 in the controller's output." 295 type: string 296 errorReason: 297 description: "ErrorReason will be set in the event that there is a terminal 298 problem reconciling the Machine and will contain a succinct value 299 suitable for machine interpretation. \n This field should not be set 300 for transitive errors that a controller faces that are expected to 301 be fixed automatically over time (like service outages), but instead 302 indicate that something is fundamentally wrong with the Machine's 303 spec or the configuration of the controller, and that manual intervention 304 is required. Examples of terminal errors would be invalid combinations 305 of settings in the spec, values that are unsupported by the controller, 306 or the responsible controller itself being critically misconfigured. 307 \n Any transient errors that occur during the reconciliation of Machines 308 can be added as events to the Machine object and/or logged in the 309 controller's output." 310 type: string 311 infrastructureReady: 312 description: InfrastructureReady is the state of the infrastructure 313 provider. 314 type: boolean 315 lastUpdated: 316 description: LastUpdated identifies when this status was last observed. 317 format: date-time 318 type: string 319 nodeRef: 320 description: NodeRef will point to the corresponding Node if it exists. 321 properties: 322 apiVersion: 323 description: API version of the referent. 324 type: string 325 fieldPath: 326 description: 'If referring to a piece of an object instead of an 327 entire object, this string should contain a valid JSON/Go field 328 access statement, such as desiredState.manifest.containers[2]. 329 For example, if the object reference is to a container within 330 a pod, this would take on a value like: "spec.containers{name}" 331 (where "name" refers to the name of the container that triggered 332 the event) or if no container name is specified "spec.containers[2]" 333 (container with index 2 in this pod). This syntax is chosen only 334 to have some well-defined way of referencing a part of an object. 335 TODO: this design is not final and this field is subject to change 336 in the future.' 337 type: string 338 kind: 339 description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds' 340 type: string 341 name: 342 description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' 343 type: string 344 namespace: 345 description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/' 346 type: string 347 resourceVersion: 348 description: 'Specific resourceVersion to which this reference is 349 made, if any. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency' 350 type: string 351 uid: 352 description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids' 353 type: string 354 type: object 355 phase: 356 description: Phase represents the current phase of machine actuation. 357 E.g. Pending, Running, Terminating, Failed etc. 358 type: string 359 version: 360 description: Version specifies the current version of Kubernetes running 361 on the corresponding Node. This is meant to be a means of bubbling 362 up status from the Node to the Machine. It is entirely optional, but 363 useful for end-user UX if it’s present. 364 type: string 365 type: object 366 type: object 367 version: v1alpha2 368 versions: 369 - name: v1alpha2 370 served: true 371 storage: true 372 status: 373 acceptedNames: 374 kind: "" 375 plural: "" 376 conditions: [] 377 storedVersions: []