4
votes

I have a requirement to create around 20 small logic apps. I want all of them to be part of single solution ideally single Azure Resource Group project.

Once it is created, I want to set up CI/CD on Azure Devops to deploy all these logic apps to multiple environments with different parameters in each environment.

Is it right to include all the logic apps in one single project? If so, what are the options to set up CI/CD pipeline?

Edit: Rather what is the best way to organise multiple logic apps?

1
Depends if you want to deploy them all at the same time ? Using Azure Devops, there is a task that deploy ARM template so it should be straight forwardThomas
Yes, I need to deploy all at once. But if I go for ARM template deployment, it seems I should have all logic apps definition as a part of single ARM template which I don't want. I want to have separate logic app definition files for each.PNDev
so in azure devops you will have a task per logic appThomas
But in that case, if a developer adds a new logic app, he should go back and update the build pipeline!PNDev
Yeah make sense. dont know what is the problem ? With build YAML pipeline, the build definition is part of code anywayThomas

1 Answers

1
votes

To deploy your solution, you can use either a single template or a main template with many related templates. The related template can be either a separate file that is linked to from the main template, or a template that is nested within the main template.

For small to medium solutions, a single template is easier to understand and maintain. You can see all the resources and values in a single file. For advanced scenarios, linked templates enable you to break down the solution into targeted components, and reuse templates.

When using linked templates, you create a main template that receives the parameter values during deployment. The main template contains all the linked templates and passes values to those templates as needed.

see Tutorial: create linked Azure Resource Manager templates.

Note: For linked or nested templates, you can only use Incremental deployment mode.

You can find example templates here.