需要使用什么特定语法才能成功销毁由devenvironment
下面代码中的部署组?
上下文:
运行以下命令时,将在 Azure 中创建资源集合:
az deployment group create --name devenvironment --resource-group myResourceGroupDev --template-file C:\path\to\my.template.json --parameters C:\path\to\my.parameters.json --verbose
问题:
我们遇到的问题是以下命令使 Azure 中所有创建的资源完好无损:
az deployment group delete --name devenvironment --resource-group myResourceGroupDev --verbose
所有这一切az deployment group delete
命令的作用是删除包装器devenvironment
关联使用创建的资源az deployment group create
上面的命令。这az deployment group delete
命令无法对创建的实际资源产生任何影响。
期望的结果:
我们想要的是一个命令,该命令将导致销毁由az deployment group create
命令。
我们想要一个像这样的命令terraform destroy
这会销毁在 ARM 部署中创建的所有资源,但使用az
cli.
什么样的具体语法会带来我们想要的结果?
我们没有任何直接的 cmdlet 来删除使用arm模板在特定部署中部署的所有资源。
您可以使用以下 Azure CLI Cmdlet 或 PowerShell cmdlet,这将删除使用arm模板部署的资源。
为了在本地环境中测试这一点,我们使用arm模板创建了一个web应用程序和应用程序服务计划。使用以下 cmdlet,我们可以成功删除这些资源。
以下是 Azure CLI cmdlet:
resourcelist=$(az deployment group show --resource-group '<rgName>' --name '<deploymentName>' --query "properties.outputResources[].id" -o tsv)
for resource in $resourcelist; do az resource delete --ids $resource; done
这是供参考的示例输出:
以下是 PowerShell cmdlet:
$resourcelist=Get-AzResourceGroupDeploymentOperation -ResourceGroupName '<resourceGroupName>' -Name '<deploymentName>'
foreach ($resource in $resourcelist){
if( $resource.TargetResource -ne $null){
Remove-AzResource -ResourceId $resource.TargetResource -Force
Write-Output "Resource got delete successfully"$resource.TargetResource
}
}
这是供参考的示例输出:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)