|
1 | 1 | --- |
2 | 2 | title: Introduction to CI/CD in Microsoft Fabric |
3 | | -description: An overview of the CI/CD continuous integration, continuous deployment as part of the Application lifecycle management (ALM) cycle process in Microsoft Fabric. |
| 3 | +description: An overview of continuous integration and continuous delivery (CI/CD) in Microsoft Fabric, including Git integration, deployment pipelines, the Variable library, the Fabric REST APIs, the Fabric CLI, and infrastructure as code. |
4 | 4 | ms.reviewer: NimrodShalit |
5 | 5 | ms.topic: concept-article |
6 | | -ms.date: 12/15/2025 |
| 6 | +ms.date: 07/14/2026 |
| 7 | +ai-usage: ai-assisted |
7 | 8 | #customer intent: As a developer, I want to understand the CI/CD process in Microsoft Fabric so that I can efficiently manage the lifecycle of my applications. |
8 | 9 | --- |
9 | 10 |
|
10 | | -# What is application lifecycle management in Microsoft Fabric? |
| 11 | +# What is CI/CD in Microsoft Fabric? |
11 | 12 |
|
12 | | -Microsoft Fabric's application lifecycle management tools provide a standardized system for communication and collaboration between all members of the development team throughout the life of the product. Lifecycle management facilitates an effective process for releasing products quickly by continuously delivering updated content into production and ensuring an ongoing flow of new features and bug fixes using the most efficient delivery method. There are three main components of lifecycle management in Fabric: |
| 13 | +Continuous integration and continuous delivery (CI/CD) in Microsoft Fabric give development teams a standardized way to build, review, and release content with speed and reliability. Instead of manual updates, teams integrate changes frequently through source control and deliver them through automated pipelines, so new features and bug fixes reach production quickly and safely. |
13 | 14 |
|
14 | | -## Git integration |
| 15 | +The Fabric CI/CD platform is built on the Fabric REST APIs and brings source control, delivery, configuration, and developer tooling together into a single, integrated experience. The rest of this article walks through the platform layer by layer. |
15 | 16 |
|
16 | | -:::image type="content" source="./media/cicd-overview/git-flow.png" alt-text="Flowchart showing the connection between the remote Git branch and the live workspace."::: |
| 17 | +## The Fabric CI/CD platform at a glance |
| 18 | + |
| 19 | +The Fabric CI/CD platform spans several core capabilities, all built on the Fabric REST API foundation: |
| 20 | + |
| 21 | +* **Git integration** - Sync a workspace with a Git repository in Azure DevOps or GitHub, with service principal support. |
| 22 | +* **Deployment pipelines** - Promote content across Dev, Test, and Prod stages with configuration rules and content comparison. |
| 23 | +* **Fabric REST APIs** - The foundation layer for item CRUD, item definitions, capacity, workspace, access, and job operations. |
| 24 | +* **Variable library** - Configuration as code, with per-stage value sets for CI/CD, managed through the API or the UI. |
| 25 | +* **Fabric CLI** - An open-source, scriptable, filesystem-like command-line tool that's ready for GitHub Actions and Azure DevOps. |
| 26 | +* **Terraform and fabric-cicd** - Infrastructure as code for environments, where fabric-cicd is the most widely adopted deployment tool. |
| 27 | + |
| 28 | +:::image type="content" source="./media/cicd-overview/fabric-cicd-platform.png" alt-text="Diagram of the Fabric CI/CD platform components: Git integration, deployment pipelines, Fabric REST APIs, Variable library, Fabric CLI, and Terraform with fabric-cicd." lightbox="./media/cicd-overview/fabric-cicd-platform.png"::: |
| 29 | + |
| 30 | +## Reference architecture |
| 31 | + |
| 32 | +The following enterprise reference architecture shows how these layers fit together. Developer tools build on the Fabric REST API foundation layer. Content flows through the Fabric integration and delivery layer with the Variable library, Git integration, and deployment pipelines. Source control and CI automation run in GitHub or Azure DevOps with a CI/CD runner. The supporting Azure and Fabric tenant resources include Dev, Test, and Prod capacities, Azure Key Vault, a private network, tenant settings, connections, domains, and the parent and branch workspaces created through branch-out. |
17 | 33 |
|
18 | | -With Fabric's [Git integration](./git-integration/intro-to-git-integration.md) process, incremental workspace updates can be made frequently and reliably by multiple developers. By applying Git advantages and best practices, developers can collaborate and ensure that content changes get to the workspace quickly and reliably. When ready, the delivery process can then deliver the content to deployment pipelines for testing and distribution. |
| 34 | +:::image type="content" source="./media/cicd-overview/fabric-cicd-reference-architecture.png" alt-text="Enterprise reference architecture diagram showing developer control tools over the Fabric REST API foundation layer, the Fabric integration and delivery layer with Variable library, Git integration, and deployment pipelines, source control and CI automation with GitHub, Azure DevOps, and a CI/CD runner, and the Azure and Fabric tenant resource plan with Dev, Test, and Prod capacities, Azure Key Vault, a private network, and parent and branch workspaces." lightbox="./media/cicd-overview/fabric-cicd-reference-architecture.png"::: |
| 35 | + |
| 36 | +## Fabric REST APIs: the foundation |
| 37 | + |
| 38 | +All Fabric CI/CD capabilities build on the [Fabric REST APIs](/rest/api/fabric/articles/using-fabric-apis), which provide programmatic access to core operations: item create, read, update, and delete, item definitions, capacity, workspace and access management, and job scheduling. Every higher-level experience, from Git integration to deployment pipelines, uses these APIs, so anything you do in the portal you can also automate. |
| 39 | + |
| 40 | +## Fabric integration and delivery |
| 41 | + |
| 42 | +This layer moves content reliably from development to production through three complementary capabilities. |
19 | 43 |
|
20 | 44 | > [!NOTE] |
21 | | -> Some of the items for CI/CD are in preview. See the list of supported item for the [Git integration](./git-integration/intro-to-git-integration.md#supported-items) and [deployment pipeline](./deployment-pipelines/intro-to-deployment-pipelines.md#supported-items) features. |
| 45 | +> Some of the items for CI/CD are in preview. See the list of supported items for the [Git integration](./git-integration/intro-to-git-integration.md#supported-items) and [deployment pipeline](./deployment-pipelines/intro-to-deployment-pipelines.md#supported-items) features. |
| 46 | +
|
| 47 | +### Git integration |
| 48 | + |
| 49 | +:::image type="content" source="./media/cicd-overview/git-flow.png" alt-text="Flowchart showing the connection between the remote Git branch and the live workspace."::: |
| 50 | + |
| 51 | +By using Fabric's [Git integration](./git-integration/intro-to-git-integration.md), multiple developers can frequently and reliably make incremental workspace updates. By applying Git advantages and best practices, developers collaborate and ensure that content changes get to the workspace quickly and reliably. When content is ready, the delivery process can then deliver it to deployment pipelines for testing and distribution. |
22 | 52 |
|
23 | | -## Delivery through deployment pipelines |
| 53 | +### Deployment pipelines |
24 | 54 |
|
25 | 55 | :::image type="content" source="./media/cicd-overview/pipeline-flow.png" alt-text="Illustration showing the flow of data in a deployment pipeline from data to app." lightbox="media/cicd-overview/pipeline-flow.png"::: |
26 | 56 |
|
27 | | -Fabric's [deployment pipelines](./deployment-pipelines/intro-to-deployment-pipelines.md) [automates the delivery](./deployment-pipelines/pipeline-automation.md) of modified content to environments like testing and production. It allows teams to produce updates in short cycles with high speed, frequency, and reliability. Content can be released at any time with a simple, repeatable deployment process. |
| 57 | +Fabric's [deployment pipelines](./deployment-pipelines/intro-to-deployment-pipelines.md) [automate the delivery](./deployment-pipelines/pipeline-automation.md) of modified content to environments like testing and production. Teams produce updates in short cycles with high speed, frequency, and reliability. You can release content at any time with a simple, repeatable deployment process. |
| 58 | + |
| 59 | +For the most efficient CI/CD experience in Fabric, connect your developer workspace to Git, and deploy from the connected workspace by using deployment pipelines. |
| 60 | + |
| 61 | +### Variable library |
| 62 | + |
| 63 | +By using [Variable libraries](./variable-library/variable-library-overview.md), you can: |
| 64 | + |
| 65 | +* Define and manage user-defined variables in a unified way for all workspace items. |
| 66 | +* Use the variables in different places in the product: in item definitions such as queries, as references to other items such as a lakehouse ID, and more. |
| 67 | +* Reuse variables across Fabric workloads and items. For example, several items in the workspace can refer to the same variable. |
| 68 | +* Adjust values based on the release pipeline stage for CI/CD. |
28 | 69 |
|
29 | | -For the most efficient lifecycle management experience in Fabric, connect your developer workspace to Git, and deploy from the connected workspace using deployment pipelines. |
| 70 | +## Source control and CI automation |
30 | 71 |
|
31 | | -## Variable library |
| 72 | +Fabric Git integration connects a workspace to a Git repository in either GitHub or Azure DevOps. Your continuous integration automation, such as validating a pull request or updating an integration workspace from Git, runs in any CI/CD runner: GitHub Actions, Azure Pipelines, or a self-hosted runner. Service principal support lets these automated flows authenticate without a signed-in user, with the Azure DevOps provider. |
32 | 73 |
|
33 | | -With [Variable libraries](./variable-library/variable-library-overview.md), customers can: |
| 74 | +## Developer tooling and infrastructure as code |
34 | 75 |
|
35 | | -* Define and manage variables (user-defined variables) in a unified way for all workspace items. |
36 | | -* Use the variables in different places in the product: In item definitions (such as queries), as reference to other items (Lakehouse ID), and more. |
37 | | -* Reuse variables across fabric workloads and items (for example, several items in the workspace can refer to the same variable). |
38 | | -* CI/CD - Use variables to adjust values based on the release pipeline stage. |
| 76 | +Developers drive the platform through scriptable tools that build on the Fabric REST APIs. |
| 77 | + |
| 78 | +### Fabric CLI |
| 79 | + |
| 80 | +The [Fabric CLI](/rest/api/fabric/articles/fabric-command-line-interface) (`fab`) is an open-source, scriptable command-line tool with a filesystem-like interface over Fabric. It works well in GitHub Actions and Azure DevOps for automating Git sync, deployment, and item management. |
| 81 | + |
| 82 | +### Terraform and fabric-cicd |
| 83 | + |
| 84 | +For infrastructure as code, use the [Terraform provider for Microsoft Fabric](https://registry.terraform.io/providers/microsoft/fabric/latest/docs) to provision Fabric environments such as workspaces and capacities. Use [fabric-cicd](https://microsoft.github.io/fabric-cicd/), a Python library, to deploy item definitions from a source-controlled repository. fabric-cicd is the most widely adopted deployment tool for Fabric CI/CD. |
39 | 85 |
|
40 | 86 | ## Related content |
41 | 87 |
|
42 | | -* [End to end lifecycle management tutorial](./cicd-tutorial.md) |
43 | | -* [Deployment pipelines](./deployment-pipelines/intro-to-deployment-pipelines.md) |
| 88 | +* [CI/CD workflow options in Fabric](./manage-deployment.md) |
44 | 89 | * [Git integration](./git-integration/intro-to-git-integration.md) |
| 90 | +* [Deployment pipelines](./deployment-pipelines/intro-to-deployment-pipelines.md) |
| 91 | +* [Variable library](./variable-library/variable-library-overview.md) |
| 92 | +* [Fabric REST APIs](/rest/api/fabric/articles/using-fabric-apis) |
| 93 | +* [Fabric CLI](/rest/api/fabric/articles/fabric-command-line-interface) |
| 94 | +* [Terraform provider for Microsoft Fabric](https://registry.terraform.io/providers/microsoft/fabric/latest/docs) |
| 95 | +* [fabric-cicd](https://microsoft.github.io/fabric-cicd/) |
0 commit comments