Я планирую создать два ресурса в своих группах ресурсов: одно веб-приложение и одну служебную шину.У веб-приложения будет строка подключения, указывающая на служебную шину.Итак, мне нужно сначала создать служебную шину, а затем добавить веб-приложение со строкой подключения.И для веб-приложения, и для служебной шины я использую связанные шаблоны.Мой упрощенный azuredeploy.json
выглядит следующим образом:
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "myWebAppDeploy",
"apiVersion": "2017-05-10",
"type": "Microsoft.Resources/deployments",
"dependsOn": [
"UNKNOWN-DEPENDENCY"
],
"properties": {
"mode": "Incremental",
"templateLink": {
"uri": "link/to/webapp.azuredeploy.json",
"contentVersion": "1.0.0.0"
},
"parameters": {
"name": {
"value": "myWebApp"
},
"connectionStrings": {
"value": {
"serviceBusConnectionString": "[listKeys(resourceId('Microsoft.ServiceBus/namespaces/authorizationRules', 'myServiceBus', 'RootManageSharedAccessKey'), '2017-04-01').primaryConnectionString]"
}
}
}
}
},
{
"name": "myServiceBusDeploy",
"apiVersion": "2017-05-10",
"type": "Microsoft.Resources/deployments",
"properties": {
"mode": "Incremental",
"templateLink": {
"uri": "link/to/servicebus.azuredeploy.json",
"contentVersion": "1.0.0.0"
},
"parameters": {
"name": {
"value": "myServiceBus"
}
}
}
}
]
}
Независимо от того, что я помещаю в раздел UNKNOWN-DEPENDENCY
, я получаю следующую ошибку:
Template deployment returned the following errors:10:02:23 AM - Resource Microsoft.ServiceBus/namespaces/authorizationRules 'myServiceBus/RootManageSharedAccessKey' failed with message '{
"error": {
"code": "ParentResourceNotFound",
"message": "Can not perform requested operation on nested resource. Parent resource 'myServiceBus' not found."
}
}'
Похоже, что он пытается развернутьвеб-приложение перед служебной шиной.Я попробовал следующее, но не повезло:
"myServiceBus"
"myServiceBusDeploy",
"[concat('Microsoft.Resources/deployments/', 'myServiceBusDeploy')]",
"[concat('Microsoft.ServiceBus/namespaces', 'myServiceBus')]"
"[resourceId('Microsoft.Resources/deployments', 'myServiceBusDeploy')]"
"[resourceId('Microsoft.ServiceBus/namespaces', 'myServiceBus')]"
У меня нет идей, и я не знаю, как установить зависимости между этими двумя связанными шаблонами.
ОБНОВЛЕНИЕ: Если я снова разверну шаблон после получения ошибки, он будет работать, поскольку служебная шина уже развернута при первом развертывании.Итак, я уверен, что с вложенными / связанными шаблонами все в порядке.