Forum Discussion
Power BI App Deployment with Azure DevOps
- 1 year ago
Hello camelopardkh,
Thank you for your follow-up.you can automate deploying specific reports and updating the associated app by combining Power BI REST APIs with ADO pipelines. consider below points:
- Store your .pbix or .pbip files in an ADO Git repository (master branch). Use an ADO pipeline to selectively upload a specific report to your Power BI workspace using the POST /imports API. This allows you to target individual reports rather than moving all workspace content.
- After uploading the report, use the POST /groups/{groupId}/apps API to programmatically publish or update the app. This API updates the app’s content based on the workspace, including your newly deployed report. You can trigger this in ADO using a task that calls the API with a service principal for authentication.
- Use a service principal for secure, non-interactive access to Power BI APIs. Configure it in ADO with credentials stored securely in Azure Key Vault.
This approach avoids manual app updates and aligns with your ADO workflow for selective report deployment.
If you have any further questions, please don't hesitate to contact us through the community. We are happy to assist you.
Thank you.
camelopardkh Hey,
Power BI APIs provide limited direct functionalities for automating app updates, but there are ways to streamline the deployment process using Azure DevOps pipelines:
Potential Approaches:
Deployment Using Azure DevOps and PowerShell:
- PowerShell Scripts: Utilize PowerShell scripts within Azure DevOps to interact with the Power BI APIs. You can use scripts to refresh datasets or republish reports.
- Service Principal: Configure a service principal for authentication, so your scripts can perform administrative tasks without manual intervention.
- While direct app publishing may be limited, you can automate the deployment of reports and datasets using REST APIs.
- First, implement continuous integration for datasets and reports, followed by manual steps if necessary for app deployment.
Consider custom-building solutions using Azure Functions or Logic Apps to automate some of the processes, leveraging any available triggers, even if retrieval is limited.
Thanks
Harish KM
If these steps help resolve your issue, your acknowledgment would be greatly appreciated.