I have been trying to use the yaml
configuration file from the example_full.yaml
file to look into getting a cluster up and running on Azure.
We have a policy in-house for adding an owner
tag to the azure resource, which has the users email address. When I try to create the resource using the command ray up example_full.yaml
I get a policy error saying the resource needed the required tag.
Is there any way of passing these tags through the yaml
file configuration.
I have tried the following adding the tags field, but this does not work:
available_node_types:
ray.head.default:
# The resources provided by this node type.
resources: {"CPU": 2}
# Provider-specific config, e.g. instance type.
node_config:
azure_arm_parameters:
tags: {'owner' : 'example@company.com'}
vmSize: Standard_D2s_v3
# List images https://docs.microsoft.com/en-us/azure/virtual-machines/linux/cli-ps-findimage
imagePublisher: microsoft-dsvm
imageOffer: ubuntu-1804
imageSku: 1804-gen2
imageVersion: latest
I see from the Microsoft ARM documentation that it is possible to include this in the ARM type formatting, but I am unsure how this translate into the Ray YAML
configuration format. Under
the location
field is the tags
field, which takes a list of tags.
{
"type": "Microsoft.Compute/virtualMachines",
"apiVersion": "2019-03-01",
"name": "string",
"location": "string",
"tags": {
"tagName1": "tagValue1",
"tagName2": "tagValue2"
},
"identity": {
"type": "string",
"userAssignedIdentities": {}
},
"plan": {
"name": "string",
"product": "string",
"promotionCode": "string",
"publisher": "string"
},
"properties": {
"additionalCapabilities": {
"ultraSSDEnabled": "bool"
},
"availabilitySet": {
"id": "string"
},
"billingProfile": {
"maxPrice": "int"
},
"diagnosticsProfile": {
"bootDiagnostics": {
"enabled": "bool",
"storageUri": "string"
}
},
"evictionPolicy": "string",
"hardwareProfile": {
"vmSize": "string"
},
"host": {
"id": "string"
},
"licenseType": "string",
"networkProfile": {
"networkInterfaces": [
{
"id": "string",
"properties": {
"primary": "bool"
}
}
]
},
"osProfile": {
"adminPassword": "string",
"adminUsername": "string",
"allowExtensionOperations": "bool",
"computerName": "string",
"customData": "string",
"linuxConfiguration": {
"disablePasswordAuthentication": "bool",
"provisionVMAgent": "bool",
"ssh": {
"publicKeys": [
{
"keyData": "string",
"path": "string"
}
]
}
},
"requireGuestProvisionSignal": "bool",
"secrets": [
{
"sourceVault": {
"id": "string"
},
"vaultCertificates": [
{
"certificateStore": "string",
"certificateUrl": "string"
}
]
}
],
"windowsConfiguration": {
"additionalUnattendContent": [
{
"componentName": "Microsoft-Windows-Shell-Setup",
"content": "string",
"passName": "OobeSystem",
"settingName": "string"
}
],
"enableAutomaticUpdates": "bool",
"provisionVMAgent": "bool",
"timeZone": "string",
"winRM": {
"listeners": [
{
"certificateUrl": "string",
"protocol": "string"
}
]
}
}
},
"priority": "string",
"proximityPlacementGroup": {
"id": "string"
},
"storageProfile": {
"dataDisks": [
{
"createOption": "string",
"diskSizeGB": "int",
"image": {
"uri": "string"
},
"lun": "int",
"managedDisk": {
"id": "string",
"storageAccountType": "string"
},
"name": "string",
"toBeDetached": "bool",
"vhd": {
"uri": "string"
},
"writeAcceleratorEnabled": "bool"
}
],
"imageReference": {
"id": "string",
"offer": "string",
"publisher": "string",
"sku": "string",
"version": "string"
},
"osDisk": {
"createOption": "string",
"diffDiskSettings": {
"option": "Local"
},
"diskSizeGB": "int",
"encryptionSettings": {
"diskEncryptionKey": {
"secretUrl": "string",
"sourceVault": {
"id": "string"
}
},
"enabled": "bool",
"keyEncryptionKey": {
"keyUrl": "string",
"sourceVault": {
"id": "string"
}
}
},
"image": {
"uri": "string"
},
"managedDisk": {
"id": "string",
"storageAccountType": "string"
},
"name": "string",
"osType": "string",
"vhd": {
"uri": "string"
},
"writeAcceleratorEnabled": "bool"
}
},
"virtualMachineScaleSet": {
"id": "string"
}
},
"zones": [ "string" ]
}