Adventures with Power Apps: View Pull Requests in Azure DevOps in a Canvas App

I had a customer ask if it was possible to create a Canvas App that could display pull requests from Azure DevOps across all projects.

Great question!

Before I got started, I first had to check to see if there was a connector for Azure DevOps available to the Power Platform.

Sure enough! There was an Azure DevOps Connector.

Next, had to see what methods were available with their connector.

Everything checked out! Time to get to work!

If you want to try these Canvas Apps out yourself, you will need access to Azure DevOps.

I created two Canvas Apps.

  • Azure DevOps Pull Request Viewer V1 – Canvas App – Tablet – Allows you to select an organization, select a project and then displays all the pull requests for a project.
  • Azure DevOps Pull Request Viewer V2 – Canvas App – Tablet – Allows you to select an organization and then displays all the pull requests across all projects

I created four Power Automate flows.

  • Azure DevOps – Organization List – Retrieves a list of organizations in Azure DevOps for the currently logged in user.
  • Azure DevOps – Organization Project List – Retrieves a list of projects for an organization.
  • Azure DevOps – Organization Project Pull Request List – Retrieves a list of pull requests for a project.
  • Azure DevOps – Organization Pull Request List – Retrieves a list of pull requests for all projects for an organization.

Azure DevOps Viewer Solution V1

Figure 1 – Azure DevOps Pull Request Viewer V1 Screenshot

I won’t bore you with all the details to building the solution, you can download it at https://1drv.ms/u/s!Ah6xh5d0qbNokb5yPe0XhjtwR9c-Gg?e=ZF72AD and check it out for yourself.

Azure DevOps Viewer Solution V2

Figure 2 – Azure DevOps Pull Request Viewer V2 – Canvas App – Tablet

The solution can be downloaded at https://1drv.ms/u/s!Ah6xh5d0qbNokb5xu2rGnnM9JUNgHA?e=HaXXKK.

Enjoy!


Discover more from Matt Ruma

Subscribe to get the latest posts to your email.

Leave a Reply

Your email address will not be published. Required fields are marked *