sigs.k8s.io/cluster-api-provider-azure@v1.17.0/config/crd/bases/infrastructure.cluster.x-k8s.io_azuremachines.yaml (about) 1 --- 2 apiVersion: apiextensions.k8s.io/v1 3 kind: CustomResourceDefinition 4 metadata: 5 annotations: 6 controller-gen.kubebuilder.io/version: v0.15.0 7 name: azuremachines.infrastructure.cluster.x-k8s.io 8 spec: 9 group: infrastructure.cluster.x-k8s.io 10 names: 11 categories: 12 - cluster-api 13 kind: AzureMachine 14 listKind: AzureMachineList 15 plural: azuremachines 16 singular: azuremachine 17 scope: Namespaced 18 versions: 19 - additionalPrinterColumns: 20 - description: Cluster to which this AzureMachine belongs 21 jsonPath: .metadata.labels.cluster\.x-k8s\.io/cluster-name 22 name: Cluster 23 priority: 1 24 type: string 25 - jsonPath: .status.conditions[?(@.type=='Ready')].status 26 name: Ready 27 type: string 28 - jsonPath: .status.conditions[?(@.type=='Ready')].severity 29 name: Severity 30 type: string 31 - jsonPath: .status.conditions[?(@.type=='Ready')].reason 32 name: Reason 33 type: string 34 - jsonPath: .status.conditions[?(@.type=='Ready')].message 35 name: Message 36 priority: 1 37 type: string 38 - description: Azure VM provisioning state 39 jsonPath: .status.vmState 40 name: State 41 type: string 42 - description: Machine object to which this AzureMachine belongs 43 jsonPath: .metadata.ownerReferences[?(@.kind=="Machine")].name 44 name: Machine 45 priority: 1 46 type: string 47 - description: Azure VM ID 48 jsonPath: .spec.providerID 49 name: VM ID 50 priority: 1 51 type: string 52 - description: Azure VM Size 53 jsonPath: .spec.vmSize 54 name: VM Size 55 priority: 1 56 type: string 57 - description: Time duration since creation of this AzureMachine 58 jsonPath: .metadata.creationTimestamp 59 name: Age 60 type: date 61 name: v1beta1 62 schema: 63 openAPIV3Schema: 64 description: AzureMachine is the Schema for the azuremachines API. 65 properties: 66 apiVersion: 67 description: |- 68 APIVersion defines the versioned schema of this representation of an object. 69 Servers should convert recognized schemas to the latest internal value, and 70 may reject unrecognized values. 71 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 72 type: string 73 kind: 74 description: |- 75 Kind is a string value representing the REST resource this object represents. 76 Servers may infer this from the endpoint the client submits requests to. 77 Cannot be updated. 78 In CamelCase. 79 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 80 type: string 81 metadata: 82 type: object 83 spec: 84 description: AzureMachineSpec defines the desired state of AzureMachine. 85 properties: 86 acceleratedNetworking: 87 description: 'Deprecated: AcceleratedNetworking should be set in the 88 networkInterfaces field.' 89 type: boolean 90 additionalCapabilities: 91 description: AdditionalCapabilities specifies additional capabilities 92 enabled or disabled on the virtual machine. 93 properties: 94 ultraSSDEnabled: 95 description: |- 96 UltraSSDEnabled enables or disables Azure UltraSSD capability for the virtual machine. 97 Defaults to true if Ultra SSD data disks are specified, 98 otherwise it doesn't set the capability on the VM. 99 type: boolean 100 type: object 101 additionalTags: 102 additionalProperties: 103 type: string 104 description: |- 105 AdditionalTags is an optional set of tags to add to an instance, in addition to the ones added by default by the 106 Azure provider. If both the AzureCluster and the AzureMachine specify the same tag name with different values, the 107 AzureMachine's value takes precedence. 108 type: object 109 allocatePublicIP: 110 description: AllocatePublicIP allows the ability to create dynamic 111 public ips for machines where this value is true. 112 type: boolean 113 capacityReservationGroupID: 114 description: |- 115 CapacityReservationGroupID specifies the capacity reservation group resource id that should be 116 used for allocating the virtual machine. 117 The field size should be greater than 0 and the field input must start with '/'. 118 The input for capacityReservationGroupID must be similar to '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}'. 119 The keys which are used should be among 'subscriptions', 'providers' and 'resourcegroups' followed by valid ID or names respectively. 120 It is optional but may not be changed once set. 121 type: string 122 dataDisks: 123 description: DataDisk specifies the parameters that are used to add 124 one or more data disks to the machine 125 items: 126 description: DataDisk specifies the parameters that are used to 127 add one or more data disks to the machine. 128 properties: 129 cachingType: 130 description: CachingType specifies the caching requirements. 131 enum: 132 - None 133 - ReadOnly 134 - ReadWrite 135 type: string 136 diskSizeGB: 137 description: DiskSizeGB is the size in GB to assign to the data 138 disk. 139 format: int32 140 type: integer 141 lun: 142 description: |- 143 Lun Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM. 144 The value must be between 0 and 63. 145 format: int32 146 type: integer 147 managedDisk: 148 description: ManagedDisk specifies the Managed Disk parameters 149 for the data disk. 150 properties: 151 diskEncryptionSet: 152 description: DiskEncryptionSet specifies the customer-managed 153 disk encryption set resource id for the managed disk. 154 properties: 155 id: 156 description: ID defines resourceID for diskEncryptionSet 157 resource. It must be in the same subscription 158 type: string 159 type: object 160 securityProfile: 161 description: SecurityProfile specifies the security profile 162 for the managed disk. 163 properties: 164 diskEncryptionSet: 165 description: |- 166 DiskEncryptionSet specifies the customer-managed disk encryption set resource id for the 167 managed disk that is used for Customer Managed Key encrypted ConfidentialVM OS Disk and 168 VMGuest blob. 169 properties: 170 id: 171 description: ID defines resourceID for diskEncryptionSet 172 resource. It must be in the same subscription 173 type: string 174 type: object 175 securityEncryptionType: 176 description: |- 177 SecurityEncryptionType specifies the encryption type of the managed disk. 178 It is set to DiskWithVMGuestState to encrypt the managed disk along with the VMGuestState 179 blob, and to VMGuestStateOnly to encrypt the VMGuestState blob only. 180 When set to VMGuestStateOnly, VirtualizedTrustedPlatformModule should be set to Enabled. 181 When set to DiskWithVMGuestState, EncryptionAtHost should be disabled, SecureBoot and 182 VirtualizedTrustedPlatformModule should be set to Enabled. 183 It can be set only for Confidential VMs. 184 enum: 185 - VMGuestStateOnly 186 - DiskWithVMGuestState 187 type: string 188 type: object 189 storageAccountType: 190 type: string 191 type: object 192 nameSuffix: 193 description: |- 194 NameSuffix is the suffix to be appended to the machine name to generate the disk name. 195 Each disk name will be in format <machineName>_<nameSuffix>. 196 type: string 197 required: 198 - diskSizeGB 199 - nameSuffix 200 type: object 201 type: array 202 diagnostics: 203 description: |- 204 Diagnostics specifies the diagnostics settings for a virtual machine. 205 If not specified then Boot diagnostics (Managed) will be enabled. 206 properties: 207 boot: 208 description: |- 209 Boot configures the boot diagnostics settings for the virtual machine. 210 This allows to configure capturing serial output from the virtual machine on boot. 211 This is useful for debugging software based launch issues. 212 If not specified then Boot diagnostics (Managed) will be enabled. 213 properties: 214 storageAccountType: 215 description: |- 216 StorageAccountType determines if the storage account for storing the diagnostics data 217 should be disabled (Disabled), provisioned by Azure (Managed) or by the user (UserManaged). 218 enum: 219 - Managed 220 - UserManaged 221 - Disabled 222 type: string 223 userManaged: 224 description: UserManaged provides a reference to the user-managed 225 storage account. 226 properties: 227 storageAccountURI: 228 description: |- 229 StorageAccountURI is the URI of the user-managed storage account. 230 The URI typically will be `https://<mystorageaccountname>.blob.core.windows.net/` 231 but may differ if you are using Azure DNS zone endpoints. 232 You can find the correct endpoint by looking for the Blob Primary Endpoint in the 233 endpoints tab in the Azure console or with the CLI by issuing 234 `az storage account list --query='[].{name: name, "resource group": resourceGroup, "blob endpoint": primaryEndpoints.blob}'`. 235 maxLength: 1024 236 pattern: ^https:// 237 type: string 238 required: 239 - storageAccountURI 240 type: object 241 required: 242 - storageAccountType 243 type: object 244 type: object 245 disableExtensionOperations: 246 description: |- 247 DisableExtensionOperations specifies whether extension operations should be disabled on the virtual machine. 248 Use this setting only if VMExtensions are not supported by your image, as it disables CAPZ bootstrapping extension used for detecting Kubernetes bootstrap failure. 249 This may only be set to True when no extensions are configured on the virtual machine. 250 type: boolean 251 dnsServers: 252 description: DNSServers adds a list of DNS Server IP addresses to 253 the VM NICs. 254 items: 255 type: string 256 type: array 257 enableIPForwarding: 258 description: |- 259 EnableIPForwarding enables IP Forwarding in Azure which is required for some CNI's to send traffic from a pods on one machine 260 to another. This is required for IpV6 with Calico in combination with User Defined Routes (set by the Azure Cloud Controller 261 manager). Default is false for disabled. 262 type: boolean 263 failureDomain: 264 description: |- 265 FailureDomain is the failure domain unique identifier this Machine should be attached to, 266 as defined in Cluster API. This relates to an Azure Availability Zone 267 type: string 268 identity: 269 default: None 270 description: |- 271 Identity is the type of identity used for the virtual machine. 272 The type 'SystemAssigned' is an implicitly created identity. 273 The generated identity will be assigned a Subscription contributor role. 274 The type 'UserAssigned' is a standalone Azure resource provided by the user 275 and assigned to the VM 276 enum: 277 - None 278 - SystemAssigned 279 - UserAssigned 280 type: string 281 image: 282 description: |- 283 Image is used to provide details of an image to use during VM creation. 284 If image details are omitted the image will default the Azure Marketplace "capi" offer, 285 which is based on Ubuntu. 286 properties: 287 computeGallery: 288 description: ComputeGallery specifies an image to use from the 289 Azure Compute Gallery 290 properties: 291 gallery: 292 description: Gallery specifies the name of the compute image 293 gallery that contains the image 294 minLength: 1 295 type: string 296 name: 297 description: Name is the name of the image 298 minLength: 1 299 type: string 300 plan: 301 description: Plan contains plan information. 302 properties: 303 offer: 304 description: |- 305 Offer specifies the name of a group of related images created by the publisher. 306 For example, UbuntuServer, WindowsServer 307 minLength: 1 308 type: string 309 publisher: 310 description: Publisher is the name of the organization 311 that created the image 312 minLength: 1 313 type: string 314 sku: 315 description: |- 316 SKU specifies an instance of an offer, such as a major release of a distribution. 317 For example, 18.04-LTS, 2019-Datacenter 318 minLength: 1 319 type: string 320 required: 321 - offer 322 - publisher 323 - sku 324 type: object 325 resourceGroup: 326 description: ResourceGroup specifies the resource group containing 327 the private compute gallery. 328 type: string 329 subscriptionID: 330 description: SubscriptionID is the identifier of the subscription 331 that contains the private compute gallery. 332 type: string 333 version: 334 description: |- 335 Version specifies the version of the marketplace image. The allowed formats 336 are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. 337 Specify 'latest' to use the latest version of an image available at deploy time. 338 Even if you use 'latest', the VM image will not automatically update after deploy 339 time even if a new version becomes available. 340 minLength: 1 341 type: string 342 required: 343 - gallery 344 - name 345 - version 346 type: object 347 id: 348 description: ID specifies an image to use by ID 349 type: string 350 marketplace: 351 description: Marketplace specifies an image to use from the Azure 352 Marketplace 353 properties: 354 offer: 355 description: |- 356 Offer specifies the name of a group of related images created by the publisher. 357 For example, UbuntuServer, WindowsServer 358 minLength: 1 359 type: string 360 publisher: 361 description: Publisher is the name of the organization that 362 created the image 363 minLength: 1 364 type: string 365 sku: 366 description: |- 367 SKU specifies an instance of an offer, such as a major release of a distribution. 368 For example, 18.04-LTS, 2019-Datacenter 369 minLength: 1 370 type: string 371 thirdPartyImage: 372 default: false 373 description: |- 374 ThirdPartyImage indicates the image is published by a third party publisher and a Plan 375 will be generated for it. 376 type: boolean 377 version: 378 description: |- 379 Version specifies the version of an image sku. The allowed formats 380 are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. 381 Specify 'latest' to use the latest version of an image available at deploy time. 382 Even if you use 'latest', the VM image will not automatically update after deploy 383 time even if a new version becomes available. 384 minLength: 1 385 type: string 386 required: 387 - offer 388 - publisher 389 - sku 390 - version 391 type: object 392 sharedGallery: 393 description: |- 394 SharedGallery specifies an image to use from an Azure Shared Image Gallery 395 Deprecated: use ComputeGallery instead. 396 properties: 397 gallery: 398 description: Gallery specifies the name of the shared image 399 gallery that contains the image 400 minLength: 1 401 type: string 402 name: 403 description: Name is the name of the image 404 minLength: 1 405 type: string 406 offer: 407 description: |- 408 Offer specifies the name of a group of related images created by the publisher. 409 For example, UbuntuServer, WindowsServer 410 This value will be used to add a `Plan` in the API request when creating the VM/VMSS resource. 411 This is needed when the source image from which this SIG image was built requires the `Plan` to be used. 412 type: string 413 publisher: 414 description: |- 415 Publisher is the name of the organization that created the image. 416 This value will be used to add a `Plan` in the API request when creating the VM/VMSS resource. 417 This is needed when the source image from which this SIG image was built requires the `Plan` to be used. 418 type: string 419 resourceGroup: 420 description: ResourceGroup specifies the resource group containing 421 the shared image gallery 422 minLength: 1 423 type: string 424 sku: 425 description: |- 426 SKU specifies an instance of an offer, such as a major release of a distribution. 427 For example, 18.04-LTS, 2019-Datacenter 428 This value will be used to add a `Plan` in the API request when creating the VM/VMSS resource. 429 This is needed when the source image from which this SIG image was built requires the `Plan` to be used. 430 type: string 431 subscriptionID: 432 description: SubscriptionID is the identifier of the subscription 433 that contains the shared image gallery 434 minLength: 1 435 type: string 436 version: 437 description: |- 438 Version specifies the version of the marketplace image. The allowed formats 439 are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. 440 Specify 'latest' to use the latest version of an image available at deploy time. 441 Even if you use 'latest', the VM image will not automatically update after deploy 442 time even if a new version becomes available. 443 minLength: 1 444 type: string 445 required: 446 - gallery 447 - name 448 - resourceGroup 449 - subscriptionID 450 - version 451 type: object 452 type: object 453 networkInterfaces: 454 description: |- 455 NetworkInterfaces specifies a list of network interface configurations. 456 If left unspecified, the VM will get a single network interface with a 457 single IPConfig in the subnet specified in the cluster's node subnet field. 458 The primary interface will be the first networkInterface specified (index 0) in the list. 459 items: 460 description: NetworkInterface defines a network interface. 461 properties: 462 acceleratedNetworking: 463 description: |- 464 AcceleratedNetworking enables or disables Azure accelerated networking. If omitted, it will be set based on 465 whether the requested VMSize supports accelerated networking. 466 If AcceleratedNetworking is set to true with a VMSize that does not support it, Azure will return an error. 467 type: boolean 468 privateIPConfigs: 469 description: |- 470 PrivateIPConfigs specifies the number of private IP addresses to attach to the interface. 471 Defaults to 1 if not specified. 472 type: integer 473 subnetName: 474 description: SubnetName specifies the subnet in which the new 475 network interface will be placed. 476 type: string 477 type: object 478 type: array 479 osDisk: 480 description: OSDisk specifies the parameters for the operating system 481 disk of the machine 482 properties: 483 cachingType: 484 description: CachingType specifies the caching requirements. 485 enum: 486 - None 487 - ReadOnly 488 - ReadWrite 489 type: string 490 diffDiskSettings: 491 description: DiffDiskSettings describe ephemeral disk settings 492 for the os disk. 493 properties: 494 option: 495 description: |- 496 Option enables ephemeral OS when set to "Local" 497 See https://learn.microsoft.com/azure/virtual-machines/ephemeral-os-disks for full details 498 enum: 499 - Local 500 type: string 501 placement: 502 description: Placement specifies the ephemeral disk placement 503 for operating system disk. If placement is specified, Option 504 must be set to "Local". 505 enum: 506 - CacheDisk 507 - NvmeDisk 508 - ResourceDisk 509 type: string 510 required: 511 - option 512 type: object 513 diskSizeGB: 514 description: |- 515 DiskSizeGB is the size in GB to assign to the OS disk. 516 Will have a default of 30GB if not provided 517 format: int32 518 type: integer 519 managedDisk: 520 description: ManagedDisk specifies the Managed Disk parameters 521 for the OS disk. 522 properties: 523 diskEncryptionSet: 524 description: DiskEncryptionSet specifies the customer-managed 525 disk encryption set resource id for the managed disk. 526 properties: 527 id: 528 description: ID defines resourceID for diskEncryptionSet 529 resource. It must be in the same subscription 530 type: string 531 type: object 532 securityProfile: 533 description: SecurityProfile specifies the security profile 534 for the managed disk. 535 properties: 536 diskEncryptionSet: 537 description: |- 538 DiskEncryptionSet specifies the customer-managed disk encryption set resource id for the 539 managed disk that is used for Customer Managed Key encrypted ConfidentialVM OS Disk and 540 VMGuest blob. 541 properties: 542 id: 543 description: ID defines resourceID for diskEncryptionSet 544 resource. It must be in the same subscription 545 type: string 546 type: object 547 securityEncryptionType: 548 description: |- 549 SecurityEncryptionType specifies the encryption type of the managed disk. 550 It is set to DiskWithVMGuestState to encrypt the managed disk along with the VMGuestState 551 blob, and to VMGuestStateOnly to encrypt the VMGuestState blob only. 552 When set to VMGuestStateOnly, VirtualizedTrustedPlatformModule should be set to Enabled. 553 When set to DiskWithVMGuestState, EncryptionAtHost should be disabled, SecureBoot and 554 VirtualizedTrustedPlatformModule should be set to Enabled. 555 It can be set only for Confidential VMs. 556 enum: 557 - VMGuestStateOnly 558 - DiskWithVMGuestState 559 type: string 560 type: object 561 storageAccountType: 562 type: string 563 type: object 564 osType: 565 type: string 566 required: 567 - osType 568 type: object 569 providerID: 570 description: ProviderID is the unique identifier as specified by the 571 cloud provider. 572 type: string 573 roleAssignmentName: 574 description: 'Deprecated: RoleAssignmentName should be set in the 575 systemAssignedIdentityRole field.' 576 type: string 577 securityProfile: 578 description: SecurityProfile specifies the Security profile settings 579 for a virtual machine. 580 properties: 581 encryptionAtHost: 582 description: |- 583 This field indicates whether Host Encryption should be enabled 584 or disabled for a virtual machine or virtual machine scale set. 585 This should be disabled when SecurityEncryptionType is set to DiskWithVMGuestState. 586 Default is disabled. 587 type: boolean 588 securityType: 589 description: |- 590 SecurityType specifies the SecurityType of the virtual machine. It has to be set to any specified value to 591 enable UefiSettings. The default behavior is: UefiSettings will not be enabled unless this property is set. 592 enum: 593 - ConfidentialVM 594 - TrustedLaunch 595 type: string 596 uefiSettings: 597 description: UefiSettings specifies the security settings like 598 secure boot and vTPM used while creating the virtual machine. 599 properties: 600 secureBootEnabled: 601 description: |- 602 SecureBootEnabled specifies whether secure boot should be enabled on the virtual machine. 603 Secure Boot verifies the digital signature of all boot components and halts the boot process if signature verification fails. 604 If omitted, the platform chooses a default, which is subject to change over time, currently that default is false. 605 type: boolean 606 vTpmEnabled: 607 description: |- 608 VTpmEnabled specifies whether vTPM should be enabled on the virtual machine. 609 When true it enables the virtualized trusted platform module measurements to create a known good boot integrity policy baseline. 610 The integrity policy baseline is used for comparison with measurements from subsequent VM boots to determine if anything has changed. 611 This is required to be set to Enabled if SecurityEncryptionType is defined. 612 If omitted, the platform chooses a default, which is subject to change over time, currently that default is false. 613 type: boolean 614 type: object 615 type: object 616 spotVMOptions: 617 description: SpotVMOptions allows the ability to specify the Machine 618 should use a Spot VM 619 properties: 620 evictionPolicy: 621 description: EvictionPolicy defines the behavior of the virtual 622 machine when it is evicted. It can be either Delete or Deallocate. 623 enum: 624 - Deallocate 625 - Delete 626 type: string 627 maxPrice: 628 anyOf: 629 - type: integer 630 - type: string 631 description: MaxPrice defines the maximum price the user is willing 632 to pay for Spot VM instances 633 pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ 634 x-kubernetes-int-or-string: true 635 type: object 636 sshPublicKey: 637 description: |- 638 SSHPublicKey is the SSH public key string, base64-encoded to add to a Virtual Machine. Linux only. 639 Refer to documentation on how to set up SSH access on Windows instances. 640 type: string 641 subnetName: 642 description: 'Deprecated: SubnetName should be set in the networkInterfaces 643 field.' 644 type: string 645 systemAssignedIdentityRole: 646 description: SystemAssignedIdentityRole defines the role and scope 647 to assign to the system-assigned identity. 648 properties: 649 definitionID: 650 description: |- 651 DefinitionID is the ID of the role definition to create for a system assigned identity. It can be an Azure built-in role or a custom role. 652 Refer to built-in roles: https://learn.microsoft.com/en-us/azure/role-based-access-control/built-in-roles 653 type: string 654 name: 655 description: |- 656 Name is the name of the role assignment to create for a system assigned identity. It can be any valid UUID. 657 If not specified, a random UUID will be generated. 658 type: string 659 scope: 660 description: |- 661 Scope is the scope that the role assignment or definition applies to. The scope can be any REST resource instance. 662 If not specified, the scope will be the subscription. 663 type: string 664 type: object 665 userAssignedIdentities: 666 description: |- 667 UserAssignedIdentities is a list of standalone Azure identities provided by the user 668 The lifecycle of a user-assigned identity is managed separately from the lifecycle of 669 the AzureMachine. 670 See https://learn.microsoft.com/azure/active-directory/managed-identities-azure-resources/how-to-manage-ua-identity-cli 671 items: 672 description: |- 673 UserAssignedIdentity defines the user-assigned identities provided 674 by the user to be assigned to Azure resources. 675 properties: 676 providerID: 677 description: |- 678 ProviderID is the identification ID of the user-assigned Identity, the format of an identity is: 679 'azure:///subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}' 680 type: string 681 required: 682 - providerID 683 type: object 684 type: array 685 vmExtensions: 686 description: VMExtensions specifies a list of extensions to be added 687 to the virtual machine. 688 items: 689 description: VMExtension specifies the parameters for a custom VM 690 extension. 691 properties: 692 name: 693 description: Name is the name of the extension. 694 type: string 695 protectedSettings: 696 additionalProperties: 697 type: string 698 description: ProtectedSettings is a JSON formatted protected 699 settings for the extension. 700 type: object 701 publisher: 702 description: Publisher is the name of the extension handler 703 publisher. 704 type: string 705 settings: 706 additionalProperties: 707 type: string 708 description: Settings is a JSON formatted public settings for 709 the extension. 710 type: object 711 version: 712 description: Version specifies the version of the script handler. 713 type: string 714 required: 715 - name 716 - publisher 717 - version 718 type: object 719 type: array 720 vmSize: 721 type: string 722 required: 723 - osDisk 724 - vmSize 725 type: object 726 status: 727 description: AzureMachineStatus defines the observed state of AzureMachine. 728 properties: 729 addresses: 730 description: Addresses contains the Azure instance associated addresses. 731 items: 732 description: NodeAddress contains information for the node's address. 733 properties: 734 address: 735 description: The node address. 736 type: string 737 type: 738 description: Node address type, one of Hostname, ExternalIP 739 or InternalIP. 740 type: string 741 required: 742 - address 743 - type 744 type: object 745 type: array 746 conditions: 747 description: Conditions defines current service state of the AzureMachine. 748 items: 749 description: Condition defines an observation of a Cluster API resource 750 operational state. 751 properties: 752 lastTransitionTime: 753 description: |- 754 Last time the condition transitioned from one status to another. 755 This should be when the underlying condition changed. If that is not known, then using the time when 756 the API field changed is acceptable. 757 format: date-time 758 type: string 759 message: 760 description: |- 761 A human readable message indicating details about the transition. 762 This field may be empty. 763 type: string 764 reason: 765 description: |- 766 The reason for the condition's last transition in CamelCase. 767 The specific API may choose whether or not this field is considered a guaranteed API. 768 This field may not be empty. 769 type: string 770 severity: 771 description: |- 772 Severity provides an explicit classification of Reason code, so the users or machines can immediately 773 understand the current situation and act accordingly. 774 The Severity field MUST be set only when Status=False. 775 type: string 776 status: 777 description: Status of the condition, one of True, False, Unknown. 778 type: string 779 type: 780 description: |- 781 Type of condition in CamelCase or in foo.example.com/CamelCase. 782 Many .condition.type values are consistent across resources like Available, but because arbitrary conditions 783 can be useful (see .node.status.conditions), the ability to deconflict is important. 784 type: string 785 required: 786 - lastTransitionTime 787 - status 788 - type 789 type: object 790 type: array 791 failureMessage: 792 description: |- 793 ErrorMessage will be set in the event that there is a terminal problem 794 reconciling the Machine and will contain a more verbose string suitable 795 for logging and human consumption. 796 797 798 This field should not be set for transitive errors that a controller 799 faces that are expected to be fixed automatically over 800 time (like service outages), but instead indicate that something is 801 fundamentally wrong with the Machine's spec or the configuration of 802 the controller, and that manual intervention is required. Examples 803 of terminal errors would be invalid combinations of settings in the 804 spec, values that are unsupported by the controller, or the 805 responsible controller itself being critically misconfigured. 806 807 808 Any transient errors that occur during the reconciliation of Machines 809 can be added as events to the Machine object and/or logged in the 810 controller's output. 811 type: string 812 failureReason: 813 description: |- 814 ErrorReason will be set in the event that there is a terminal problem 815 reconciling the Machine and will contain a succinct value suitable 816 for machine interpretation. 817 818 819 This field should not be set for transitive errors that a controller 820 faces that are expected to be fixed automatically over 821 time (like service outages), but instead indicate that something is 822 fundamentally wrong with the Machine's spec or the configuration of 823 the controller, and that manual intervention is required. Examples 824 of terminal errors would be invalid combinations of settings in the 825 spec, values that are unsupported by the controller, or the 826 responsible controller itself being critically misconfigured. 827 828 829 Any transient errors that occur during the reconciliation of Machines 830 can be added as events to the Machine object and/or logged in the 831 controller's output. 832 type: string 833 longRunningOperationStates: 834 description: |- 835 LongRunningOperationStates saves the states for Azure long-running operations so they can be continued on the 836 next reconciliation loop. 837 items: 838 description: Future contains the data needed for an Azure long-running 839 operation to continue across reconcile loops. 840 properties: 841 data: 842 description: Data is the base64 url encoded json Azure AutoRest 843 Future. 844 type: string 845 name: 846 description: |- 847 Name is the name of the Azure resource. 848 Together with the service name, this forms the unique identifier for the future. 849 type: string 850 resourceGroup: 851 description: ResourceGroup is the Azure resource group for the 852 resource. 853 type: string 854 serviceName: 855 description: |- 856 ServiceName is the name of the Azure service. 857 Together with the name of the resource, this forms the unique identifier for the future. 858 type: string 859 type: 860 description: Type describes the type of future, such as update, 861 create, delete, etc. 862 type: string 863 required: 864 - data 865 - name 866 - serviceName 867 - type 868 type: object 869 type: array 870 ready: 871 description: Ready is true when the provider resource is ready. 872 type: boolean 873 vmState: 874 description: VMState is the provisioning state of the Azure virtual 875 machine. 876 type: string 877 type: object 878 type: object 879 served: true 880 storage: true 881 subresources: 882 status: {}