-
Notifications
You must be signed in to change notification settings - Fork 14
/
dbt_project.yml
71 lines (63 loc) · 2.01 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
# 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: 'rapid_onboarding_exemplar'
version: '1.0.0'
config-version: 2
require-dbt-version: '>=1.0.0'
# This setting configures which "profile" dbt uses for this project.
profile: 'default'
# 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: ["seeds"]
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"
vars:
example_variable: foo
example_target_snapshot_schema: "{{ target.schema if target.name == 'dev' else 'prod_snapshot' }}"
incremental_lookback_value: 3
incremental_lookback_period: 'hour'
future_proof_date: '9999-12-31'
on-run-end:
- "{% if target.name == 'prod' %}{{ dbt_artifacts.upload_results(results) }}{% endif %}"
# Configuring models
# Full documentation: https://docs.getdbt.com/docs/configuring-models
models:
rapid_onboarding_exemplar:
marts:
+materialized: table
+tags: ['tag']
finance:
+group: finance
marketing:
+group: marketing
operations:
+group: operations
intermediate:
+materialized: view
staging:
+materialized: view
_samples:
+materialized: table
staging:
jaffle_shop:
+materialized: view
+tags:
- example
- hourly
dbt_artifacts:
staging:
+materialized: ephemeral
tests:
rapid_onboarding_exemplar:
_samples:
staging:
+store_failures: "{{ true if target.name == 'prod' else false }}"