const convict = require('convict'); const conf = convict({ s3_bucket: { format: String, default: '', env: 'S3_BUCKET' }, redis_host: { format: String, default: 'localhost', env: 'REDIS_HOST' }, listen_port: { format: 'port', default: 1443, arg: 'port', env: 'PORT' }, analytics_id: { format: String, default: '', env: 'GOOGLE_ANALYTICS_ID' }, sentry_id: { format: String, default: '', env: 'SENTRY_CLIENT' }, sentry_dsn: { format: String, default: '', env: 'SENTRY_DSN' }, env: { format: ['production', 'development', 'test'], default: 'development', env: 'NODE_ENV' }, max_file_size: { format: Number, default: 1024 * 1024 * 1024 * 2, env: 'MAX_FILE_SIZE' }, expire_seconds: { format: Number, default: 86400, env: 'EXPIRE_SECONDS' }, l10n_dev: { format: Boolean, default: false, env: 'L10N_DEV' } }); // Perform validation conf.validate({ allowed: 'strict' }); const props = conf.getProperties(); module.exports = props;