Skip to content

Commit ac5eb01

Browse files
author
Esther Fan
committed
Draft updates
1 parent f354c2c commit ac5eb01

File tree

1 file changed

+103
-3
lines changed

1 file changed

+103
-3
lines changed

articles/business-process-tracking/set-up-continuous-integration-deployment.md

Lines changed: 103 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,10 @@ This guide shows how to set up a CI/CD pipeline by using the Azure Logic Apps St
5656

5757
This extension provides automated, build, connections deployment, and release tasks for Azure Logic Apps (Standard). For more information, see [**Azure Logic Apps Standard Tasks**](https://marketplace.visualstudio.com/items?itemName=ms-logicapps-ado.azure-logic-apps-devops-tasks).
5858

59+
- The appropriate user role permissions to create, view, use, or manage a service connection between the pipelines that you create later in this article.
60+
61+
For more information, see [Set service connection security in Azure Pipelines](/azure/devops/pipelines/policies/permissions#set-service-connection-security-in-azure-pipelines).
62+
5963
## Generate deployment scripts
6064

6165
Now, generate deployment scripts for your logic app project. This approach lets you create the required infrastructure with the CI and CD scripts that help you deploy your logic app to Azure. For more information, see [Automate build and deployment for Standard logic app workflows with Azure DevOps](automate-build-deployment-standard.md).
@@ -84,9 +88,9 @@ Now, generate deployment scripts for your logic app project. This approach lets
8488
`git commit -m "<your-commit-comment>"`<br>
8589
`git push`
8690

87-
## Create the infrastructure pipeline
91+
## Create an infrastructure pipeline
8892

89-
Now, create a pipeline in your repository for your logic app infrastructure. For the general steps, see [Create your first pipeline](/azure/devops/pipelines/create-first-pipeline?view=azure-devops&tabs=java%2Cbrowser), but use the following custom steps:
93+
Now, create a pipeline in your repository for your logic app infrastructure. For the general steps, see [Create your first pipeline](/azure/devops/pipelines/create-first-pipeline), but use the following custom steps:
9094

9195
1. Select **Existing Azure Pipeline YAML File**.
9296

@@ -98,9 +102,105 @@ Now, create a pipeline in your repository for your logic app infrastructure. For
98102

99103
**/pipelines/infrastructure-pipeline.yaml**
100104

101-
1. Select **Continue** > **Review**. Provide the name for the pipeline, but the pipeline folder is optional.
105+
1. Select **Continue** > **Review**. Provide the name for the pipeline, but the pipeline folder is optional.
102106

103107
1. To complete this task, select **Save**.
104108

109+
## Create a continuous integration (CI) pipeline
110+
111+
Create a pipeline in your repository for continuous integration. For the general steps, see [Create your first pipeline](/azure/devops/pipelines/create-first-pipeline), but use the following custom steps:
112+
113+
1. Select **Existing Azure Pipeline YAML File**.
114+
115+
1. Select **CI-pipeline.yml**.
116+
117+
1. Provide the name for the pipeline, but the pipeline folder is optional.
118+
119+
## Create a continuous deployment (CD) pipeline
120+
121+
In Azure DevOps, create another Pipeline in your repository. For additional information, please refer to Azure DevOps documentation. When creating a Pipeline, use the following configuration:
122+
123+
1. Select **Existing Azure Pipeline YAML File**.
124+
125+
1. Select **CD-pipeline.yml**.
126+
127+
1. Provide the name for the pipeline, but the pipeline folder is optional.
128+
129+
## Create a service connection
130+
131+
A service connection is an authenticated connection between Azure Pipelines and external or remote services that you use to complete tasks. In this scenario, the service connection lets your CI/CD process create and manage resources in Azure. These steps create a Microsoft Entra ID app registration that you use as an authentication credential.
132+
133+
1. Follow the steps in [Create Azure Resource Manager service connection that uses workload identity federation](/azure/devops/pipelines/library/connect-to-azure#create-an-azure-resource-manager-service-connection-that-uses-workload-identity-federation).
134+
135+
1. Make sure that you select **Azure Resource Manager** as the service connection type, and then select **Next**.
136+
137+
1. Provide the following information:
138+
139+
| Parameter | Description |
140+
|-----------|-------------|
141+
| **Identity type** | Select **App registration (automatic)**. |
142+
| **Credential** | Select **Workload identity federation (Recommended)**. |
143+
| **Scope** | Select **Subscription**. |
144+
| **Subscription** | Your Azure subscription. |
145+
| **Resource group** | The Azure resource group. |
146+
| **Service Connection Name** | The name for the service connection. |
147+
| **Service Management Reference** (optional) | Context information. |
148+
149+
1. When you're done, select **Save**.
150+
151+
1. Note the name for the created Microsoft Entra ID app registration.
152+
153+
## Find the Microsoft Entra ID application registration
154+
155+
Confirm that your Microsoft Entra ID application has the necessary role and permissions for your scenario and get the object ID for later use.
156+
157+
1. In the Azure portal search box, enter the name for the Microsoft Entra ID application.
158+
159+
1. Confirm that the Microsoft Entra ID application has **Contributor** access for the resource group. If not, assign that access.
160+
161+
## Update pipelines to use the service connection
162+
163+
Now, specify the service connection to use with your pipelines.
164+
165+
1. In each file listed, find the property named **`serviceConnectionName`**. Set the property value to the service connection name.
166+
167+
- Infrastructure pipeline: Update the **infrastructure-pipeline-variables.yml** file.
168+
- CI pipeline: Update the **CI-pipeline-variables.yml** file.
169+
- CD pipeline: Update the **CD-pipeline-variables.yml** file.
170+
171+
1. In the **CI-pipeline-variables.yml** file, add a new property named **`subscriptionId`**. Set the property value to your Azure subscription ID, for example:
172+
173+
`subscriptionId: '<Azure-subscription-ID>'`
174+
175+
1. Make sure to save all the updated .yml pipeline files.
176+
177+
1. In Visual Studio Code, run the following Git commands from the command prompt:
178+
179+
`git add -A`<br>
180+
`git commit -m "<your-commit-comment>"`<br>
181+
`git push`
182+
183+
## Run infrastructure pipeline
184+
185+
To create your Standard logic app in Azure, follow these steps:
186+
187+
1. In Azure DevOps, select the appropriate branch, and then select **Run**.
188+
189+
1. If prompted, provide the permissions necessary to run the pipeline.
190+
191+
After the pipeline completes, you have an empty Standard logic app resource without any workflows in Azure.
192+
193+
## Run CI and CD pipelines
194+
195+
1. Before you run the CD pipeline, update this pipeline to include the source value, which is the name for your CI pipeline.
196+
197+
You can directly commit to the branch, but then run **`git pull`** on your local source to locally synchronize this change.
198+
199+
1. In Azure DevOps, run the CI pipeline, then run the CD pipeline.
200+
201+
1. If prompted, provide the permissions necessary to run the pipelines.
202+
203+
After the CD pipeline completes, you have the content from your Standard logic app project deployed to the logic app resource previously created in Azure.
204+
105205
## Related content
106206

0 commit comments

Comments
 (0)