-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconfig.js
More file actions
56 lines (45 loc) · 1.56 KB
/
config.js
File metadata and controls
56 lines (45 loc) · 1.56 KB
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
const config = {
HOST: process.env.MAILGUNBOT_HOST || 'localhost',
PORT: process.env.MAILGUNBOT_PORT || 8888,
MAILGUNBOT_PATH: process.env.NODE_ENV === 'production'
? process.env.MAILGUNBOT_PATH
: 'localhost:8888',
RECEIVERS: process.env.NODE_ENV === 'production'
? [ 'coordination@sinfo.org', 'devteam@sinfo.org' ]
: [ 'francisco.pereira@sinfo.org' ],
LOGENTRIES_TOKEN: process.env.MAILGUNBOT_LOGENTRIES_TOKEN,
MAILGUN: {
API_KEY: process.env.MAILGUNBOT_MAILGUN_API_KEY,
DOMAIN: process.env.MAILGUNBOT_HOST || 'sinfo.org'
},
RECAPTCHA_SECRET_KEY: process.env.MAILGUNBOT_RECAPTCHA_SECRET_KEY,
CORS: process.env.NODE_ENV === 'production'
? [ 'https://partners.sinfo.org' ]
: ['*']
}
const logger = process.env.MAILGUNBOT_LOGENTRIES_TOKEN &&
config.MAILGUN.API_KEY &&
process.env.NODE_ENV === 'production'
? require('logger').getLogger(
process.env.MAILGUNBOT_LOGENTRIES_TOKEN,
config.MAILGUN.API_KEY,
'MAILGUNBOT'
)
: require('logger').getLogger()
module.exports = config
module.exports.validate = () => {
if (process.env.NODE_ENV === 'production') {
logger.warn('Running in production mode')
if (config.MAILGUNBOT_PATH === undefined) {
logger.error('Env var of MAILGUNBOT_PATH not defined')
process.exit(1)
}
if (config.LOGENTRIES_TOKEN === undefined) {
logger.warn('Production mode without logentries token given')
}
if (config.MAILGUN.API_KEY === undefined) {
logger.error('Env var of MAILGUNBOT_MAILGUN_API_KEY not defined')
process.exit(1)
}
}
}