title | description | ms.service | ms.subservice | author | ms.author | ms.reviewer | ms.topic | ms.date | ms.custom |
---|---|---|---|---|---|---|---|---|---|
Using linked resource manager templates |
Learn how to use linked resource manager templates with continuous integration and delivery in Azure Data Factory pipelines. |
data-factory |
ci-cd |
nabhishek |
abnarain |
jburchel |
conceptual |
09/24/2021 |
devx-track-azurepowershell |
[!INCLUDEappliesto-adf-xxx-md]
If you've set up continuous integration and delivery (CI/CD) for your data factories, you might exceed the Azure Resource Manager template limits as your factory grows bigger. For example, one limit is the maximum number of resources in a Resource Manager template. To accommodate large factories while generating the full Resource Manager template for a factory, Data Factory now generates linked Resource Manager templates. With this feature, the entire factory payload is broken down into several files so that you aren't constrained by the limits.
If you've configured Git, the linked templates are generated and saved alongside the full Resource Manager templates in the adf_publish branch in a new folder called linkedTemplates:
:::image type="content" source="media/continuous-integration-delivery/linked-resource-manager-templates.png" alt-text="Linked Resource Manager templates folder":::
The linked Resource Manager templates usually consist of a master template and a set of child templates that are linked to the master. The parent template is called ArmTemplate_master.json, and child templates are named with the pattern ArmTemplate_0.json, ArmTemplate_1.json, and so on.
To use linked templates instead of the full Resource Manager template, update your CI/CD task to point to ArmTemplate_master.json instead of ArmTemplateForFactory.json (the full Resource Manager template). Resource Manager also requires that you upload the linked templates into a storage account so Azure can access them during deployment. For more info, see Deploying linked Resource Manager templates with VSTS.
Remember to add the Data Factory scripts in your CI/CD pipeline before and after the deployment task.
If you don't have Git configured, you can access the linked templates via Export ARM Template in the ARM Template list.
When deploying your resources, you specify that the deployment is either an incremental update or a complete update. The difference between these two modes is how Resource Manager handles existing resources in the resource group that aren't in the template. Please review Deployment Modes.
- Continuous integration and delivery overview
- Automate continuous integration using Azure Pipelines releases
- Manually promote a Resource Manager template to each environment
- Use custom parameters with a Resource Manager template
- Using a hotfix production environment
- Sample pre- and post-deployment script