-
Notifications
You must be signed in to change notification settings - Fork 3
/
sample.env
477 lines (411 loc) · 11.2 KB
/
sample.env
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
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
# This file is the minimal confuguration file used by Dotenv to define the
# environment variables on localhost.
#
# Instructions:
# 1. copy this file as `.env`
# 2. edit the `.env` file with working values
# 3. uncomment the lines to activate or configure associated features
#
# Sections (displayed in sorted alphabetic order):
# - Common
# - Release management
# - Deployment management
# - Slack integration
# - Run
# - Prismic
# - Security
# - Slack integration
# - Emailing quota
# - CDN management
# - Scalingo prod
# - Build
# - Review apps management
# - A11Y
# - Scalingo recette
#
# Line size max: 80 characters.
#
# ==================
# COMMON
# ==================
# ==================
# RELEASE MANAGEMENT
# ==================
# Git user name that will appear on release commits & operations.
#
# If not present, it will not be possible to deploy release on production.
#
# presence: required
# type: String
# default: none
GIT_USER_NAME=pix-bot
# Git user email that will appear on release commits & operations.
#
# If not present, it will not be possible to deploy release on production.
#
# presence: required
# type: String (e-mail)
# default: none
# GitHub user's personnal access token used to clone repositories.
#
# If not present, 1024pix organization's repositories could not be cloned.
#
# presence: required
# type: String
# default: none
GITHUB_PERSONAL_ACCESS_TOKEN=__CHANGE_ME__
# =====================
# DEPLOYMENT MANAGEMENT
# =====================
# GitHub organization's name (ex: 1024pix)
#
# If not present, Pix applications (Admin, API, App, Certif, Orga) could not be deployed
#
# presence: required
# type: String
# default: none
GITHUB_OWNER=__CHANGE_ME__
# GitHub mono-repository's name (ex: pix)
#
# If not present, Pix applications (Admin, API, App, Certif, Orga) could not be deployed
#
# presence: required
# type: String
# default: none
GITHUB_REPOSITORY=__CHANGE_ME__
# Pix applications to deploy
#
# If not present, application will not start
#
# presence: required
# type: String (pix apps names, separated by ',')
# default: none
PIX_APPS_TO_DEPLOY=__CHANGE_ME__
# Sentry API key used to finalize declared releases
#
# If not present, the end of the release process will fail.
# Implicite use by [sentry-cli](https://docs.sentry.io/product/cli/configuration/)
#
# presence: required
# type: String
# default: none
SENTRY_AUTH_TOKEN=__CHANGE_ME__
# =================
# SLACK INTEGRATION
# If not present, Slack features & interactions will fail.
#
# Cf. https://api.slack.com/apps
# =================
# Slack "Pix Bot" application request signing secret.
#
# presence: required
# type: String
# default: none
SLACK_SIGNING_SECRET=__CHANGE_ME__
# ======================
# RUN
# ======================
# Prismic webhook secret
#
# If not present, deployments triggered by Prismic webhook will failed
#
# presence: required
# type: String
# default: none
PRISMIC_SECRET=__CHANGE_ME__
# ========
# SECURITY
# ========
# Open API authorization token.
#
# If not present, open API endpoints will fail.
#
# presence: required
# type: String
# default: none
AUTHORIZATION_TOKEN=lorem-ipsum
# =================
# SLACK INTEGRATION
# If not present, Slack features & interactions will fail.
#
# Cf. https://api.slack.com/apps
# =================
# Slack "Pix Bot" bot token.
#
# presence: required
# type: String
# default: none
SLACK_BOT_TOKEN=__CHANGE_ME__
# Slack "Pix Bot" webhook URL
#
# presence: required
# type: Url
# default: none
SLACK_WEBHOOK_URL_FOR_REPORTING=__CHANGE_ME__
# Slack "Pix Bot" channel to send baleen blocked accesses
#
# Channel name without the # before
# presence: required
# type: string
# default: none
SLACK_BLOCKED_ACCESSES_CHANNEL=__CHANGE_ME__
# ======================
# CDN MANAGEMENT
# ======================
# Baleen Personal Access Token (PAT) to consume Baleen API
#
# presence: required
# type: String
# default: none
BALEEN_PERSONAL_ACCESS_TOKEN=__CHANGE_ME__
# Baleen namespaces,
# see: https://support.baleen.cloud/hc/fr/articles/360017482439-G%C3%A9n%C3%A9ral-Utiliser-les-APIs#h_01EPY0C72SF6GH9QHG577QYN5P
#
# presence: required
# type: JSON
# sample = {"app-name-1":"namespace-1", "app-name2": "namespace-2"}
# default: none
BALEEN_APP_NAMESPACES={"app-name-1":"namespace-1", "app-name2": "namespace-2"}
# Applications for which we want to add blocking rules
#
# presence: required
# type: array
# sample = ['namespace-1','namespace-2']
# default: none
BALEEN_PROTECTED_FRONT_APPS=["namespace-1","namespace-2"]
# ======================
# SCALINGO PROD
# ======================
# Scalingo user API token for production environment.
#
# If not present, deployment in production environment will failed
#
# presence: required
# type: String
# default: none
SCALINGO_TOKEN_PRODUCTION=__CHANGE_ME__
# Scalingo API endpoint
#
# If not present, deployment in production environment will failed
#
# presence: required
# type: String (URL)
# default: "https://api.osc-secnum-fr1.scalingo.com"
SCALINGO_API_URL_PRODUCTION=https://api.osc-secnum-fr1.scalingo.com
# ======================
# SCALINGO CONTAINERS AUTOSCALING SCHEDULED TASK
# ======================
# Enable web containers autoscaling tasks
#
# presence: optional
# type: text
# value: true to activate
# FT_AUTOSCALE_WEB
# Date time at which app web containers autoscaler must be upsized
#
# presence: optionnal
# type: String (RegExp)
# default: "* 0 8 * * *"
# SCHEDULE_AUTOSCALE_UP
# Date time at which app web containers autoscaler must be downsized
#
# presence: optionnal
# type: String (RegExp)
# default: "* 0 19 * * *"
# SCHEDULE_AUTOSCALE_DOWN
# Name of the application whose web containers have to be autoscaled
# If not present, the application will crash
#
# presence: required when autoscaling enabled
# type: text
# default: none
#SCHEDULE_AUTOSCALE_APP_NAME
# Application that has to be autoscaled name's region
# If not present, the application will crash
#
# presence: required when autoscaling enabled
# type: text
# default: none
# SCHEDULE_AUTOSCALE_REGION
# Minimum number of web containers with which start upsize autoscaling
# If not present, the application will crash
#
# presence: required when autoscaling enabled
# type: number
# default: none
# SCHEDULE_AUTOSCALE_UP_SETTINGS_MIN
# Maximum number of web containers limit to upsize autoscaling
# If not present, the application will crash
#
# presence: required when autoscaling enabled
# type: number
# default: none
# SCHEDULE_AUTOSCALE_UP_SETTINGS_MAX
# Minimum number of web containers with which start donwsize autoscaling
# If not present, the application will crash
#
# presence: required when autoscaling enabled
# type: number
# default: none
# SCHEDULE_AUTOSCALE_DOWN_SETTINGS_MIN
# Maximum number of web containers limit to downsize autoscaling
# If not present, the application will crash
#
# presence: required when autoscaling enabled
# type: number
# default: none
# SCHEDULE_AUTOSCALE_DOWN_SETTINGS_MAX
# Mapping between the name of a repository and the Scalingo apps associated with it.
#
# This is necessary if you want to deploy applications as soon as a release is created on GitHub.
# presence: optional
# REPO_APP_NAMES_MAPPING={ 'pix-site': ['pix-site-production', 'pix-pro-production'] }
# ======================
# BUILD
# ======================
# ======================
# REVIEW APPS MANAGEMENT
# ======================
# Scalingo API endpoint for review apps
#
# If not present, application will not start (error during bootstrap).
#
# presence: required
# type: String (URL)
# default: "https://api.osc-fr1.scalingo.com"
SCALINGO_API_URL_REVIEW_APPS=https://api.osc-fr1.scalingo.com
# Scalingo user API token for review apps.
#
# If not present, application will not start (error during bootstrap).
#
# presence: required
# type: String
# default: none
SCALINGO_TOKEN_REVIEW_APPS=__CHANGE_ME__
# Date time at which Scalingo running review apps must be stopped.
#
# presence: optionnal
# type: String (RegExp)
# default: "0 0 19 * * 1-5"
# REVIEW_APP_STOP_SCHEDULE=0 0 19 * * 1-5
# Date time at which Scalingo sleeping review apps must be restarted.
#
# presence: optionnal
# type: String (RegExp)
# default: "0 0 8 * * 1-5"
#REVIEW_APP_START_SCHEDULE=0 0 8 * * 1-5
# List of review apps that must not be managed.
#
# If not present, all the review apps will be stopped and restrated.
#
# presence: optionnal
# type: String (review apps names, separated by ',')
# default: none
#IGNORED_REVIEW_APPS=pix-api-review-pr925,pix-front-review-pr925,pix-api-review-pr994,pix-front-review-pr994
# ======================
# A11Y
# ======================
# Google API Key for Sheet API
#
# presence: required
# type: String
# default: none
GOOGLE_SHEET_API_KEY=__CHANGE_ME__
# Google Sheet for A11Y
#
# presence: required
# type: String
# default: none
GOOGLE_SHEET_A11Y=__CHANGE_ME__
# ======================
# SCALINGO RECETTE
# ======================
# Scalingo user API token for recette environment.
#
# If not present, deployment in recette environment will failed
#
# presence: required
# type: String
# default: none
SCALINGO_TOKEN_RECETTE=__CHANGE_ME__
# Scalingo API endpoint
#
# If not present, deployment in recette environment will failed
#
# presence: required
# type: String (URL)
# default: "https://api.osc-fr1.scalingo.com"
SCALINGO_API_URL_RECETTE=https://api.osc-fr1.scalingo.com
# ======================
# SCALINGO INTEGRATION
# ======================
# Scalingo user API token for integration environment.
#
# If not present, app-status for integration environment will failed
#
# presence: optional
# type: String
# default: none
SCALINGO_TOKEN_INTEGRATION=__CHANGE_ME__
# Scalingo API endpoint
#
# If not present, app-status for integration environment will failed
#
# presence: optional
# type: String (URL)
# default: "https://api.osc-fr1.scalingo.com"
SCALINGO_API_URL_INTEGRATION=https://api.osc-fr1.scalingo.com
# ======================
# LOGGING
# ======================
# Maximum log length
#
# Truncate all logs to ensure it can be processed correctly in log ingester
#
# presence: optional
# type: integer
# default: 1000
# MAX_LOG_LENGTH=100
# Enable or disable the logging in automated tests
# Enable it while debugging failing tests
#
# presence: optional
# type: Boolean
# default: `false`
# TEST_LOG_ENABLED=true
# ======================
# GITHUB
# ======================
# Webhook secret
#
# Secret used by github to notify pix-bot
#
# presence: mandatory
# type: text
# default: none
# sample : GITHUB_WEBHOOK_SECRET=mnCOwQSifUAB5KGqq2EuGXDkscIZozWlPbwY8DezArjPe
GITHUB_WEBHOOK_SECRET=__CHANGE_ME__
# ======================
# DATADOG
# ======================
# Datadog webhook secret
#
# Secret used by datadog to notify pix-bot
#
# presence: mandatory
# type: text
# default: none
# sample : DATADOG_TOKEN=mnCOwQSifUAB5KGqq2EuGXDkscIZozWlPbwY8DezArjPe
DATADOG_TOKEN=__CHANGE_ME__
# DATABASE Configuration
DATABASE_URL=postgres://postgres:@localhost:5477/pix_bot
TEST_DATABASE_URL=postgres://postgres:@localhost:5477/pix_bot_test
# GitHub Actions Automerge file name
GITHUB_AUTOMERGE_WORKFLOW_ID=
# GitHub Actions Automerge repo name
GITHUB_AUTOMERGE_REPO_NAME=
# GitHub Actions Ref to use (branch, tag or SHA1) ex: v0
GITHUB_AUTOMERGE_WORKFLOW_REF,
# Repositories with merge queue ex: 1024pix/pix,1024pix/pix-bot
GITHUB_AUTOMERGE_ALLOW_REPOSITORIES