Everything as Code - ALM with Canvas Apps
With the recent experimental announcement of the PowerApps Solution Packager, we now have a much better way of managing Canvas Apps in your source code repository. This moves us much closer to a better ALM story for the whole of the Power Platform so that my top 3 principles can be followed:
- Everything as code – The single point of truth for all artifacts (solution metadata, apps, code, data, versioning, releases) should be under source control.
- Environments as cattle, not pets – When the entire solution is under source control, environments can be built and deleted for specific purposes – e.g. features, experiments, testing. I wrote a recent post on this.
- Define your Branching Strategy – A branching strategy is defined as describing how features/releases are represented as branches. Each time a new feature (or group of linked features) is worked on, it should happen in a source code branch. Code can be merged between each branch when ready to be integrated, built and released. Branches normally would have an associated PowerPlatform environment to allow you to work in parallel to other changes without the risk of introducing changes that should not be released. The gitflow branching strategy is a great starting point to use.
The Power Apps Solution Packager (pasopa) brings us closer to the 'everything as code' mantra - by unpacking a Canvas App into source code files that allow you to merge in changes from other branches and then re-pack. Eventually, this will make its way into the Power Apps CLI and Solution Packager.
Here are a couple of videos I've done on the subject of the PowerApps Solution Packager:
- ▶ Canvas Apps As Code??! Power Platform Unpacked #10
- ▶ Managing Canvas Apps as Source Code using Branches and Pull Requests
Published on:
Learn moreRelated posts
Embedding Canvas Apps into Model-Driven Forms for a Unified Experience
In Microsoft Power Apps, there are two main application types—canvas apps and model-driven apps—each serving unique purposes. While model-driv...
Canvas App Error: “Row Size Exceeded” – Causes, Fixes, and Best Practices
When building Canvas Apps with Dataverse, you might see this error: The total size of the columns used in the database command exceeded t...
Dynamics 365 Field Service : Create task-specific canvas apps and custom pages
Field technicians are the backbone of any service-centric organization. But their success depends on having the right tools at their fingertip...
Automating UI Testing for Canvas Apps with Power Platform Test Engine
Canvas Apps in Power Platform provide a flexible way to build rich, custom user interfaces using a low-code approach. However, as these apps g...
User-Defined Function (UDF) in Power Apps Canvas App – EMI Calculator Example
In this blog you will know about User-Defined Function (UDF) in Power Apps Canvas App with a EMI Calculator Example Watch the video below or s...