Cvičení – použití proměnných Azure Resource Manageru k ukládání výrazů
V tomto cvičení uložíte výraz názvu účtu úložiště Azure do proměnné šablony Azure Resource Manageru (ARM). Tuto proměnnou pak použijete k určení názvu účtu úložiště, který se má vytvořit.
V tomto cvičení používáme nástroje Azure Resource Manageru pro Visual Studio Code. Nezapomeňte nainstalovat toto rozšíření v editoru Visual Studio Code.
Přidání proměnné
Přidejte proměnnou pro uložení výrazu názvu účtu úložiště na jednom místě v šabloně.
V editoru Visual Studio Code umístěte v souboru azuredeploy.json kurzor mezi složené závorky v bloku proměnných
"variables":{}
a stiskněte Enter.Zadejte var do závorek. Zobrazí se seznam souvisejících fragmentů kódu. Vyberte arm-variable:
Oddíl proměnných vypadá takto v kódu:
"variables": {"variable1": "value"},
Změňte název proměnné na uniqueStorageNamea změňte hodnotu na "[toLower(concat(parameters('storagePrefix');uniqueString(resourceGroup().id))]". Oddíl proměnných vypadá takto:
"variables": { "uniqueStorageName": "[toLower(concat(parameters('storagePrefix'),uniqueString(resourceGroup().id)))]" },
Všimněte si, že používáte parametr
storagePrefix
ve výrazu místo literálového řetězce. Jinak je tento výraz stejný jako výraz, o který jste se dozvěděli v předchozí lekci.Použijte proměnnou v sekci prostředků. Změňte hodnoty atributů
name:
adisplayName
na "[variables('uniqueStorageName')]"Celý soubor vypadá jako v tomto příkladu:
{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "storagePrefix": { "type": "string", "minLength": 3, "maxLength": 11 }, "storageSKU": { "type": "string", "defaultValue": "Standard_LRS", "allowedValues": [ "Standard_LRS", "Standard_GRS", "Standard_RAGRS", "Standard_ZRS", "Premium_LRS", "Premium_ZRS", "Standard_GZRS", "Standard_RAGZRS" ] } }, "functions": [], "variables": { "uniqueStorageName": "[toLower(concat(parameters('storagePrefix'),uniqueString(resourceGroup().id)))]" }, "resources": [{ "name": "[variables('uniqueStorageName')]", "type": "Microsoft.Storage/storageAccounts", "apiVersion": "2019-06-01", "tags": { "displayName": "[variables('uniqueStorageName')]" }, "location": "[resourceGroup().location]", "kind": "StorageV2", "sku": { "name": "[parameters('storageSKU')]" } }], "outputs": {} }
Volitelně můžete šablonu nasadit.
Aktualizovaná šablona neobsahuje žádné změny nasazeného prostředku, takže nasazení této šablony neprovádí žádné změny ve vašem prostředí Azure.
Pokud chcete šablonu nasadit, aby se zobrazila úspěšně, použijte následující příkazy Azure CLI. Nezapomeňte použít stejnou hodnotu parametru storagePrefix
, kterou jste použili v posledním nasazení.
templateFile="azuredeploy.json"
today=$(date +"%d-%b-%Y")
DeploymentName="addVariable-"$today
az deployment group create \
--name $DeploymentName \
--template-file $templateFile \
--parameters storagePrefix={your-Prefix}
Pokud chcete šablonu nasadit, aby se zobrazila úspěšně, použijte následující příkazy Azure PowerShellu. Nezapomeňte použít stejnou hodnotu parametru storagePrefix
, kterou jste použili v posledním nasazení.
$templateFile = "azuredeploy.json"
$today=Get-Date -Format "MM-dd-yyyy"
$deploymentName="addVariable-"+"$today"
New-AzResourceGroupDeployment `
-Name $deploymentName `
-TemplateFile $templateFile `
-storagePrefix {your-Prefix}