CI CD Pipelines for ADF

Nagesh CL 696 Reputation points
2021-12-28T16:11:55.703+00:00

Hello Team,
Had a couple of questions about implementation of DevOps CI / CD pipelines for ADF.

Managed Private Endpoints - My client has created private endpoints and the linked service uses this private end points for connection establishment. Now my question is, does the ARM template contains the private endpoint connections as well? Will the private end points be created in other environments? If yes, is there is a way to exclude these private end point creations? If not, how do we configure these in devops CI/CD pipelines?

Managed Identity - All the linked services in my project use the Authentication Method as "Managed Identity". How to parameterize / configure these linked service connections while being deployed to other environments via devops CI/CD pipelines?
For Ex : - On dev, my adf instance is "DEV_ADF" but in QA, it would be "QA_ADF", while deploying to QA environment, how do we change the connections dynamically?

Thanks.

Regards,
Nagesh CL

Azure Data Factory
Azure Data Factory
An Azure service for ingesting, preparing, and transforming data at scale.
11,634 questions
0 comments No comments
{count} votes

Accepted answer
  1. MartinJaffer-MSFT 26,236 Reputation points
    2021-12-29T03:28:05.697+00:00

    Hello @Nagesh CL and welcome to Microsoft Q&A.

    Private Endpoints are included in the ARM template. From your questions, it sounds like you want to have Private Endpoints in your development environment, but not in your production environment. I can tell you how to parameterize the Private Endpoints, but I haven't removed them from the ARM template before. I don't think the ARM parameter configuration can be used to discard items, so you would have to set up something to edit the ARM template after export.

    Excerpt from continuous-integration-delivery: best practices:

    Managed private endpoint deployment. If a private endpoint already exists in a factory and you try to deploy an ARM template that contains a private endpoint with the same name but with modified properties, the deployment will fail. In other words, you can successfully deploy a private endpoint as long as it has the same properties as the one that already exists in the factory. If any property is different between environments, you can override it by parameterizing that property and providing the respective value during deployment.

    How to choose what gets parameterized in CI/CD

    The Managed Identity is based upon the identity of the Factory itself. That is, when you select Managed Identity, Azure asks "has this Factory been assigned permissions on resource ____?"
    If you want to change which resource the linked service points to, the specifics depends upon the resource type. All linked service parameterization properties can be found under "Microsoft.DataFactory/factories/linkedServices" ... "typeProperties"


0 additional answers

Sort by: Most helpful

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.