forked from FlipsideCrypto/xyz-models
-
Notifications
You must be signed in to change notification settings - Fork 0
/
dbt_project.yml
103 lines (86 loc) · 3.04 KB
/
dbt_project.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
# 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: "aptos_models"
version: "1.0.0"
config-version: 2
require-dbt-version: ">=1.7.0"
# This setting configures which "profile" dbt uses for this project.
profile: "aptos"
# 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: ["analysis"]
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"
# Configuring models
# Full documentation: https://docs.getdbt.com/docs/configuring-models
# In this example config, we tell dbt to build all models in the example/ directory
# as tables. These settings can be overridden in the individual model files
# using the `{{ config(...) }}` macro.
models:
+copy_grants: true
+persist_docs:
relation: true
columns: true
+on_schema_change: "append_new_columns"
aptos_models:
+pre-hook: '{{ fsc_utils.set_query_tag() }}'
dbt_constraints_sources_nn_enabled: false
tests:
+store_failures: true # all tests
on-run-start:
- '{{create_sps()}}'
- '{{create_udfs()}}'
on-run-end:
- '{{ apply_meta_as_tags(results) }}'
dispatch:
- macro_namespace: dbt
search_order:
- aptos-models
- dbt_snowflake_query_tags
- dbt
query-comment:
comment: '{{ dbt_snowflake_query_tags.get_query_comment(node) }}'
append: true # Snowflake removes prefixed comments.
vars:
"dbt_date:time_zone": GMT
STREAMLINE_INVOKE_STREAMS: FALSE
STREAMLINE_USE_DEV_FOR_EXTERNAL_TABLES: FALSE
UPDATE_SNOWFLAKE_TAGS: TRUE
OBSERV_FULL_TEST: FALSE
START_GHA_TASKS: FALSE
UPDATE_UDFS_AND_SPS: FALSE
core_folders: [
'silver/core',
'gold/core',
'bronze/core',
'streamline'
]
#### STREAMLINE 2.0 BEGIN ####
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: '{{ var("config")[target.name]["ROLES"] }}'
config:
# The keys correspond to dbt profiles and are case sensitive
dev:
API_INTEGRATION: aws_aptos_api_stg_v2
EXTERNAL_FUNCTION_URI: 9v6g64rv1e.execute-api.us-east-1.amazonaws.com/stg/
ROLES:
- AWS_LAMBDA_APTOS_API
- INTERNAL_DEV
prod:
API_INTEGRATION: aws_aptos_api_prod_v2
EXTERNAL_FUNCTION_URI: mxus3semvi.execute-api.us-east-1.amazonaws.com/prod/
ROLES:
- AWS_LAMBDA_APTOS_API
- DBT_CLOUD_APTOS
- INTERNAL_DEV