Мой файл параметров выглядит следующим образом:
{
"$schema":"http://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion":"1.0.0.0",
"parameters":{
"siteName":{
"value":"my-api-application"
},
"appServicePlanName":{
"value":"MyServicePlan"
},
"siteLocation":{
"value":"West US"
},
"vaultResourceGroup": {
"value":"my-vault-res-group"
},
"vaultName": {
"value":"my-keyvault"
},
"nodeEnv": {
"value":"development"
},
"adminPassword": {
"reference": {
"keyVault": {
"id": "/subscriptions/yyyyyyyy-xxxx-xxxx-xxxx-yyyyyyyy/resourceGroups/my-vault-res-group/providers/Microsoft.KeyVault/vaults/my-keyvault"
},
"secretName": "adminPassword"
}
}
}
}
Значение adminPassword будет получено из указанного KeyVault с конкретным идентификатором. Однако мне нужно жестко закодировать значение id.
В соответствии с этим link, я мог бы указать идентификатор, используя что-то вроде этого:
resourceId(subscription().subscriptionId, parameters('vaultResourceGroup'), 'Microsoft.KeyVault/vaults', parameters('vaultName'))]
Однако при использовании вышеуказанного синтаксиса/функций ресурсов я получаю сообщение об ошибке при выпуске и развертывании службы приложений с помощью VSTS (я использовал развертывание группы ресурсов Azure< /strong> задача для развертывания приложения). Ошибка примерно такая:
Идентификатор должен иметь следующий формат:
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
Не уверен, что я делаю неправильно?