Collaboration among Power BI developers plays a crucial role in delivering impactful insights for organizations. Ensuring delivery of content to consumers is a challenge effectively met through a combination between Azure DevOps & Power BI & Git Integration.
Here is a great diagram recently delivered, that describes the use of Azure DevOps to manage and publish Power BI content through development, test, and production workspaces in the Power BI service.
The diagram encapsulate this workflow:
✨𝐏𝐨𝐰𝐞𝐫 𝐁𝐢 𝐝𝐞𝐯𝐞𝐥𝐨𝐩𝐞𝐫𝐬 𝐮𝐬𝐢𝐧𝐠 𝐥𝐨𝐜𝐚𝐥 𝐫𝐞𝐩𝐨𝐬𝐢𝐭𝐨𝐫𝐲 𝐝𝐮𝐫𝐢𝐧𝐠 𝐝𝐞𝐯𝐞𝐥𝐨𝐩𝐦𝐞𝐧𝐭✨
✅Power BI developers create content via Power BI Desktop or Tabular Editor, and save their work to a local repository during development.
✅They clone a remote repository to get a local copy of that content.
✅They commit and push their changes to a remote 𝐀𝐳𝐮𝐫𝐞 𝐃𝐞𝐯𝐨𝐩𝐬 𝐑𝐞𝐩𝐨𝐬 during development by using 𝐕𝐢𝐬𝐮𝐚𝐥 𝐒𝐭𝐮𝐝𝐢𝐨 𝐂𝐨𝐝𝐞, allowing version tracking and collaboration through separate branches.
In order to publish the committed content to Power BI Service, Azure Pipelines, like 𝐯𝐚𝐥𝐢𝐝𝐚𝐭𝐢𝐨𝐧, 𝐛𝐮𝐢𝐥𝐝 and 𝐫𝐞𝐥𝐞𝐚𝐬𝐞 𝐩𝐢𝐩𝐞𝐥𝐢𝐧𝐞𝐬 can be used.
✅Commits to the Azure DevOps repository trigger a 𝐯𝐚𝐥𝐢𝐝𝐚𝐭𝐢𝐨𝐧 𝐩𝐢𝐩𝐞𝐥𝐢𝐧𝐞, automating tests to ensure content integrity before publication.
✅A 𝐛𝐮𝐢𝐥𝐝 𝐩𝐢𝐩𝐞𝐥𝐢𝐧𝐞 is activated to prepare content for publishing to the Power BI Service(= 𝐂𝐨𝐧𝐭𝐢𝐧𝐮𝐨𝐮𝐬 𝐈𝐧𝐭𝐞𝐠𝐫𝐚𝐭𝐢𝐨𝐧 - CI)
✅Content is then published through 𝐫𝐞𝐥𝐞𝐚𝐬𝐞 𝐩𝐢𝐩𝐞𝐥𝐢𝐧𝐞𝐬 (=𝐂𝐨𝐧𝐭𝐢𝐧𝐮𝐨𝐮𝐬 𝐃𝐞𝐩𝐥𝐨𝐲𝐦𝐞𝐧𝐭 - CD). A release manager can check and validate deployments to test and production environments using Azure Pipelines release approvals.
✨𝐏𝐨𝐰𝐞𝐫 𝐁𝐈 𝐝𝐞𝐯𝐞𝐥𝐨𝐩𝐞𝐫𝐬 𝐰𝐨𝐫𝐤𝐢𝐧𝐠 𝐢𝐧 𝐚 𝐅𝐚𝐛𝐫𝐢𝐜 𝐰𝐨𝐫𝐤𝐬𝐩𝐚𝐜𝐞 𝐝𝐮𝐫𝐢𝐧𝐠 𝐝𝐞𝐯𝐞𝐥𝐨𝐩𝐦𝐞𝐧𝐭 ✨
✅Power BI developers working in a #Fabric workspace that use 𝐆𝐢𝐭 𝐢𝐧𝐭𝐞𝐠𝐫𝐚𝐭𝐢𝐨𝐧, can collaborate in a private workspace during development.
Private workspaces are synced to a remote branch in Azure DevOps Repos. Pull requests (PR) are utilized to seamlessly merge changes into the 𝐌𝐚𝐢𝐧 𝐁𝐫𝐚𝐧𝐜𝐡.
✅Using Git integration, the 𝐌𝐚𝐢𝐧 𝐁𝐫𝐚𝐧𝐜𝐡 includes all approved changes from pull requests, is generally synchronized with the 𝐝𝐞𝐯𝐞𝐥𝐨𝐩𝐦𝐞𝐧𝐭 𝐰𝐨𝐫𝐤𝐬𝐩𝐚𝐜𝐞.
✅Then 𝐏𝐨𝐰𝐞𝐫 𝐁𝐈 𝐝𝐞𝐩𝐥𝐨𝐲𝐦𝐞𝐧𝐭 𝐩𝐢𝐩𝐞𝐥𝐢𝐧𝐞𝐬 can be used to push content from from development through test and production workspaces.
👏A really great diagram highlighting the efficiency and collaboration embedded in Power BI's Enterprise Content Publishing scenarios.
Hi Amal, very interesting post, thank you for sharing. However, I have a question: in the approach of Power BI developers working in a Fabric Workspace during development, you say that they "can collaborate in a private workspace during development." What do you mean by that? Are there specific workspaces for development? But divided by team? Or do you mean they should be individual, that is, one for each developer? If it's for each developer, how is the communication between the developer's branch and the main branch related to the report, for example, Sales or Finance, etc.?