Forum Discussion

powerbiexpert22's avatar
powerbiexpert22
Impactful Individual
4 months ago
Solved

Publich PBIP on fabric workspace programatically

i have pbip file (zipped) in one of folder in ADLS and i want to publish this file on to fabric workspace in power bi programmatically using python? also i want to extract that pbip file on to pbix i...
  • Ritaf1983's avatar
    4 months ago

    Hi powerbiexpert22 

    To publish a PBIP (Power BI Project) file from ADLS to a Fabric workspace and manage it effectively, you should use Git Integration. Fabric does not "extract" a PBIP into a PBIX internally; rather, it reads the PBIP folder structure directly from a Git repository to create the corresponding items.

    Here is the professional workflow to achieve this:

    1. Git Integration Workflow (Recommended)
    This is the only way to natively use the PBIP format within a Fabric workspace without manual conversion.

    Extract and Push: Since your file is zipped in ADLS, you must first extract the PBIP folder structure. You need to push these folders (the .dataset, .report folders, and the .pbip file) into an Azure DevOps or GitHub repository.

    Connect Workspace: Go to your Fabric Workspace settings, select Git integration, and connect it to the repository and branch where you pushed the files.

    Sync: Once connected, Fabric will detect the project files. Click Sync (or "Update all"). Fabric will automatically transform the PBIP metadata into a live Semantic Model and Report in the workspace.

    2. Converting PBIP to PBIX
    There is no automated "server-side" feature in Fabric to convert a PBIP back into a single PBIX file.

    Manual Method: Open the PBIP file in Power BI Desktop, then use File > Save As and select the .pbix format. You can then upload this PBIX to the workspace.

    Workspace Download: If you use the Git Integration mentioned above, you can subsequently click on the report in the workspace and select Download this file. This will provide you with a .pbix version of the report.

    3. Automation via ADLS
    If you need to automate this from ADLS:

    Pipeline: Use an Azure DevOps Pipeline or GitHub Action to trigger when the ZIP is updated in ADLS.

    Deployment: The pipeline should unzip the file and commit the changes to the Git branch linked to your Fabric Workspace.

    Rest API: You can use the Fabric Git REST API to trigger the workspace "Update from Git" command programmatically after the files are pushed.

    Note: The Power BI Import API currently supports .pbix and .rdl files, but it does not support the .pbip folder structure directly. Therefore, Git Integration is your primary tool for this specific requirement.

    If this post helps, then please consider Accepting it as the solution to help the other members find it more quickly