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