ARM 模板:取决于——您指的是链接的 "Microsoft.Resources/deployments" 还是其中创建的资源?
ARM Templates: depends on -- do you refer to the linked "Microsoft.Resources/deployments" or the resources created within it?
我有一个父 ARM 模板(例如:myapp.assembly.json)调用链接的子 ARM 模板(web.serverFarm.json、web.site.json 等)
目前我已经通过放置 dependsOn
定义了链接子模板之间的关系
- 在父 ARM 模板中
- 引用链接
Microsoft.Resources/deployments
的名称(而不是在 链接资源模板中创建 的资源的名称)。
我期待:
- 任何为另一个
Microsoft.Resources/deployments
定义了 dependsOn
的 Microsoft.Resources/deployments
将等到创建所有这些资源。
我认为我正在观察的是:
- 第一次ARM模板是运行,报部署失败...正在寻找依赖...
- 但继续工作...所以不能立即重新部署...
- 第二次,构建资源,部署完成。
我完全有可能漏掉了一个 dependsOn
——虽然我真的看过但不这么认为——或者 dependsOn
没有像我想的那样得到尊重有所期待。
如有任何建议,我们将不胜感激。
谢谢。
啊!
谢谢@ 4c74356b41 和@bmoore-msft ...你是绝对正确的(它就在我的鼻子前面了令人尴尬的几天:-( )
我必须 copy/pasted 从子资源模板到父程序集模板。
"webSiteConfigAppSettingsApplicationInsightsInstrumentationKey": {
// FIX: Rely on the template instead of direct:"value": "[reference(resourceId('Microsoft.Insights/components', variables('insights').components.resourceName), '2015-05-01').InstrumentationKey]"
"value": "[reference(variables('insights').components.armTemplateId).outputs.instrumentationKey.value]"
}
即:
我需要引用模板及其输出。
不是在模板 中 创建的资源...父模板看不到。
现在一切都像黄油一样顺利。
我有一个父 ARM 模板(例如:myapp.assembly.json)调用链接的子 ARM 模板(web.serverFarm.json、web.site.json 等)
目前我已经通过放置 dependsOn
- 在父 ARM 模板中
- 引用链接
Microsoft.Resources/deployments
的名称(而不是在 链接资源模板中创建 的资源的名称)。
我期待:
- 任何为另一个
Microsoft.Resources/deployments
定义了dependsOn
的Microsoft.Resources/deployments
将等到创建所有这些资源。
我认为我正在观察的是:
- 第一次ARM模板是运行,报部署失败...正在寻找依赖...
- 但继续工作...所以不能立即重新部署...
- 第二次,构建资源,部署完成。
我完全有可能漏掉了一个 dependsOn
——虽然我真的看过但不这么认为——或者 dependsOn
没有像我想的那样得到尊重有所期待。
如有任何建议,我们将不胜感激。
谢谢。
啊! 谢谢@ 4c74356b41 和@bmoore-msft ...你是绝对正确的(它就在我的鼻子前面了令人尴尬的几天:-( )
我必须 copy/pasted 从子资源模板到父程序集模板。
"webSiteConfigAppSettingsApplicationInsightsInstrumentationKey": {
// FIX: Rely on the template instead of direct:"value": "[reference(resourceId('Microsoft.Insights/components', variables('insights').components.resourceName), '2015-05-01').InstrumentationKey]"
"value": "[reference(variables('insights').components.armTemplateId).outputs.instrumentationKey.value]"
}
即: 我需要引用模板及其输出。 不是在模板 中 创建的资源...父模板看不到。
现在一切都像黄油一样顺利。