terra-models/dbt_project.yml
2024-11-20 15:21:39 -05:00

83 lines
2.4 KiB
YAML

# Name your project! Project names should contain only lowercase characters
# and underscores. A good package name should reflect your organization's
# name or the intended use of these models
name: "terra_models"
version: "1.2.0"
config-version: 2
# This setting configures which "profile" dbt uses for this project.
profile: "terra"
# These configurations specify where dbt should look for different types of files.
# The `model-paths` config, for example, states that models in this project can be
# found in the "models/" directory. You probably won't need to change these!
model-paths: ["models"]
analysis-paths: ["analyses"]
test-paths: ["tests"]
seed-paths: ["data"]
macro-paths: ["macros"]
snapshot-paths: ["snapshots"]
target-path: "target" # directory which will store compiled SQL files
clean-targets: # directories to be removed by `dbt clean`
- "target"
- "dbt_modules"
- "dbt_packages"
on-run-start:
- "{{create_sps()}}"
# - "{{create_json_merge()}}"
on-run-end:
- '{{ apply_meta_as_tags(results) }}'
# Configuring models
# Full documentation: https://docs.getdbt.com/docs/configuring-models
models:
+copy_grants: true
+persist_docs:
relation: true
columns: true
+on_schema_change: "append_new_columns"
terra_models:
+pre-hook: '{{ fsc_utils.set_query_tag() }}'
tests:
terra_models:
+severity: warn # default to warn for all tests
gold:
+severity: error # but error if a core view is having issues
+store_failures: true # all tests
vars:
"dbt_date:time_zone": GMT
"UPDATE_SNOWFLAKE_TAGS": TRUE
STREAMLINE_INVOKE_STREAMS: FALSE
STREAMLINE_USE_DEV_FOR_EXTERNAL_TABLES: False
UPDATE_UDFS_AND_SPS: False
UPDATE_SNOWFLAKE_TAGS: True
OBSERV_FULL_TEST: FALSE
START_GHA_TASKS: False
API_INTEGRATION: '{{ var("config")[target.name]["API_INTEGRATION"] if var("config")[target.name] else var("config")["dev"]["API_INTEGRATION"] }}'
EXTERNAL_FUNCTION_URI: '{{ var("config")[target.name]["EXTERNAL_FUNCTION_URI"] if var("config")[target.name] else var("config")["dev"]["EXTERNAL_FUNCTION_URI"] }}'
ROLES: |
["INTERNAL_DEV"]
core_folders: [
'silver/core',
'gold/core',
'bronze/streamline',
'streamline'
]
dispatch:
- macro_namespace: dbt
search_order:
- terra-models
- dbt_snowflake_query_tags
- dbt
query-comment:
comment: '{{ dbt_snowflake_query_tags.get_query_comment(node) }}'
append: true # Snowflake removes prefixed comments.