forked from OCA/oca-addons-repo-template
-
Notifications
You must be signed in to change notification settings - Fork 0
/
copier.yml
202 lines (169 loc) · 4.78 KB
/
copier.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
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
# Configure jinja2 defaults to make syntax highlighters happy
_templates_suffix: .jinja
_subdirectory: src
_min_copier_version: "9"
_tasks:
- rm -f {% if ci != "Travis" %}.travis.yml{% endif %} .t2d.yml
- "{% if odoo_version >= 18 %}rm -f .prettierrc.yml .eslintrc.yml{% endif %}"
_migrations:
- version: v1.3.6
after:
- rm -f CONTRIBUTING.md
odoo_version:
type: float
default: 18.0
choices:
- 10.0
- 11.0
- 12.0
- 13.0
- 14.0
- 15.0
- 16.0
- 17.0
- 18.0
help: Which Odoo version are we deploying in this branch?
org_slug:
type: str
default: OCA
help:
What's the organization slug? If you are creating
https://github.com/OCA/server-tools, then write "OCA" here.
org_name:
type: str
default: Odoo Community Association (OCA)
help:
Tell me the Organization name. It's supposed to be human-readable. It will be used
in the author key of the __manifest__ files.
repo_slug:
type: str
help:
What's the repo slug? If you are creating https://github.com/OCA/server-tools, then
write "server-tools" here.
repo_name:
type: str
help:
Tell me the project name. It's supposed to be human-readable. So, server-tools
project could be named like "Tools for server environment(s)"
repo_website:
type: str
default: "https://github.com/{{ org_slug }}/{{ repo_slug }}"
help:
Tell me the project website. It will be used in the website key of the __manifest__
files.
repo_description:
type: str
help: Please write a short description about what this repo is about.
ci:
type: str
default: GitHub
choices:
- Travis
- GitHub
help: Which CI system to use ?
odoo_test_flavor:
type: str
default: OCB
choices:
- Odoo
- OCB
- Both
help: Which Odoo flavor should be used for CI tests ?
travis_apt_sources:
type: yaml
default: []
help: >
If you need to activate extra apt sources in Travis, this is the place. It must be a
YAML list with aliases listed here:
https://github.com/travis-ci/apt-source-safelist/blob/master/ubuntu.json.
Example: [heroku, mono]
when: &ci_is_travis "{{ ci == 'Travis' }}"
travis_apt_packages:
type: yaml
default: []
help: >
Do you need extra apt packages in Travis? Add them here as a YAML list.
Example: [docker, vim]
when: *ci_is_travis
dependency_installation_mode:
default: PIP
type: str
choices:
- OCA
- PIP
help: Choose how to install module dependencies.
when: *ci_is_travis
use_pyproject_toml:
default: "{% if odoo_version < 17.0 -%}no{% else %}yes{% endif %}"
type: bool
help: Use pyproject.toml instead of setup.py.
when: "{{ odoo_version >= 14.0 }}"
generate_requirements_txt:
default: yes
type: bool
help:
Generate requirements.txt from addons manifests and optional overrides in setup.py
files.
use_ruff:
default: "{% if odoo_version < 17.0 -%}no{% else %}yes{% endif %}"
type: bool
help: Use ruff and ruff-format instead of flake8, autoflake, pyupgrade, isort, black.
when: "{{ odoo_version >= 14.0 }}"
additional_ruff_rules:
type: yaml
default: []
help: List of additional ruff rules to enable.
when: "{{ use_ruff }}"
rebel_module_groups:
type: yaml
default: []
help: >
Are there in this repo modules that don't get along with their friends? If so, list
them here (YAML format) and they will be tested in separate jobs.
Beware, if rebel modules should stay separated in groups, you should join them with
commas, which could be misinterpreted by YAML.
Example: ["rebel_module_1,rebel_module_2", even_more_rebel_module]
include_wkhtmltopdf:
type: bool
default: no
help:
Do you need to install wkhtmltopdf? Usually only needed if you're going to test PDF
report generation.
enable_checklog_odoo:
type: bool
default: "{% if odoo_version < 18.0 -%}no{% else %}yes{% endif %}"
help: Do you want to make tests fail on warnings?
github_enforce_dev_status_compatibility:
type: bool
default: yes
help: GitHub action checks the minimum development status?
when: &ci_is_github "{{ ci == 'GitHub' }}"
github_check_license:
type: bool
default: yes
help: GitHub action checks the manifest license?
when: *ci_is_github
github_enable_codecov:
type: bool
default: yes
help: GitHub action runs codecov/codecov-action?
when: *ci_is_github
github_enable_makepot:
type: bool
default: yes
help: GitHub action updates .pot files?
when: *ci_is_github
github_enable_stale_action:
type: bool
default: yes
help: Create GitHub 'stale' action?
github_ci_extra_env:
type: yaml
default: {}
help: |
Any extra environment variables to inject into the CI tests
Example: {"KEY": "VALUE"}
when: *ci_is_github
convert_readme_fragments_to_markdown:
default: "{% if odoo_version < 17.0 -%}no{% else %}yes{% endif %}"
type: bool