Azure Compute Driver¶
Selecting the azure driver adds the following options to the providers section of the configuration.
-
providers.[azure]¶
Type: list An Azure provider’s resources are partitioned into groups called pool, and within a pool, the node types which are to be made available are listed
Note
For documentation purposes the option names are prefixed
providers.[azure]to disambiguate from other drivers, but[azure]is not required in the configuration (e.g. belowproviders.[azure].poolsrefers to thepoolskey in theproviderssection when theazuredriver is selected).Example:
providers: - name: azure-central-us driver: azure zuul-public-key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAA... resource-group-location: centralus location: centralus resource-group: ZuulCIDev auth-path: /Users/grhayes/.azure/nodepoolCreds.json subnet-id: /subscriptions/<subscription-id>/resourceGroups/ZuulCI/providers/Microsoft.Network/virtualNetworks/NodePool/subnets/default cloud-images: - name: bionic username: zuul image-reference: sku: 18.04-LTS publisher: Canonical version: latest offer: UbuntuServer pools: - name: main max-servers: 10 labels: - name: bionic cloud-image: bionic hardware-profile: vm-size: Standard_D1_v2 tags: department: R&D purpose: CI/CD
-
providers.[azure].name(required)¶ A unique name for this provider configuration.
-
providers.[azure].location(required)¶ Name of the Azure region to interact with.
-
providers.[azure].resource-group-location(required)¶ Name of the Azure region to where the home Resource Group is or should be created.
-
providers.[azure].auth-path(required)¶ Path to the JSON file containing the service principal credentials. Create with the Azure CLI and the
--sdk-authflag
-
providers.[azure].subnet-id(required)¶ Subnet to create VMs on
-
providers.[azure].cloud-images¶
Type: list Each entry in this section must refer to an entry in the labels section.
cloud-images: - name: bionic username: zuul image-reference: sku: 18.04-LTS publisher: Canonical version: latest offer: UbuntuServer - name: windows-server-2016 username: zuul image-reference: sku: 2016-Datacenter publisher: MicrosoftWindowsServer version: latest offer: WindowsServer
Each entry is a dictionary with the following keys
-
providers.[azure].cloud-images.name(required)¶
Type: string Identifier to refer this cloud-image from labels section. Since this name appears elsewhere in the nodepool configuration file, you may want to use your own descriptive name here.
-
providers.[azure].cloud-images.username¶
Type: str The username that a consumer should use when connecting to the node.
-
providers.[azure].cloud-images.image-reference(required)¶
Type: dict -
providers.[azure].cloud-images.image-reference.sku(required)¶
Type: str Image SKU
-
providers.[azure].cloud-images.image-reference.publisher(required)¶
Type: str Image Publisher
-
providers.[azure].cloud-images.image-reference.offer(required)¶
Type: str Image offers
-
providers.[azure].cloud-images.image-reference.version(required)¶
Type: str Image version
-
-
-
providers.[azure].pools¶
Type: list A pool defines a group of resources from an Azure provider. Each pool has a maximum number of nodes which can be launched from it, along with a number of cloud-related attributes used when launching nodes.
-
providers.[azure].pools.name(required)¶ A unique name within the provider for this pool of resources.
-
providers.[azure].pools.labels¶
Type: list Each entry in a pool’s labels section indicates that the corresponding label is available for use in this pool. When creating nodes for a label, the flavor-related attributes in that label’s section will be used.
labels: - name: bionic cloud-image: bionic hardware-profile: vm-size: Standard_D1_v2
Each entry is a dictionary with the following keys
-
providers.[azure].pools.labels.name(required)¶
Type: str Identifier to refer this label.
-
providers.[azure].pools.labels.cloud-image(required)¶
Type: str Refers to the name of an externally managed image in the cloud that already exists on the provider. The value of
cloud-imageshould match thenameof a previously configured entry from thecloud-imagessection of the provider.
-
providers.[azure].pools.labels.hardware-profile(required)¶ -
providers.[azure].pools.labels.hardware-profile.vm-size(required)¶
Type: str VM Size of the VMs to use in Azure. See the VM size list on azure.microsoft.com for the list of sizes availabile in each region.
-
-
-
-