-
Notifications
You must be signed in to change notification settings - Fork 0
/
copier.yml
221 lines (189 loc) · 5.37 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
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
# Configure jinja2 defaults to make syntax highlighters lives easier
_templates_suffix: .jinja
_subdirectory: src
# Other Copier configurations
_min_copier_version: "9"
_exclude:
- _macros
- /.git
- /.gitmodules
- /**.pyc
- /**.pyo
- /copier.yml
- /COPYING
- /tasks_downstream.py
- /**/.empty
- /tasks_downstream.py
_skip_if_exists:
- odoo/custom/dependencies/*.txt
- odoo/custom/src/addons.yaml
- odoo/custom/src/private/*/
- odoo/custom/src/repos.yaml
- odoo/custom/ssh/*
- "!odoo/custom/ssh/known_hosts"
_tasks:
- invoke develop
- invoke after-copier-update
# Questions for the user
odoo_version:
help: On which odoo version is it based?
type: float
default: 17.0
choices:
- 7.0
- 8.0
- 9.0
- 10.0
- 11.0
- 12.0
- 13.0
- 14.0
- 15.0
- 16.0
- 17.0
- 18.0
odoo_admin_password:
secret: false
default: example-admin-password
type: str
help: >-
What Odoo admin password do you want to use? This is only used in development.
❗ Do NOT use any production details as these are stored within the project, unencrypted.
project_customer:
type: str
help: >-
Tell me who the customer is.
project_author:
type: str
help: >-
Tell me who you are.
If private modules do not include this author, pylint will warn you.
default: Glo Networks
project_name:
type: str
help: >-
What's your project name?
Do not use dots or spaces in the name; just "A-Za-z0-9-_" please in the format
<name>-odoo.
default: "{{ project_customer|lower|replace(' ','-') }}-odoo"
project_license:
help: >-
It's important to use a good license for your project.
In https://choosealicense.com/ you can read details about most common FOSS ones. In
https://www.odoo.com/documentation/user/14.0/legal/licenses/licenses.html you can
find other propietary licenses we support in this scaffolding. Make a wise choice!
So, what's your project's license?
default: no_license
choices:
No license: no_license
Apache License 2.0: Apache-2.0
Boost Software License 1.0: BSL-1.0
GNU Affero General Public License (AGPL) 3.0 or later: AGPL-3.0-or-later
GNU Library or "Lesser" General Public License (LGPL) 3.0 or later: LGPL-3.0-or-later
MIT license: MIT
Odoo Enterprise Edition License v1.0: OEEL-1.0
Odoo Proprietary License v1.0: OPL-1.0
odoo_oci_image:
type: str
help: >-
If you are using an OCI/Docker image registry (such as the Docker Hub, Quay or
Gitlab registry) to publish the Odoo images that will be built with this Doodba
project, specify here the path to the odoo image built with it. Leave it empty if
you are not using a registry.
Example: glodouk/myproject-odoo
default: "glodouk/{{ project_name | lower }}"
postgres_version:
default: "16"
help: >-
Which PostgreSQL version do you want to use? This should match production.
choices:
"14": "14"
"15": "15"
"16": "16"
"17": "17"
postgres_image:
type: str
default: "ghcr.io/glodouk/cnpg-postgres:{{ postgres_version }}"
help: >-
Image to use. When you are unsure, leave this as default.
Format: "image:tag"
postgres_username:
type: str
default: odoo
help: >-
Which user name will be used to connect to the postgres server?
postgres_dbname:
type: str
default: "{{ project_customer|lower|replace(' ','-') }}"
help: >-
💡 If database names differ among environments, operations like restoring a database
from an alien environment will be harder to maintain, but can provide additional
security. It's up to you. We default to "customername" for historical reasons.
What is going to be the main database name?
postgres_password:
secret: true
default: odoo
type: str
help: >-
What will be your postgres user password?
wdb:
type: bool
default: false
help: >-
Enable wdb for this project?
This is deprecated, please use the built in debugpy where possible.
github_actions:
type: bool
default: true
help: >-
Create GitHub Actions for running tests and building images?
github_actions_build:
type: bool
help: >-
Create GitHub Actions for building images?
default: >-
["{{ odoo_version }}"]
when: &github_actions "{{ github_actions == true }}"
github_actions_build_branches:
type: yaml
multiline: true
help: >-
Create GitHub actions for building docker images on the following branches?
default: >-
["{{ odoo_version }}"]
when: *github_actions
github_actions_build_on_push:
type: bool
help: >-
Build and push docker images on push to branches?
default: true
when: *github_actions
github_actions_build_on_schedule:
type: bool
help: >-
Build and push docker images on a schedule? (Note: only works on main branch)
default: false
when: *github_actions
github_actions_build_on_schedule_cron:
type: str
help: >-
Cron for building on schedule. Defaults to 17:30 Friday
default: "30 17 * * 5"
when: "{{ github_actions_build_on_schedule == true }}"
github_actions_ci_branches:
type: yaml
multiline: true
help: >-
Create GitHub actions for checking pre-commit and running tests on the following
branches?
default: >-
["{{ odoo_version }}"]
when: *github_actions
pre_commit_extra_excludes:
type: yaml
multiline: true
help: >-
Extra pre-commit excludes.
This is commonly useful for modules from the app store.
default: >-
[]