Я пытаюсь развернуть Redis с помощью шаблона ARM, указанного ниже, а затем вернуть его первичный ключ (секретная строка, доступная на портале Azure для Redis в разделе «Ключи доступа» -> «Первичный»):
However I get the error message from my pipeline "AzureResourceManagerTemplateDeployment@3" task:
[error]Unable to evaluate template outputs: 'RedisCachePassword'. Please see error details and deployment operations. Please see https://aka.ms/arm-debug для получения сведений об использовании.
[ошибка] Подробности:
[ошибка] DeploymentOutputEvaluationFailed: вывод шаблона RedisCachePassword недействительно: свойство языкового выражения 'primaryKey' не может быть оценено ..
Что не так с моим шаблоном ARM ниже? А как найти правильные имена в таких случаях?
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"redisCacheName": {
"defaultValue": "my-redis",
"type": "String"
}
},
"variables": {
"resourceName": "[concat(resourceGroup().name, '-', parameters('redisCacheName'))]"
},
"outputs": {
"RedisCacheEndpoint": {
"type": "string",
"value": "[concat(reference(variables('resourceName')).hostName, ':', reference(variables('resourceName')).sslPort)]"
},
"RedisCachePassword": {
"type": "string",
"value": "[reference(variables('resourceName')).accessKeys.primaryKey]"
}
},
"resources": [
{
"type": "Microsoft.Cache/Redis",
"apiVersion": "2019-07-01",
"name": "[variables('resourceName')]",
"location": "[resourceGroup().location]",
"properties": {
"sku": {
"name": "Basic",
"family": "C",
"capacity": 1
},
"enableNonSslPort": false
}
}
]
}
Почему не работает [reference(variables('resourceName')).accessKeys.primaryKey]
?