Skip to main content
Question

how to create a custom config file apart from config.[env].yaml

  • March 5, 2026
  • 2 replies
  • 51 views

In addition to using config.[env].yaml, is it possible to create a custom file for configuring variables and then reference those placeholders in data models, transformations, workflows, etc ?

For instance, I have several common SQL blocks that I would like to share across different transformations. While I could define them as variables in config.[env].yaml, I prefer to keep SQL-related variables separate from others in order to maintain clarity.

2 replies

Anders  Albert
Seasoned Practitioner
Forum|alt.badge.img
  • Seasoned Practitioner
  • March 6, 2026

The only place you can define variables is in the config.[env].yaml file. 

I don’t think I follow here, can you describe a bit more what you mean. If you have an example that would be great.


  • Author
  • Committed
  • March 12, 2026

Hello ​@Anders Albert

We have several SQL CTE tables that need to be shared across different transformations. The most effective approach is to use placeholders within these transformations, which will then be replaced during the build phase. However, we would prefer not to define the CTE tables in the config.[env].yaml file.
 

For example: 

{{my_cmt}} is a common table that we prefer not to include in the config.[env].yaml file, but rather in a separate file that can be customized as needed.

externalId: tr-example
name: example
query: |-
{{my_cmt}},
SELECT
t.space,
t.id AS externalId,
...
FROM
table t
JOIN cmt ON t.id= cmt.parent_id
destination:
dataModel:
space: {{my_space}}
externalId: {{my_model}}
version: "{{my_version}}"
destinationType:
type: instances
ignoreNullFields: false
isPublic: true
conflictMode: upsert
dataSetExternalId: {{my_dataset}}