Power BI CD in ADO
We are trying to integrate Power BI workspace in ADO for version control and CI-CD. We are able to checkin our codes in ADO now. But need some guidance on release part. Trying to fetch the the artifact from Gir repos. as of now not creating any CI. Was trying CD with powershell scripting.
Azure DevOps
-
Rukmini • 43,915 Reputation points • Microsoft External Staff • Moderator
2026-09-01T07:35:25.12+00:00 Hey @Bhore, Rupali Vitthal ! It sounds like you’ve already got your Power BI workspace connected to an Azure DevOps repo (so you can commit/export PBIP artifacts and use PRs). Your next step—your “release” part / CI-CD—is typically implemented as Azure DevOps release pipelines that publish validated artifacts to target Fabric workspaces (dev/test/prod), where the build pipeline produces the deployment artifacts from the PBIP metadata.
Here’s the practical guidance based on the docs.
1) Set expectations: CI vs CD with PBIP
With Fabric Git integration + Azure DevOps, you can use Azure Pipelines to:
- CI (validation/build quality gates): validate PBIP content (semantic model + reports) whenever PRs are opened/merged.
- CD (release/publishing): after build/validation succeeds, publish content to other workspaces/environments using release pipelines and release approvals/on-demand triggers.
Key point from the guidance: build pipelines combine/prepare PBIP metadata into deployment-ready artifacts, and release pipelines are what actually publish/deploy to a Power BI/Fabric environment.
2) Connect the Fabric workspace to Azure DevOps (you likely already did)
This is the foundation:
- Use Fabric Git integration to connect the workspace to your Azure DevOps repo/branch.
- After export finishes, your ADO branch will contain folders for each workspace item.
(If you’re already checking in code successfully, you’re past this.)
3) Create a build pipeline in Azure DevOps for validation (CI)
In the referenced approach, you create an Azure DevOps pipeline using the repo connected to the Fabric workspace and use Power BI developer-mode pipeline YAML to run validation jobs (for example):
- Build_Datasets: runs Tabular Editor + Best Practice Analyzer (BPA rules)
- Build_Reports: runs PBI Inspector
That’s your “quality gate between source control and a Fabric workspace.”
4) Add the “release” part: use Azure DevOps release pipelines to publish to environments (CD)
The “release” flow described in the enterprise content publishing scenario is:
Development release pipeline
- Triggered automatically once build + validation succeed
- Publishes content to the development workspace
Test and production release pipelines
- Not automatically triggered
- Triggered on-demand or after approval
- Deploy content after release approval gates to prevent accidental promotion
How publishing typically happens (conceptually)
The release pipeline deploys:
- data model metadata using an endpoint approach (XMLA endpoint in the described scenario)
- Power BI Desktop/report files via Power BI REST APIs
- and includes post-deployment activities (for example: credentials / app updates)
So if you’re currently using only PowerShell scripting and “not creating any CI,” a better pattern is:
- Build/validate in CI
- Then use release pipeline stages + approvals for publishing to dev/test/prod
5) Important: decide whether you’re “publishing into the same Git-connected workspace” or promoting between workspaces
The docs emphasize a validation gate and a publish flow to target workspaces. In practice:
- Use a separate Git-connected development workspace for authoring/CI validation
- Use separate workspaces for test/prod and deploy to them via release pipelines
(If your target is still Git-connected to source control, deployment/publishing behaviors can differ from the intended “promote content to other environments” model.)
Suggested next step for you (what to implement)
- Create/enable the Azure DevOps build pipeline that runs the PBIP validation (BPA / PBI Inspector).
- Create Azure DevOps release pipelines (or multi-stage pipelines depending on your setup) with stages like:
-
dev(auto)-
test(approval required)-
prod(approval required)
-
-
-
- Configure each release stage to publish the build artifacts to the correct Fabric workspace(s), then do any required post-deployment tasks.
-
Bhore, Rupali Vitthal • 0 Reputation points
2026-09-01T10:02:27.9033333+00:00 Hi Rukmini,
Thanks for your response. I understand the overall flow now, but need the task details in CD..which script I should use, what customization I should do in that..service principal is in place how to use that in CD? any variables I need to set etc. Task/ runbook by which I can have end to end process for release.
Any video/ docume t link is also preferable. Thanks
-
Rukmini • 43,915 Reputation points • Microsoft External Staff • Moderator
2026-09-02T08:36:50.72+00:00 Hello @Bhore, Rupali Vitthal
Thanks for the clarification. For the CD/release implementation, Microsoft provides an end-to-end approach using fabric-cicd with Azure DevOps for PBIP projects, including service principal authentication, workspace configuration, environment-specific variables, and deployment scripting.
Please refer to the following Microsoft Learn resources for the detailed task-level steps and examples:
- Deploy Power BI projects (PBIP) using fabric-cicd: https://learn.microsoft.com/en-us/power-bi/developer/projects/projects-deploy-fabric-cicd
- Fabric end-to-end CI/CD automation: https://learn.microsoft.com/en-us/fabric/cicd/tutorial-end-to-end-automation
- Automate deployment pipelines with APIs: https://learn.microsoft.com/en-us/fabric/cicd/deployment-pipelines/pipeline-automation
These guides cover how to use the existing service principal, configure the required variables/workspaces, customize the deployment script, and integrate the deployment into an Azure DevOps pipeline.
If you can confirm whether you are using separate Dev/Test/Prod Fabric workspaces or Fabric Deployment Pipelines, we can further align the CD steps with your specific setup.
-
Rukmini • 43,915 Reputation points • Microsoft External Staff • Moderator
2026-09-03T07:58:54.2733333+00:00 Hello @Bhore, Rupali Vitthal
Following up to see if the above provided information was helpful. If you have any further queries do let us know.
-
Rukmini • 43,915 Reputation points • Microsoft External Staff • Moderator
2026-09-08T04:37:59.6666667+00:00 Hello @Bhore, Rupali Vitthal
Following up to see if the above provided information was helpful. If you have any further queries do let us know.
Sign in to comment