Power Apps Checker for XrmToolBox

Power Apps Checker for XrmToolBox
Follow Power Apps Checker on Twitter @PowerAppsCheckr !

The Power Apps Checker was first introduced by Microsoft as the Solution Checker in the new Maker portal for Microsoft Dynamics 365 and the Common Data Service. We also have the App Checker for Canvas apps, and the Flow Checker for flows.

These services have been combined under the same umbrella: the Power Apps Checker!

Microsoft has also provided us with an API to invoke the checks. This allows for CI/CD pipeline automation, and for any tool or code to consume the public Power Apps Checker API for easier access and more granular checks.


Before going to Dynamics Power Saturday in Dublin, Ireland in September 2019, I called out for tool ideas for my session “Let’s Build an XrmToolBox Tool!” on LinkedIn.

One of the responses I got was from Mike Huguet, Engineering Lead for the team behind the Power Apps Checker:

How could I deny Mike his request? Of course I started looking into the Power Apps Checker API and began building the tool. For the session in Dublin I got a bunch of other interesting ideas, but that’s another story.

The Power Apps Checker for XrmToolBox was born.

The Power Apps Checker for XrmToolBox consumes the API to create a rich experience when validating the quality of solutions for:


Tutorial

See a short tutorial for the Power Apps Checker for XrmToolBox above.

Prerequisites

XrmToolBox

The Power Apps Checker for XrmToolBox of course requires – well, XrmToolBox. Download and run XrmToolBox from https://www.xrmtoolbox.com

To install the Power Apps Checker, go to the Tool Library to find and install the tool.

Azure App Registration

Running the checker requires an Azure App Registration to get an Application ID (a.k.a. Client ID) needed for authentication.

The Power Apps Checker for XrmToolBox can authenticate either with the Application ID and interactive user authentication, or with the combination of Directory ID (a.k.a. Tenant ID), Application ID and Client Secret.

Click the help url icons to get more information on how to set up and find these values.

When using interactive user authentication, the App Registration needs an API permission for PowerApps-Advisor and a Redirect URI:

Read more about how to set this up in the documentation.

The Tool

The API

To use the Power Apps Checker API for analysis the following steps are performed:

  1. Upload solution file to the PAC service.
  2. Invoke analysis of uploaded file using specified rule set or rules.
  3. Check for progress of the analysis.
  4. Download SARIF file with analysis results.

SARIF

SARIF is an open standard that defines a format for the output of static analysis tools. There are tutorials, SDKs and various viewers published on the SARIF website, but for the specific case with the Power Apps Checker I created my own parser and viewer for XrmToolBox.

Solutions

Power Apps Checker for XrmToolBox can analyze solution files that you have downloaded locally, or solutions in a Common Data Service or Dynamics 365 environment where the the tool first exports the solution for you.

Rules

Before hitting the Analyze button, select which rules or which rule set that shall be used for the analysis. When running the Power Apps Checker in the Maker portal of Power Platform, the Solution Checker rule set is always applied. Using the XrmToolBox tool allows for full control of exactly which rules to check for.

Files

It is also possible to specify files to exclude from the analysis, which is useful when you know there is an accepted technical debt in the solution that will be addressed at a later time.


Links

Webhttps://powerappschecker.com/
YouTubehttp://jonasr.app/xtb-school/pac
Twitterhttps://twitter.com/PowerAppsCheckr
GitHubhttps://github.com/rappen/PowerAppsChecker/

Leave a Reply

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