-
Notifications
You must be signed in to change notification settings - Fork 14
/
.env.example
309 lines (249 loc) · 11.1 KB
/
.env.example
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
# ------------------------------
# Environment/Instance specifics
# ------------------------------
# (Optional) A human-readable label for the environment.
# For example `Local DEV` or `Staging Pilot A`
# Note: Also used in Mock-Service
ENV_NAME=DEV
# (Optional) The URL(can be a data-URI) of an icon to use as 'favicon' for the environment.
# Use a generator like: <https://shoonia.github.io/1x1/>
# Or covert using: <https://rodekruis.github.io/browser-tools/image-to-data-url/>
# Note: Also used in Mock-Service
ENV_ICON=
# (Required) Setting of the Node.js mode.
# Allowed values: `development`, `test`, `production`(=required for production)
# Note: Also used in Mock-Service
NODE_ENV=development
# (Optional) Name used in Docker Desktop (for use in local development only)
# Uncomment when starting from a clean slate only.
#COMPOSE_PROJECT_NAME=global-121-platform
# (Optional) Flag to indicate operating system in local development.
# Set to `:windows` if on windows, otherwise leave empty/undefined
WINDOWS_DEV_STARTUP_SUFFIX=
# ----------
# API set up
# ----------
# Specify port-number for the 121-service API.
# Example values: `8080` for production, use `3000` for local development.
# Note: Also used in Mock-Service
PORT_121_SERVICE=3000
# Specify port-number for the Mock-Service API.
# Example values: `8080` for production, use `3001` for local development.
# Note: Also used in Mock-Service
PORT_MOCK_SERVICE=3001
# External (public) URL of the API. (Should include a trailing slash!)
# For example: `https://instance-name.example.org/`
# Note: Also used in Mock-Service
EXTERNAL_121_SERVICE_URL=http://localhost:3000/
# API Access rate-limits.
# Provided values are set high for local development/testing.
# Generic throttling is applied to all requests.
GENERIC_THROTTLING_TTL=
GENERIC_THROTTLING_LIMIT=1000
# High throttling is applied to endpoints that should not be brute-forced like login.
HIGH_THROTTLING_TTL=
HIGH_THROTTLING_LIMIT=300
# --------
# Database
# --------
# Hostname of the database(-service). Use "121db" as the hostname for local development using Docker.
POSTGRES_HOST=121db
POSTGRES_PORT=5432
# Any value(s) can be used for local development. Use unique/secure values for production.
POSTGRES_USER=global121
POSTGRES_PASSWORD=global121
POSTGRES_DBNAME=global121
# --------
# Redis
# --------
# Redis connection details for queueing with Bull
# For development, use the name of the docker-container (e.g. `121-redis`)
# For production, use the connection to Azure Cache for Redis
REDIS_HOST=121-redis
# For local development, use `6379`, for remote connections use `6380`
REDIS_PORT=6379
# You can keep the password empty for local development
REDIS_PASSWORD=
# For local development you can set it to anything for production set it to a human readable string like the ENV_NAME
# Do not use special characters like spaces, quotes or semicolons
REDIS_PREFIX=dev_
# ---------------
# Data management
# ---------------
# To enable a full reset of the database via an API-endpoint a secret is required.
# Make sure to use a unique/long/secure secret. (i.e. 42+ (special)characters+numbers etc.)
RESET_SECRET=fill_in_secret
# Secret key used to sign/verify JWT-tokens of user-accounts.
# Make sure to use a unique/long/secure secret. (i.e. 42+ (special)characters+numbers etc.)
SECRETS_121_SERVICE_SECRET=121_service_secret
# -----------------
# Access management
# -----------------
# To enable single-sign-on via Azure Entra ID, use: `TRUE` to enable, leave empty or out to disable.
USE_SSO_AZURE_ENTRA=
# Azure Entra environment-specific IDs.
# Make sure to also set this value for the Portal.
AZURE_ENTRA_CLIENT_ID=
# ---------------------
# Default User-accounts
# ---------------------
# This will be the first user created with the ability to create other users.
# Make sure to use a unique/long/secure password. (i.e. 42+ (special)characters+numbers etc.)
# If you are developing locally, with USE_SSO_AZURE_ENTRA in interfaces/Portal/.env you could use the same email address as your microsoft account
# and than locally you can login with your microsoft account.
# Note: Also used in Mock-Service
USERCONFIG_121_SERVICE_PASSWORD_ADMIN=password
# Additional pre-set user-accounts:
# Can be left empty when using the API to create users.
# Some seed-scripts require these values to be set.
USERCONFIG_121_SERVICE_EMAIL_PROGRAM_ADMIN=program-admin@example.org
USERCONFIG_121_SERVICE_PASSWORD_PROGRAM_ADMIN=password
USERCONFIG_121_SERVICE_PASSWORD_USER_VIEW=password
USERCONFIG_121_SERVICE_PASSWORD_USER_KOBO=password
USERCONFIG_121_SERVICE_PASSWORD_CVA_MANAGER=password
USERCONFIG_121_SERVICE_PASSWORD_CVA_OFFICER=password
USERCONFIG_121_SERVICE_EMAIL_FINANCE_MANAGER=finance-manager@example.org
USERCONFIG_121_SERVICE_PASSWORD_FINANCE_MANAGER=password
USERCONFIG_121_SERVICE_EMAIL_FINANCE_OFFICER=finance-officer@example.org
USERCONFIG_121_SERVICE_PASSWORD_FINANCE_OFFICER=password
USERCONFIG_121_SERVICE_EMAIL_VIEW_WITHOUT_PII=view-no-pii@example.org
USERCONFIG_121_SERVICE_PASSWORD_VIEW_WITHOUT_PII=password
# --------------------------
# Scheduled(cron) Activities
# Usage: Set TRUE to enable, leave empty or out to disable.
# --------------------------
# (Optional) Get daily Exchange-rates
CRON_GET_DAILY_EXCHANGE_RATES=
# FSP-Specific: Intersolve-Voucher
# (All Require Admin-account credentials to be set!)
# (Optional) Check if IssueCard-calls failed and tries to cancel the cards
CRON_INTERSOLVE_VOUCHER_CANCEL_FAILED_CARDS=
# (Optional) Cache unused vouchers' ammounts
CRON_INTERSOLVE_VOUCHER_CACHE_UNUSED_VOUCHERS=
# (Optional) Send WhatsApp reminders
CRON_INTERSOLVE_VOUCHER_SEND_WHATSAPP_REMINDERS=
# FSP-Specific: Intersolve-VISA
# (All Require Admin-account credentials to be set!)
# (Optional) Update Visa wallets details
CRON_INTERSOLVE_VISA_UPDATE_WALLET_DETAILS=
# FSP-Specific: CBE
# (All Require Admin-account credentials to be set!)
# (Optional) Check CBE-accounts
CRON_CBE_ACCOUNT_ENQUIRIES_VALIDATION=
# --------------------------
# Interface(s) configuration
# --------------------------
# (Optional) Interface (redirect) URLs: (Should NOT include a trailing slash!)
# For example: `https://portal.instance-name.example.org`
REDIRECT_PORTAL_URL_HOST=
# ----------------------------------------
# Third-party: Testing / Local development
# ----------------------------------------
# For local development, use: `http://mock-service:3001/` (Should include a trailing slash!)
MOCK_SERVICE_URL=http://mock-service:3001/
# ---------------------------------------
# Third-party: Azure Application-Insights
# ---------------------------------------
# (Optional) This can be found on the "Overview / Essentials"-section of the Azure Application Insights resource in Azure portal.
APPLICATIONINSIGHTS_CONNECTION_STRING=
# (Optional) These separate variables are required (but will be phased out)
APPLICATION_INSIGHT_IKEY=
APPLICATION_INSIGHT_ENDPOINT=
# ----------------------------
# Third-party: Sending E-mails
# ----------------------------
# (Required) Azure E-mail Service URL
AZURE_EMAIL_API_URL=
# -------------------
# Third-party: Twilio
# -------------------
# See: https://www.twilio.com/docs/iam/test-credentials
# (Required) These 2 need to have a value, even when using MOCK_TWILIO=TRUE
TWILIO_SID=ACdevelopment
TWILIO_AUTHTOKEN=development-auth-token
# For local development, use: `15005550006`
TWILIO_WHATSAPP_NUMBER=15005550006
TWILIO_MESSAGING_SID=MG
# For development/debugging purposes, see: https://github.com/twilio/twilio-node#enable-debug-logging
# TWILIO_LOG_LEVEL=debug
# To use a mock version of the Twilio API, use: TRUE to enable, leave empty or out to disable.
MOCK_TWILIO=TRUE
# -------------------------
# Third-party: Kobo Connect
# -------------------------
# (Required) Converts Kobo/ODK-forms to a format that can be used by the platform. (Should NOT include a trailing slash!)
KOBO_CONNECT_API_URL=
# ---------------------------
# Third-party FSP: Intersolve
# ---------------------------
# Used for intersolve vouchers
# (Required) INTERSOLVE_USERNAME & INTERSOLVE_PASSWORD need to have a value, even when using MOCK_INTERSOLVE=TRUE
INTERSOLVE_AUTH_TOKEN=
INTERSOLVE_PRODUCT_CODE=
INTERSOLVE_PACKAGE_CODE=
INTERSOLVE_USERNAME=test-INTERSOLVE_USERNAME
INTERSOLVE_PASSWORD=test-INTERSOLVE_PASSWORD
INTERSOLVE_EAN=
INTERSOLVE_URL=
# Intersolve Visa
# Set INTERSOLVE_VISA_PROD to 1 to use the production environment, leave empty to use the test environment.
INTERSOLVE_VISA_PROD=
INTERSOLVE_VISA_OIDC_ISSUER=
INTERSOLVE_VISA_API_URL=
INTERSOLVE_VISA_CLIENT_ID=
INTERSOLVE_VISA_CLIENT_SECRET=
# Only needed for development:
# INTERSOLVE_VISA_BRAND_CODE needs to have a value, even when using MOCK_INTERSOLVE=TRUE
INTERSOLVE_VISA_BRAND_CODE=test-INTERSOLVE_VISA_BRAND_CODE
INTERSOLVE_VISA_COVERLETTER_CODE=TESTINTERSOLVEVISACOVERLETTERCODE # Only use capital letters or numbers, use pre-agreed code for Acceptance environment
# (Required in 121-service & Mock-Service) INTERSOLVE_VISA_ASSET_CODE needs to have a value, even when using MOCK_INTERSOLVE=TRUE
INTERSOLVE_VISA_ASSET_CODE=test-INTERSOLVE_VISA_ASSET_CODE
INTERSOLVE_VISA_FUNDINGTOKEN_CODE=test_INTERSOLVE_VISA_FUNDINGTOKEN_CODE # Use pre-agreed code for Acceptance environment
INTERSOLVE_VISA_TENANT_ID=
# This is the UUID that is used as namespace when generating the UUIDs(v5) for Intersolve Visa transfers
INTERSOLVE_VISA_UUID_NAMESPACE=
# Sync data automatically with third parties (now only used for Intersolve Visa)
# Use: `TRUE` to enable, leave empty or out to disable.
SYNC_WITH_THIRD_PARTIES=
# To use a mock version of the Intersolve API, use: `TRUE` to enable, leave empty or out to disable.
MOCK_INTERSOLVE=TRUE
# ----------------------
# Third-party FSP: SafariCom
# ----------------------
SAFARICOM_CONSUMER_KEY=
SAFARICOM_CONSUMER_SECRET=
SAFARICOM_API_URL=
SAFARICOM_B2C_PAYMENTREQUEST_ENDPOINT=
SAFARICOM_INITIATORNAME=
SAFARICOM_SECURITY_CREDENTIAL=
SAFARICOM_PARTY_A=
SAFARICOM_IDTYPE=
# To use a mock version of the Safaricom API, use: `TRUE` to enable, leave empty or out to disable.
MOCK_SAFARICOM=TRUE
# ----------------
# Third-party FSP: CBE
# ----------------
COMMERCIAL_BANK_ETHIOPIA_URL=
# To use a mock version of the COMMERCIAL BANK ETHIOPIA API, use: `TRUE` to enable, leave empty or out to disable.
MOCK_COMMERCIAL_BANK_ETHIOPIA=TRUE
# ---------------------------------------------------------------------
# END of ENV-configuration
# Make sure to store this file only temporary, or in a secure location!
# ---------------------------------------------------------------------
# ---------------
# Testing (Only)
# The variables below are/should be only used by the (E2E-)tests in the CI/CD pipeline.
# ---------------
# Playwright configuration
AZURE_DEV_URL=https://dev.azure.com/redcrossnl
AZURE_DEVOPS_TOKEN=
BASE_URL=http://localhost:8888
BASE_URL_PORTALICIOUS=http://localhost:8088
# KoboConnect API-sepecific credentials
E2E_TEST_KOBO_ASSET_ID=
E2E_TEST_KOBO_TOKEN=