Configuration config
The general configuration that is used to generate the objects with the requested settings.
Fabric Configuration
The configuration needed to build the model
| Name | Type | Description |
|---|---|---|
| Environment | String | Environment (PRD, TST, ACC, DEV) used in Azure Devops pipelineAn automated "conveyor belt" that moves data from one place to another or performs a task automatically. |
| EnvironmentDescription | String | Longer name for the environment like Production |
| ServiceConnection | String | Name of the service connection in Azure DevOps |
| VsSolutionName | String | Filename of the Visual Studio solution |
| Apiconfigfile | String | Filepath to the api configuration file |
| MetaFolder | String | Path on the Meta lakehouseA place where you store both "raw" data (like files) and "organized" data (like tables). It combines the best of a File Cabinet and a Database. in fabric for the meta data files |
| TenantId | String | The tenant id where this is deployed |
| ApplicationClientId | String | The application id that is used to deploy things that require a service principal for authentication. |
| ApplicationKeyvaultSecret | String | The secret name in the keyvault for the service principal |
| ColumnNamesToLower | bool | All columns generated will be lowercase (except for the system columns, those are in UPPER case |
| ColumnNamesAutoFix | bool | If a column has special characters not suitable for delta table those will be replaced |
| RemoveNewLineFromScripts | bool | |
| BronzeConnectionPrefix | bool | Bronze objects will have a connection prefix |
| DataplatformFolder | String | The root dataplatform folder |
| TempFolder | String | The temp folder for local temp in the project. |
| DatabaseFolder | String | Folder where the object yamlA simple way to write configurations. It's basically a list that computers can read easily. files are located |
| DatabaseOutputFolder | String | Folder where the generated table definitions and view definitions will be saved |
| NotebooksFolder | String | Folder where the notebook folders are located |
| NotebooksOutputFolder | String | Folder where the generated notebooks will be saved |
| RequestFolder | String | Folder where the requests will be saved. Useful for debugging purposes |
| FabricProjectName | String | The project where the generated objects will be saved into |
| DimObjectPrefix | String | A prefix for a dimension table in Gold. A leading '_' in the table Name is stripped before prefixing |
| FactObjectPrefix | String | A prefix for a fact view in Gold. A leading '_' in the table Name is stripped before prefixing |
| HelpObjectPrefix | String | A prefix for a help table in Gold (default='H'; a leading '_' in the Name is stripped before prefixing; empty means no prefix) |
| DimSurrogatekeyPrefix | String | A prefix for a surrogate key column in Gold |
| TransformationObjectPrefix | String | A prefix for a transformation table in Gold. A leading '_' in the table Name is stripped before prefixing |
| Workspace | String | Workspace for this environment in Fabric |
| Keyvault | String | Keyvault for this environment |
| SchemaHistory | String | History schema used for history tables (default='his') |
| FunctionAppName | String | The name of the Azure Function used for the triggers |
| ResourceGroupName | String | The Azure resource group holding the environment's resources (e.g. the function app) |
| McpClientId | String | Application (client) id of the Entra app registration that MCP clients and the QUI website sign in with |
| McpAllowedRedirectUris | String | Comma-separated redirect URIs the MCP server accepts for those clients |
| McpAllowedOrigins | String | Comma-separated browser origins (the QUI website) allowed to call the MCP server |
The deploy pipeline uploads this file to the Meta lakehouse as Files/Configuration/config.yaml — unchanged apart from the deploymentThe process of "pushing a button" to make your configuration actual, working software in the cloud. stamp described below — where the wheel, the MCP server and the QUI website read it. Environment and EnvironmentDescription are what the MCP server's list_workspaces tool reports for the workspace.
Deployment stamp
| Name | Type | Description |
|---|---|---|
| PlatformVersion | String | The EasyFabric release the platform was generated from. Injected by the release pipeline into the release artifact |
| DeploymentBuildId | String | Azure DevOps build/run id of the deploy that placed this platform |
| DeploymentCommit | String | The git commit sha that deploy ran from |
These three keys are written by the pipelines and are read-only for you: never add or edit one by hand. A hand-written value is worse than no value at all, because the whole point of the stamp is that you can trust it when you are diagnosing whether a workspace matches the repo, and an invented value turns that diagnosis into a confident wrong answer. A key that is absent is correct behaviour, not a defect.
PlatformVersion and the two deployment keys answer different questions. PlatformVersion says which EasyFabric release the platform was generated from; DeploymentBuildId and DeploymentCommit identify the one deploy that placed the content currently in the workspace. Edit your own YAML after setup and deploy again, and PlatformVersion stays the same while the deployment stamp changes — that difference is exactly why both are recorded.
Fabric Lakehouse
| Name | Type | Description |
|---|---|---|
| Lakehouse (Required) | String | Name of the lakehouse for the given layer |
| Layer (Required) | FabricMedallionLayer | Layer for the medallion architectureA way of organizing data into three stages: Bronze (raw), Silver (cleaned), and Gold (ready for reports).: Bronze, Silver, Gold, Meta |
| Workspace (Required) | String | Fabric Workspace name (workspace has to exist and user needs access) |
Tabular Models
| Name | Type | Description |
|---|---|---|
| Model (Required) | String | Name of the model (e.g. DM). Used to select the model by name in the loaders |
| TabularName (Required) | String | Name of the tabular database/model as deployed to the workspace |
| CompatibilityLevel (Required) | Number | Compatibility level of the tabular model (e.g. 1700) |
| AddMembers | bool | Include the Members and Groups of roles.yaml in the generated model (default false) |
| DatabaseSchema | String | |
| Workspace | String | |
| DefaultPowerBIDataSourceVersion | String | |
| LoginType | String | How the tabular deploy authenticates. spn is the only supported value; any other fails the deploy. |
| PartitionDeployment | String | DeployPartitions (default) or RetainPartitions. Any other value fails the deploy. |
| RoleDeployment | String | DeployRolesAndMembers (default), DeployRolesRetainMembers or RetainRoles; see Role deployment. Any other value fails the deploy. |
| ModelDeployment | String | Whether the deploy touches this model at all: always (default) deploys it on every run, once deploys it only when it does not yet exist in the workspace, skip never deploys it. Any other value fails the deploy. |
| Lakehouse | String | |
| LakehouseSourceConnection | String | Name of the lakehouse connection used as the tabular datasource |
| datasourceConnection | String | Optional. Name of the shareable cloud connection the deployed model is bound to. The tabular deploy creates it on first use (SQL endpoint of LakehouseSourceConnection, service principal credentials) and calls BindToGateway, so the model can refresh without a manual credential step. Omit to leave the model's datasource credentials untouched. |
| BimFolder | String | |
| BimFile | String | |
| SourceQueryCulture | String | |
| ModelFolder | String | |
| ModelFile | String | |
| DerivedModelFile | String | Links a derived model file, resolved in the same ModelFolder |
| DataSourceType | String | |
| DataSourceName | String | |
| Dataset | String | |
| TabularSystemFolder | String | |
| MeasureTemplateFile | String | |
| FormatStringFile | String | |
| RoleFile | String | File with the role definitions (e.g. roles.yaml) |
Power BI Reports
| Name | Type | Description |
|---|---|---|
| GroupName | String | A name for the group of reports. Used to reference this setting in Azure DevOps pipeline |
| FilePath | String | Relative filepath to the reports.yaml config file |
| ReportFolder | String | Relative Path to the folder with the PBIX files |
Blob triggers
Defined under blobtriggers: — each entry connects an Azure storage container to a notebook that is triggered when a matching file is dropped. See Blob file trigger for the full setup.
Backups
Defined under backups: — each entry defines a backup of a layer to an Azure storage account:
| Name | Type | Description |
|---|---|---|
| BackupName | String | Name of the backup definition |
| Enabled | bool | Whether this backup runs (default=true) |
| StorageAccount | String | Azure storage account to back up to |
| Container | String | Container in the storage account |
| Layer | String | Layer to back up (e.g. bronze) |
| Schema | String[] | Schema(s) to back up (e.g. [his]) |
| TableFolder | String | Folder with the object YAML files that define the tables to back up |
| ExceptFolders | String[] | Folders to exclude |
Bronze, Silver and Gold Table settings
Can be set as bronzetablesettings, silvertablesettings and goldtablesettings
| Name | Type | Description |
|---|---|---|
| delta.enableChangeDataFeed | bool | |
| delta.autoOptimize.optimizeWrite | bool | |
| delta.autoOptimize.autoCompact | bool | |
| delta.logRetentionDuration | String | |
| delta.deletedFileRetentionDuration | String | |
| spark.sql.parquet.vorder.default | bool | |
| spark.databricks.delta.optimizeWrite.enabled | bool | |
| spark.sql.parquet.vorder.default | bool | |
| delta.stats.extended.collect | bool | |
| delta.stats.extended.inject | bool |
Those settings are added to the table creation script when generated.