John Kerski on 23 Apr 2024 14:54:30
Over the past year, I’ve been able to work with both Pipelines in Power Platform and Fabric Deployment pipelines. Pipelines in Power Platform (PPP for short) can move solutions through development, test, and production environments (Power BI’s idea of a workspace roughly) and these solutions can contain items like Power Automate flows and PowerApps forms. Fabric Deployment Pipelines (FDP) allow you to move artifacts (i.e., Semantic Models and Reports) through development, test, and production workspaces. After working with both, I have a wish list of what Fabric Deployment Pipelines could look to their fellow product suite for ideas:
1) Environment Variables – PPP has a wonderful feature to set variables that can be reused across other products and can be promoted through development, test, and production. This promotes reuse and consistency. It would be a huge benefit if with FDP I could have variables treated like an artifact and be able to reference them when setting parameter rules in deployment pipelines (like I can with PPP). The introduction of Environments in Fabric scratch at the surface yet doesn’t quite hit the mark of what PPP can do.
2) Connection References – PPP allows us to couple connection settings (i.e., SharePoint or SQL) and move those through the environments, change when deployed to a new environment, and reuse across the products. Right now, Power BI gateways are the only way to accomplish this level of reuse and consistency, but you add the overhead of gateway provisioning and server management that you do not have with PPP.
3) Dependency View – While the lineage view in Fabric is helpful, the way PPP displays “Uses” and “Used By” is in a format much easier to manage promotions, especially when dependencies get more complicated. Fabric could replicate this feature and allow users to understand the dependencies before promotion including those that exist across workspaces.
4) Versioning – PPP automatically increments versions of your products/solutions during deployments which makes comparing differences between development, test, and production easier. In Fabric, my teams often must shoehorn semantic versioning into the various artifacts to keep track of deployments.
The introduction of these features could go a long way in bringing the DataOps principles of Orchestration and Reuse easier in the Fabric product.