mirror of
https://github.com/FlipsideCrypto/near-models.git
synced 2026-02-06 14:11:54 +00:00
112 lines
3.6 KiB
YAML
112 lines
3.6 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: "near_models"
|
|
version: "2.0.0"
|
|
config-version: 2
|
|
|
|
# This setting configures which "profile" dbt uses for this project.
|
|
profile: "near"
|
|
require-dbt-version: ">=1.7.0"
|
|
|
|
# These configurations specify where dbt should look for different types of files.
|
|
# The `source-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"
|
|
|
|
on-run-start:
|
|
- "{{ create_udfs() }}"
|
|
- "{{ create_sps() }}"
|
|
|
|
on-run-end:
|
|
- "{{ apply_meta_as_tags(results) }}"
|
|
|
|
# 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"
|
|
near_models:
|
|
+pre-hook: '{{ fsc_utils.set_query_tag() }}'
|
|
livequery_models:
|
|
deploy:
|
|
core:
|
|
materialized: ephemeral
|
|
|
|
tests:
|
|
near:
|
|
silver:
|
|
+error_if: ">100" # only raise as error if >100, otherwise warn
|
|
+store_failures: True # all tests
|
|
|
|
vars:
|
|
"dbt_date:time_zone": GMT
|
|
STREAMLINE_INVOKE_STREAMS: False
|
|
STREAMLINE_USE_DEV_FOR_EXTERNAL_TABLES: False
|
|
UPDATE_UDFS_AND_SPS: False
|
|
UPDATE_SNOWFLAKE_TAGS: True
|
|
MANUAL_FIX: False
|
|
OBSERV_FULL_TEST: False
|
|
DBT_FULL_TEST: False
|
|
STREAMLINE_LOAD_LOOKBACK_HOURS: 3 # todo can deprecate
|
|
RECEIPT_MAP_LOOKBACK_HOURS: 6 # todo can deprecate
|
|
IS_MIGRATION: False # todo can deprecate
|
|
NEAR_MIGRATE_ARCHIVE: False
|
|
HEAL_MODELS: []
|
|
core_folders: [
|
|
'silver/streamline',
|
|
'silver/actions',
|
|
'gold/core',
|
|
'streamline'
|
|
]
|
|
API_INTEGRATION: '{{ var("config")[target.name]["API_INTEGRATION"] }}'
|
|
EXTERNAL_FUNCTION_URI: '{{ var("config")[target.name]["EXTERNAL_FUNCTION_URI"] }}'
|
|
API_AWS_ROLE_ARN: '{{ var("config")[target.name]["API_AWS_ROLE_ARN"] if var("config")[target.name] else var("config")["dev"]["API_AWS_ROLE_ARN"] }}'
|
|
ROLES: '{{ var("config")[target.name]["ROLES"] }}'
|
|
config:
|
|
# The keys correspond to dbt profiles and are case sensitive
|
|
dev:
|
|
API_INTEGRATION: AWS_NEAR_API_STG_V2
|
|
EXTERNAL_FUNCTION_URI: cx7cyhtcjf.execute-api.us-east-1.amazonaws.com/stg/
|
|
API_AWS_ROLE_ARN: arn:aws:lambda:us-east-1:704693948482:function:near-api-stg-APIHandler-JIPzugohypYl
|
|
ROLES:
|
|
- AWS_LAMBDA_NEAR_API
|
|
- INTERNAL_DEV
|
|
prod:
|
|
API_INTEGRATION: AWS_NEAR_API_PROD_V2
|
|
EXTERNAL_FUNCTION_URI: ygnnkauzn2.execute-api.us-east-1.amazonaws.com/prod/
|
|
API_AWS_ROLE_ARN: arn:aws:lambda:us-east-1:924682671219:function:near-api-prod-APIHandler-926uy1lxE2Sa
|
|
ROLES:
|
|
- AWS_LAMBDA_NEAR_API
|
|
- DBT_CLOUD_NEAR
|
|
|
|
dispatch:
|
|
- macro_namespace: dbt
|
|
search_order:
|
|
- near-models
|
|
- dbt_snowflake_query_tags
|
|
- dbt
|
|
|
|
query-comment:
|
|
comment: "{{ dbt_snowflake_query_tags.get_query_comment(node) }}"
|
|
append: true # Snowflake removes prefixed comments.
|
|
|