- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
假设您有以下文件,这些文件是在 Visual Studio 中通过选择新的 Azure 资源组部署然后添加嵌套模板两次而创建的
azuredeploy.json
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"_artifactsLocation": {
"type": "string"
},
"_artifactsLocationSasToken": {
"type": "securestring"
}
},
"variables": {
"linkedTemplateTemplateFolder": "nestedtemplates",
"linkedTemplateTemplateFileName": "linkedTemplate.json",
"linkedTemplateTemplateParametersFileName": "linkedTemplate.parameters.json"
},
"resources": [
{
"name": "linkedTemplate",
"type": "Microsoft.Resources/deployments",
"apiVersion": "2016-09-01",
"dependsOn": [],
"properties": {
"mode": "Incremental",
"templateLink": {
"uri":
"[concat(parameters('_artifactsLocation'), '/', variables('linkedTemplateTemplateFolder'), '/', variables('linkedTemplateTemplateFileName'), parameters('_artifactsLocationSasToken'))]",
"contentVersion": "1.0.0.0"
},
"parametersLink": {
"uri":
"[concat(parameters('_artifactsLocation'), '/', variables('linkedTemplateTemplateFolder'), '/', variables('linkedTemplateTemplateParametersFileName'), parameters('_artifactsLocationSasToken'))]",
"contentVersion": "1.0.0.0"
},
"parameters": {
"_artifactsLocation": { "value": "[parameters('_artifactsLocation')]" },
"_artifactsLocationSasToken": { "value": "[parameters('_artifactsLocationSasToken')]" }
}
}
}
],
"outputs": {
"result": {
"type": "object",
"value": "[reference('linkedTemplate').outputs.result.value]"
}
}
}
azuredeploy.parameters.json
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
}
}
嵌套模板\linkedTemplate.json
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"Foo": {
"type": "string"
},
"_artifactsLocation": {
"type": "string"
},
"_artifactsLocationSasToken": {
"type": "securestring"
}
},
"variables": {
"thirdTeirTemplateFolder": "nestedtemplates",
"thirdTeirTemplateFileName": "thirdTeir.json",
"thirdTeirTemplateParametersFileName": "thirdTeir.parameters.json"
},
"resources": [
{
"name": "thirdTeir",
"type": "Microsoft.Resources/deployments",
"apiVersion": "2016-09-01",
"dependsOn": [],
"properties": {
"mode": "Incremental",
"templateLink": {
"uri": "[concat(parameters('_artifactsLocation'), '/', variables('thirdTeirTemplateFolder'), '/', variables('thirdTeirTemplateFileName'), parameters('_artifactsLocationSasToken'))]",
"contentVersion": "1.0.0.0"
},
"parameters": {
"Foo": {"value": "[parameters('Foo')]"}
}
}
}
],
"outputs": {
"result": {
"type": "string",
"value": "[reference('thirdTeir').outputs.result]"
}
}
}
nestedtemplates\linkedTemplate.parameters.json
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"Foo": {
"value": "Foo!"
}
}
}
嵌套模板\thirdTeir.json
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"Foo": {
"type": "string"
}
},
"variables": {},
"resources": [],
"outputs": {
"result": {
"type": "string",
"value": "[parameters('Foo')]"
}
}
}
这自然会失败并出现错误
Error: Code=InvalidDeployment; Message=The deployment 'linkedTemplate' cannot have both the ParameterLink and Parameter property set. Please use one or the other. Please see https://aka.ms/arm-deploy for usage details.
这是完全有道理的,因为 the documentation states您不能同时使用 parametersLink
和 parameters
。
在这种情况下我应该采取什么解决方法,如何将 _artifactsLocation
和 _artifactsLocationSasToken
传递到模板的中间层,同时仍然允许单独的文件保存配置将传入的值?
以防万一我问的是 XY 问题,我想要解决的真正问题是是否有某种方法可以直接读取包含通过 uri 传入的一些配置数据并访问其内容的 json 文件?这是我真正需要做的事情。
最佳答案
我认为您试图解决的根本问题是将参数和链接参数传递给嵌套部署...我可以想到一些选项,但没有一个非常优雅:
3 可能是最简单的,可以完全在模板内完成,但可能使您的 sasToken 不再保密。 (我认为,不确定是否可以将其保留为 secureString)。
有帮助吗?
关于azure - 如何为链接模板同时使用 uri 和传入参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46457662/
我是一名优秀的程序员,十分优秀!