适用于ADF的Azure DevOps中的完整模式部署 [英] Complete mode deployment in Azure DevOps for ADF

查看:48
本文介绍了适用于ADF的Azure DevOps中的完整模式部署的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

作为DevOps实施的一部分,我尝试为Azure Data Factory部署ARM模板.

I tried to deploy ARM template for azure Data Factory as part of DevOps implementation.

在oreder中将部署模式选择为完成,以清理现有的adf实例并仅部署ARM模板中可用的管道.如下所示.

Mode of deployment was selected as complete in oreder to cleanup the existing adf instance and deploy only the pipelines that are available in ARM template. as shown below.

当我尝试运行部署时,失败并显示错误消息

When I tried to run the deployment, It failed with an error as

##[error]The deployment failed because some resources could not be deleted. This might be due to not having permissions to delete resources in the targeted scope. Please see https://aka.ms/arm-debug for usage details.
2020-11-02T05:33:34.5795133Z ##[error]Check out the troubleshooting guide to see if your issue is addressed: https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/deploy/azure-resource-group-deployment?view=azure-devops#troubleshooting

当我对此问题进行调试时,我可以理解部署范围被选择为资源组,并且部署任务尝试删除该资源组下的所有资源,但由于无法删除而失败由于访问问题, ADF 实例以外的其他资源.

When I did a debug on this issue, i could understand that the deployment scope is selected as Resource Group and deployment task tried to delete all the resources under this resource group and failed because it couldnt delete resources other than ADF instance because of access issues.

由于我无权访问其他资源,因此不会删除它们,否则我可能会通过删除所有其他资源(如ADLS,databricks,sql ...)弄乱了一切.

Since I do not have access to other resources, they were not deleted, otherwise i could have messed up everything by deleting all other resources like ADLS, databricks, sql....

由于我正在部署ADF ARM模板,因此有任何方法可以仅限制ADF实例的部署范围,而不会影响其他资源.

Since I am deploying ADF ARM template is there any way to restrict the deployment scope only for ADF instance, which will not affect other resources.

任何潜在客户均表示赞赏!

Any leads appreciated!

我有一个关于Azure为ARM模板部署提供的假设功能的查询.我们可以在发布管道中将其用作powershell任务吗?

I have a query about the What-If feature provided by azure for ARM template deployment. Can we use this in our Release pipeline as a powershell task?

推荐答案

您不能将部署范围限制为低于您注意到的ResourceGroup.

You cannot restrict the deployment scope lower than the ResourceGroup as you noticed.

执行此操作的唯一方法是将ADF放在单独的资源组中,但我认为这是不可能的.

The only way for you to do this would be either putting the ADF in a seperate resource group but i asume that is not possible.

第二种方法是通过门户或Powershell删除ADF,然后增量部署仅包含ADF定义的ARM模板.

A second way of doing this would be deleting the ADF through the portal or powershell and then do an incremental deployment of you ARM template that has only the ADF definition in it.

Microsoft为ARM部署推出了一项新功能,称为

Microsoft rolled out a new feature for ARM deployments called What-If. This is a super nice feature to check what changes to what resources will happen when deploying your template. Note, it only works with powershell core at the moment. If you work with ARM templates this could help you and catch resource deletion before you deploy anything.

这篇关于适用于ADF的Azure DevOps中的完整模式部署的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆