ALM in Power Platform using DevOps, Power Platform Build Tools and Team Foundation Version Control – Part 2 of 3: Move solution from DEV to QUA

In this series of articles I want to explain how to configure a simple Application Lifecycle Management (ALM) process using DevOps and TFVC as an alternative to Github into Power Platform context.

I will show that by creating two simple Azure Pipelines: the first move the solutions from source to destination environment and the second store both the .zip solutions file and unpacked solution artifacts into TFVC Source Control.

In the previous article I cover all related to the initial configuration of Power Platform Environments and DevOps.

In this second article, I will show how to configure the first simple Azure Pipeline to move a single unmanaged solution from DEV environment to QUA environment through the following steps.

This is the scenario:

Open Azure DevOps, go to configured Project and select Pipelines area

Now, select New Pipeline

Select as source TFVS

Choose Empty Pipeline as template

Rename the Pipeline (i.e. DEV to QUA) and insert the following job steps from Power Platform Build Tools, mantaining this sequence:

1 Power Platform Tool Installer (used to install the tools into pipeline)

2 Power Platform Publish Customizations (used to publish customizations into DEV)

3 Power Platform Export Solution (used to export customizations from DEV)

4 Power Platform Checker (used to check customizations exported from DEV)

5 Power Platform Import Solution (used to import customizations into QUA)

6 Power Platform Publish Customizations (used to publish customizations into QUA)

After, under Variables tab, create a new variable SolutionName and set the value (in my case is ALM)

Now, for each step we must configure all the necessary informations

1 Power Platform Tool Installer

Check Use Default Version

2 Power Platform Publish Customizations

Select Auth Type to Service Principal MFA

Select the Source Service Connection (configured into first article)

3 Power Platform Export Solution

Select Auth Type to Service Principal MFA

Select the Source Service Connection (configured into first article)

Set Solution Name to $(SolutionName) using in this case the variable

Set Solution Output File to $/your-devops-project-path/$(SolutionName).zip

4 Power Platform Checker

Select the Source Service Connection (configured into first article)

Check use default Power Apps Checker endpoint with Local File option

Set Local File to Analyze to $/your-devops-project-path/$(SolutionName).zip

Set Rule Set to Solution Checker option

5 Power Platform Import Solution

Select Auth Type to Service Principal MFA

Select the Destination Service Connection (configured into first article)

Set Solution Input File Name to $/your-devops-project-path/$(SolutionName).zip

Under Advanced, check overwrite unmanaged customizations

6 Power Platform Publish Customizations

Select Auth Type to Service Principal MFA

Select the Destination Service Connection (configured into first article)

Now, after this steps, we are able to try the pipeline

Go to principal Pipelines area and select Run Pipeline from more option menu

During the execution we can see the detail of each steps configured in the pipeline, as follows

In this case there is no error and the execution is successful!

In my scenario into DEV environment (ALM Source), I have a solution named ALM that contain Account entity where I added a custom field

After Pipeline execution, checking my QUA enviroment (ALM Destination) initially without custom solutions, I can now see my ALM solution containing the account entity with the new custom field

Hope it helps and happy 365Power’ing!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.