在Azure Powershell中,我正在使用new Az module that has replaced the AzureRM module。我想将部署模式设置为Complete
,但看不到如何完成。
对读者的警告:PowerShell的“ Az”模块与Azure CLI的“ az”命令没有关系。
我已经尝试过了:
PS C:\repos\azure\pdi> New-AzDeployment -Name bjaDeploy -Location southcentralus -Mode Complete -TemplateParameterFile t
est.parameters.json -TemplateFile testrg.json
New-AzDeployment : A parameter cannot be found that matches parameter name 'Mode'.
At line:1 char:59
+ ... w-AzDeployment -Name bjaDeploy -Location southcentralus -Mode Complet ...
+ ~~~~~
+ CategoryInfo : InvalidArgument: (:) [New-AzDeployment], ParameterBindingException
+ FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.Azure.Commands.ResourceManager.Cmdlets.Implementation.N
ewAzureDeploymentCmdlet
毫不奇怪,Get-Help New-AzDeployment
显示了命令行开关,并且都不包含Mode
。
我还尝试过将部署模式直接放置到ARM模板中:
"$schema": "https://schema.management.azure.com/schemas/2018-05-01/subscriptionDeploymentTemplate.json#",
"contentVersion": "1.0.0.1",
"parameters": {
"rgName": {
"type": "string"
},
"rgLocation": {
"type": "string"
}
},
"variables": {},
"resources": [
{
"type": "Microsoft.Resources/resourceGroups",
"apiVersion": "2018-05-01",
"location": "[parameters('rgLocation')]",
"name": "[parameters('rgName')]",
"properties": {
"mode": "Complete"
}
}
],
"outputs": {}
Visual Studio Code中的智能感知告诉我拥有“ mode”属性是非法的,而且,可以肯定的是,当我尝试部署此属性时,它给出了错误。因此,不清楚如何从命令提示符处执行此操作,也不清楚为什么它不是ARM模板本身中的选项。
有什么想法吗?我需要特定于“ Az”模块的答案。我不打算使用现在不建议使用的AzureRM。
答案 0 :(得分:0)
我想您正在寻找New-AzResourceGroupDeployment
,它具有-Mode
参数。
New-AzDeployment
是从同样没有-Mode
参数的New-AzureRmDeployment
迁移而来的,如果您以前使用AzureRM
powershell来做到这一点,我想也许是{{ 3}}。