我有一个模板,用于部署到采用此参数的资源组:
"envPrefixName": {
"type": "string",
"metadata": {
"description": "Prefix for the environment (2-5 characters)"
},
"defaultValue": "cust1",
"minLength": 2,
"maxLength": 5
},
我想使这个参数成为一个可以在调用cdmlet时重写的值:
$AzureParams = @{
ResourceGroupName = $ResourceGroup
TemplateUri = $TemplateUri
TemplateParameterUri = $TemplateParamUri
Mode = "Complete"
envPrefixName = "sunlb" #Override default parameter value
Force = $true
}
New-AzureRmResourceGroupDeployment @AzureParams
我尝试过这种方法,但解决方案继续尝试使用模板中设置的值,而不是在我的调用中作为参数传递的值。
编辑:TemplateParameterUri文件可能导致并发出?
答案 0 :(得分:1)
如果您提供TemplateParameterUri
,它将使用参数文件来部署模板(并从文件中获取值),而您的envPrefixName
将“丢失”,因为它不会评估参数模板。
删除TemplateParameterUri
它将按预期工作(但在这种情况下你必须提供所有参数,除非它们有默认值)