-
Notifications
You must be signed in to change notification settings - Fork 17
/
app.json
316 lines (316 loc) · 9.79 KB
/
app.json
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
{
"addons": [
"heroku-postgresql:hobby-dev",
"newrelic:wayne",
"rediscloud:30"
],
"buildpacks": [
{
"url": "https://github.com/heroku/heroku-buildpack-nodejs"
},
{
"url": "https://github.com/heroku/heroku-buildpack-python"
},
{
"url": "https://github.com/heroku/heroku-buildpack-pgbouncer"
},
{
"url": "https://github.com/heroku/heroku-buildpack-nginx"
}
],
"description": "Web Portal for MicroMasters",
"env": {
"ADWORDS_CONVERSION_ID": {
"description": "Id for adwords conversion.",
"required": false
},
"ALLOWED_HOSTS": {
"default": "['*']",
"description": "Array of allowed hostnames"
},
"AWS_ACCESS_KEY_ID": {
"description": "AWS Access Key for S3 storage."
},
"AWS_S3_FILE_OVERWRITE": {
"description": "Allow S3 storage to overwrite files.",
"value": "False"
},
"AWS_SECRET_ACCESS_KEY": {
"description": "AWS Secret Key for S3 storage."
},
"AWS_STORAGE_BUCKET_NAME": {
"description": "S3 Bucket name."
},
"CYBERSOURCE_ACCESS_KEY": {
"description": "CyberSource Access Key"
},
"CYBERSOURCE_PROFILE_ID": {
"description": "CyberSource Profile ID"
},
"CYBERSOURCE_REFERENCE_PREFIX": {
"description": "a string prefix to identify the application in CyberSource transactions"
},
"CYBERSOURCE_SECURE_ACCEPTANCE_URL": {
"description": "CyberSource API endpoint"
},
"CYBERSOURCE_SECURITY_KEY": {
"description": "CyberSource API key"
},
"EDX_BATCH_UPDATES_ENABLED": {
"description": "Enables or disables edx batch updates (default: true)",
"required": false
},
"EDXORG_BASE_URL": {
"description": "The base URL of the edX instance to use for logging in.",
"required": true
},
"EDXORG_CALLBACK_URL": {
"description": "The callback URL from which edX instance will be calling Micromasters when logging in.",
"required": true
},
"MITXONLINE_BASE_URL": {
"description": "The base URL of the mitxonline instance to use for logging in.",
"required": true
},
"MITXONLINE_CALLBACK_URL": {
"description": "The callback URL from which mitxonline instance will be calling Micromasters when logging in.",
"required": true
},
"EDXORG_CLIENT_ID": {
"description": "The OAuth client ID configured in the edX instance.",
"required": true
},
"EDXORG_CLIENT_SECRET": {
"description": "The OAuth client secret configured in the edX instance.",
"required": true
},
"MITXONLINE_CLIENT_ID": {
"description": "The OAuth client ID configured in the mitxonline instance.",
"required": true
},
"MITXONLINE_CLIENT_SECRET": {
"description": "The OAuth client secret configured in the mitxonline instance.",
"required": true
},
"OPENSEARCH_HTTP_AUTH": {
"description": "Basic auth settings for connecting to Opensearch",
"required": false
},
"OPENSEARCH_SHARD_COUNT": {
"description": "Configurable shard cound for Opensearch",
"required": false
},
"OPENSEARCH_INDEXING_CHUNK_SIZE": {
"description": "Chunk size to use for Opensearch indexing tasks",
"required": false
},
"OPENSEARCH_INDEX": {
"description": "Index to use on Opensearch",
"required": false
},
"OPENSEARCH_URL": {
"description": "URL for connecting to Opensearch cluster",
"required": false
},
"FEATURE_OPEN_DISCUSSIONS_USER_SYNC": {
"description": "Enables creation and syncing of open-discussions user data",
"required": false
},
"GOOGLE_API_KEY": {
"description": "API key for accessing Google services",
"required": true
},
"HEROKU_APP_NAME": {
"description": "Value provided by Heroku containing the app name (eg micromasters-ci)",
"required": true
},
"HEROKU_PARENT_APP_NAME": {
"description": "Value provided by Heroku containing the parent app name (eg micromasters-ci for a PR build)",
"required": true
},
"HUBSPOT_PORTAL_ID": {
"description": "Hub spot portal id.",
"required": false
},
"HUBSPOT_ORGANIZATIONS_FORM_GUID": {
"description": "Hubspot guid for Organizations contact form on /organizations/ page.",
"required": false
},
"MAILGUN_KEY": {
"description": "The token for authenticating against the Mailgun API"
},
"MAILGUN_URL": {
"description": "The URL used to connect with Mailgun"
},
"MICROMASTERS_ADMIN_EMAIL": {
"description": "E-mail to send 500 reports to.",
"required": false
},
"MICROMASTERS_BASE_URL": {
"description": "Base url for the application in the format PROTOCOL://HOSTNAME[:PORT]",
"required": true
},
"MICROMASTERS_CORS_ORIGIN_WHITELIST": {
"description": "List of origins to allow CORS requests from (e.g. ['otherhost.com', 'myhost.edu'])",
"required": false
},
"MICROMASTERS_DB_CONN_MAX_AGE": {
"required": true,
"value": "0"
},
"MICROMASTERS_DB_DISABLE_SS_CURSORS": {
"description": "Disable server-side cursors to avoid issues with pgbouncer",
"required": false
},
"MICROMASTERS_DB_DISABLE_SSL": {
"required": true,
"value": "true"
},
"MICROMASTERS_EMAIL_HOST": {
"description": "Outgoing e-mail settings",
"required": false
},
"MICROMASTERS_EMAIL_PASSWORD": {
"description": "Outgoing e-mail settings",
"required": false
},
"MICROMASTERS_EMAIL_PORT": {
"description": "Outgoing e-mail settings",
"required": false,
"value": "587"
},
"MICROMASTERS_EMAIL_TLS": {
"description": "Outgoing e-mail settings",
"required": false,
"value": "True"
},
"MICROMASTERS_EMAIL_USER": {
"description": "Outgoing e-mail settings",
"required": false
},
"MICROMASTERS_ENVIRONMENT": {
"description": "The execution environment that the app is in (e.g. dev, staging, prod)"
},
"MICROMASTERS_FROM_EMAIL": {
"value": "MITx MicroMasters <[email protected]>"
},
"MICROMASTERS_LOG_LEVEL": {
"description": "The logging level for the application",
"required": true,
"value": "INFO"
},
"MICROMASTERS_SECURE_SSL_REDIRECT": {
"description": "Application-level SSL redirect setting.",
"required": false,
"value": "True"
},
"MICROMASTERS_SITE_ID": {
"description": "The default site id for django sites framework",
"required": false
},
"MICROMASTERS_USE_S3": {
"description": "Use S3 for storage backend (required on Heroku)",
"value": "True"
},
"NEW_RELIC_APP_NAME": {
"default": "MicroMasters",
"description": "Application identifier in New Relic."
},
"NODE_MODULES_CACHE": {
"description": "If false, disables the node_modules cache to fix yarn install",
"value": "false"
},
"OAUTH_MAINTENANCE_MODE": {
"description": "If true, on login redirects to a static page with message",
"value": "False",
"required": false
},
"OPEN_DISCUSSIONS_API_USERNAME": {
"description": "The username to use for authentication Open Discussions",
"required": false
},
"OPEN_DISCUSSIONS_BASE_URL": {
"description": "The base url for Open Discussions",
"required": false
},
"OPEN_DISCUSSIONS_COOKIE_NAME": {
"description": "The name of the cookie to set the JWT token on"
},
"OPEN_DISCUSSIONS_COOKIE_DOMAIN": {
"description": "The domain to set the JWT token cookie on",
"required": false
},
"OPEN_DISCUSSIONS_JWT_EXPIRES_DELTA": {
"description": "How long the JWT cookie should live before expiration",
"required": false
},
"OPEN_DISCUSSIONS_JWT_SECRET": {
"description": "The JWT secret to be shared between MicroMasters and Open Discussions",
"required": false
},
"OPEN_DISCUSSIONS_REDIRECT_URL": {
"description": "The URL to redirect the uer to for the discussions site",
"required": false
},
"OPEN_DISCUSSIONS_SITE_KEY": {
"description": "The site key to use for discussions JWT tokens"
},
"OPEN_EXCHANGE_RATES_APP_ID": {
"description": "The app ID for the open exchange rates API"
},
"OPEN_EXCHANGE_RATES_URL": {
"value": "https://openexchangerates.org/api/"
},
"PARAMIKO_LOG_LEVEL": {
"description": "The log level for the paramiko logger",
"required": false
},
"PGBOUNCER_DEFAULT_POOL_SIZE": {
"value": "50"
},
"PGBOUNCER_MIN_POOL_SIZE": {
"value": "5"
},
"REDIS_MAX_CONNECTIONS": {
"description": "Max number of redis connections per worker",
"required": false
},
"ROBOTS_CACHE_TIMEOUT": {
"description": "How long the robots.txt file should be cached",
"required": false
},
"SECRET_KEY": {
"description": "Django secret key.",
"generator": "secret"
},
"SENTRY_DSN": {
"description": "The connection settings for Sentry"
},
"SESSION_ENGINE": {
"description": "Django session engine",
"required": false
},
"STATUS_TOKEN": {
"description": "Token to access the status API.",
"required": true
},
"UPDATE_EDX_DATA_FOR_DEDP_PROGRAM_USERS": {
"description": "Automatic edx data (enrollments, grades and certificates) for user enrolled in DEDP programs",
"required": false
}
},
"keywords": [
"Django",
"Python",
"MIT",
"Office of Digital Learning"
],
"name": "micromasters",
"stack": "heroku-20",
"repository": "https://github.com/mitodl/micromasters",
"scripts": {
"postdeploy": "./manage.py migrate --noinput"
},
"success_url": "/",
"website": "https://github.com/mitodl/micromasters"
}