A human readable Tabular Model Definition Language using a YAML-like syntax. Each tabular metadata object has a textual representation with minimal delimiters. Indentation is used to indicate parent-child relationships between objects.
Learn more here: https://powerbi.microsoft.com/en-us/blog/announcing-public-preview-of-the-tabular-model-definition-language-tmdl/
Install latest version of Tabular Editor
Enable TMDL Serialization mode in Tabular Editor Preferences:
Open PBIX in Power BI Desktop and open Tabular Editor External tool:
Save as Folder to save the model definition into TMDL Format:
Navigate to the folder and your model should be serialized using TMDL format:
You can use pbi-tools to deploy a dataset using TMDL to a Power BI Premium Workspace.
You must create a .pbixproj.json deployment manifest and configure:
- A service principal that will execute the deployment (learn more here)
- Reference to the TMDL folder ('source' property)
- Workspace environments (Dev, PRD,...)
- Deployment options like parameters, display names, etc
To deploy TMDL you just need to run the following cmdline:
pbi-tools deploy . Datasets Development
If you want to automate the deployment everytime, its possible to use GitHub Workflows or Azure DevOps Pipelines to run pbi-tools as a docker image.
This repo includes a sample GitHub Workflow that deploys TMDL to a Premium Workspace everytime there is a PullRequest into Main: deploy.yml
Sample pipeline for Azure DevOps Pipelines: azure-pipelines.yml
See the following repo with an example on how to publish an serialize into TMDL using Powershell: