1+ _tasks :
2+ - echo 'Hello template'
3+ # - command: ["git init"]
4+ # only run on project setup
5+ # when: "{{ _copier_operation == 'copy' }}"
6+
7+ _message_before_copy : |
8+ Thanks for generating a project using our template.
9+
10+ _message_after_copy : |
11+ Your project "{{ dbt_project_name }}" has been created successfully!
12+
13+ _message_after_update : |
14+ Your project "{{ dbt_project_name }}" has been updated successfully!
15+ In case there
16+
117_exclude :
2- - copier-answers.yml
318 - ci_requirements.txt
419 - test_load_dagbag.py
520 - copier.yaml
@@ -9,64 +24,119 @@ _exclude:
924 - " *.py[co]"
1025 - __pycache__
1126 - .DS_Store
27+ - data.yml
28+ - answers.yml
1229
13- ci_provider :
30+ services :
1431 type : str
32+ multiselect : true
33+ help : What services do you want to setup?
1534 choices :
16- - github
17- - gitlab
18- when : " {{setup_ci_cd}}"
19- default : github
20- help : CI/CD provider
35+ Base dbt project : setup_dbt_project
36+ dbt profile for automated runs : setup_dbt_profile
37+ setup_ci_cd : setup_ci_cd
38+ Linting with SQLFluff, dbt-checkpoint and-or YMLLint : setup_precommit
39+ Sample Airflow DAGs : setup_airflow_dags
40+ dbt-coves config and-or templates : setup_dbtcoves
41+
42+ # dbt project related vars
43+ dbt_project_dir :
44+ type : str
45+ when : " {{'setup_dbt_project' in services}}"
46+ default : " {{ datacoves_env.get('DATACOVES__DBT_HOME', '.') }}"
47+ help : dbt project directory
48+
49+ dbt_project_name :
50+ type : str
51+ when : " {{'setup_dbt_project' in services}}"
52+ help : What is the name of the dbt project?
2153
54+ # Airflow related vars
2255dags_path :
2356 type : str
24- when : " {{airflow_dags_confirm_path }}"
25- default : " {{tentative_dags_path }}"
57+ when : " {{'setup_airflow_dags' in services or 'setup_ci_cd' in services }}"
58+ default : " {{ datacoves_env.get('DATACOVES__AIRFLOW_DAGS_PATH', 'orchestrate/dags') }}"
2659 help : Airflow DAGs path
2760
61+ airflow_artifacts_path :
62+ type : str
63+ when : " {{'setup_ci_cd' in services}}"
64+ default : " {{ datacoves_env.get('DATACOVES__AIRFLOW_DAGS_PATH', 'orchestrate/dags').split('/')[0] }}"
65+ help : Airflow Artifacts path for unit tests
66+
2867yml_dags_path :
2968 type : str
30- when : " {{yml_dags_confirm_path}}"
31- default : " {{tentative_yml_dags_path }}"
69+ when : " {{'setup_airflow_dags' in services and yml_dags_confirm_path}}"
70+ default : " {{datacoves_env.get('DATACOVES__AIRFLOW_DAGS_YML_PATH', 'orchestrate/dags_yml_definitions') }}"
3271 help : Airflow YML Dags path
3372
73+ # dbt-coves related vars
74+ add_dbtcoves_config_and_templates :
75+ type : bool
76+ default : false
77+ when : " {{not 'setup_dbtcoves' in services and 'setup_dbt_project' in services}}"
78+ help : Add dbt-coves config and templates?
79+
80+ setup_dbtcoves_config :
81+ type : bool
82+ default : true
83+ when : " {{'setup_dbtcoves' in services}}"
84+ help : Setup dbt-coves config?
85+
86+ setup_dbtcoves_templates :
87+ type : bool
88+ default : true
89+ when : " {{'setup_dbtcoves' in services}}"
90+ help : Setup dbt-coves templates?
91+
92+ # CI / CD Related vars
93+
94+ ci_provider :
95+ type : str
96+ choices :
97+ - github
98+ - gitlab
99+ when : " {{'setup_ci_cd' in services}}"
100+ default : github
101+ help : CI/CD provider
102+
34103use_dbt_checkpoint :
35104 type : bool
36105 default : false
37- when : " {{setup_precommit}}"
106+ when : " {{' setup_precommit' in services }}"
38107 help : use dbt-checkpoint?
39108
40109use_sqlfluff :
41110 type : bool
42111 default : false
43- when : " {{setup_precommit}}"
112+ when : " {{' setup_precommit' in services }}"
44113 help : use Sqlfluff?
45114
46115use_yamllint :
47116 type : bool
48117 default : false
49- when : " {{setup_precommit}}"
118+ when : " {{' setup_precommit' in services }}"
50119 help : use Yamllint?
51120
52- add_dbtcoves_config_and_templates :
53- type : bool
54- default : false
55- when : " {{not setup_dbt_coves and setup_dbt_project }}"
56- help : Add dbt-coves config and templates?
121+ dbt_checkpoint_version :
122+ type : str
123+ help : What dbt-checkpoint version are you using?
124+ default : " {{ datacoves_env.get('DATACOVES__DBT_CHECKPOINT_VERSION', 'v2.0.6') }}"
125+ when : " {{use_dbt_checkpoint}} "
57126
58- setup_dbtcoves_config :
59- type : bool
60- default : true
61- when : " {{setup_dbt_coves }}"
62- help : Setup dbt-coves config?
127+ yamllint_version :
128+ type : str
129+ help : What yamllint version are you using?
130+ default : " {{ datacoves_env.get('DATACOVES__YAMLLINT_VERSION', 'v1.36.2') }}"
131+ when : " {{use_yamllint}} "
63132
64- setup_dbtcoves_templates :
65- type : bool
66- default : true
67- when : " {{setup_dbt_coves }}"
68- help : Setup dbt-coves templates?
133+ sqlfluff_version :
134+ type : str
135+ help : What sqlfluff version are you using?
136+ default : " {{ datacoves_env.get('DATACOVES__SQLFLUFF_VERSION', '3.1.1') }}"
137+ when : " {{use_sqlfluff}} "
69138
139+ # dbt related vars
70140dbt_adapter :
71141 type : str
72142 choices :
@@ -75,15 +145,11 @@ dbt_adapter:
75145 - redshift
76146 - databricks
77147 help : What dbt adapter are you using?
78- when : " {{not datacoves_dbt_adapter and (setup_dbt_profile or setup_ci_cd or setup_sqlfluff)}}"
79- default : snowflake
80-
81- dbt_checkpoint_version :
82- type : str
83- help : What dbt-checkpoint version are you using?
84- when : " {{use_dbt_checkpoint and ask_dbt_checkpoint_version}}"
148+ when : " {{not datacoves_dbt_adapter and ('setup_dbt_profile' in services or setup_ci_cd or setup_sqlfluff)}}"
149+ default : " {{ datacoves_env.get('DATACOVES__DBT_ADAPTER', 'snowflake') }}"
85150
86- yamllint_version :
151+ dbt_profiles_path :
87152 type : str
88- help : What yamllint version are you using?
89- when : " {{use_yamllint and ask_yamllint_version}}"
153+ when : " {{ 'setup_dbt_profile' in services or 'setup_ci_cd' in services }}"
154+ default : " {{ datacoves_env.get('DATACOVES__AIRFLOW_DBT_PROFILE_PATH', 'automate/dbt') }}"
155+ help : dbt Profile Path for automated runs
0 commit comments