sigs.k8s.io/cluster-api/bootstrap/kubeadm@v0.0.0-20191016155141-23a891785b60/config-capi/crds/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 defines the observed state of Machine 258 properties: 259 addresses: 260 description: Addresses is a list of addresses assigned to the machine. 261 This field is copied from the infrastructure provider reference. 262 items: 263 description: MachineAddress contains information for the node's address. 264 properties: 265 address: 266 description: The machine address. 267 type: string 268 type: 269 description: Machine address type, one of Hostname, ExternalIP 270 or InternalIP. 271 type: string 272 required: 273 - address 274 - type 275 type: object 276 type: array 277 bootstrapReady: 278 description: BootstrapReady is the state of the bootstrap provider. 279 type: boolean 280 errorMessage: 281 description: "ErrorMessage will be set in the event that there is a 282 terminal problem reconciling the Machine and will contain a more verbose 283 string suitable for logging and human consumption. \n This field should 284 not be set for transitive errors that a controller faces that are 285 expected to be fixed automatically over time (like service outages), 286 but instead indicate that something is fundamentally wrong with the 287 Machine's spec or the configuration of the controller, and that manual 288 intervention is required. Examples of terminal errors would be invalid 289 combinations of settings in the spec, values that are unsupported 290 by the controller, or the responsible controller itself being critically 291 misconfigured. \n Any transient errors that occur during the reconciliation 292 of Machines can be added as events to the Machine object and/or logged 293 in the controller's output." 294 type: string 295 errorReason: 296 description: "ErrorReason will be set in the event that there is a terminal 297 problem reconciling the Machine and will contain a succinct value 298 suitable for machine interpretation. \n This field should not be set 299 for transitive errors that a controller faces that are expected to 300 be fixed automatically over time (like service outages), but instead 301 indicate that something is fundamentally wrong with the Machine's 302 spec or the configuration of the controller, and that manual intervention 303 is required. Examples of terminal errors would be invalid combinations 304 of settings in the spec, values that are unsupported by the controller, 305 or the responsible controller itself being critically misconfigured. 306 \n Any transient errors that occur during the reconciliation of Machines 307 can be added as events to the Machine object and/or logged in the 308 controller's output." 309 type: string 310 infrastructureReady: 311 description: InfrastructureReady is the state of the infrastructure 312 provider. 313 type: boolean 314 lastUpdated: 315 description: LastUpdated identifies when this status was last observed. 316 format: date-time 317 type: string 318 nodeRef: 319 description: NodeRef will point to the corresponding Node if it exists. 320 properties: 321 apiVersion: 322 description: API version of the referent. 323 type: string 324 fieldPath: 325 description: 'If referring to a piece of an object instead of an 326 entire object, this string should contain a valid JSON/Go field 327 access statement, such as desiredState.manifest.containers[2]. 328 For example, if the object reference is to a container within 329 a pod, this would take on a value like: "spec.containers{name}" 330 (where "name" refers to the name of the container that triggered 331 the event) or if no container name is specified "spec.containers[2]" 332 (container with index 2 in this pod). This syntax is chosen only 333 to have some well-defined way of referencing a part of an object. 334 TODO: this design is not final and this field is subject to change 335 in the future.' 336 type: string 337 kind: 338 description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds' 339 type: string 340 name: 341 description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' 342 type: string 343 namespace: 344 description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/' 345 type: string 346 resourceVersion: 347 description: 'Specific resourceVersion to which this reference is 348 made, if any. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency' 349 type: string 350 uid: 351 description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids' 352 type: string 353 type: object 354 phase: 355 description: Phase represents the current phase of machine actuation. 356 E.g. Pending, Running, Terminating, Failed etc. 357 type: string 358 version: 359 description: Version specifies the current version of Kubernetes running 360 on the corresponding Node. This is meant to be a means of bubbling 361 up status from the Node to the Machine. It is entirely optional, but 362 useful for end-user UX if it’s present. 363 type: string 364 type: object 365 type: object 366 versions: 367 - name: v1alpha2 368 served: true 369 storage: true 370 status: 371 acceptedNames: 372 kind: "" 373 plural: "" 374 conditions: [] 375 storedVersions: []