import * as dotenv from 'dotenv' import assert from 'assert' const NODE_ENV = process.env.NODE_ENV || 'development' dotenv.config() let path switch (process.env.NODE_ENV) { case 'test': path = `${__dirname}/../../.env.development` break case 'production': path = `${__dirname}/../../.env.production` break default: path = `${__dirname}/../../.env.development` } dotenv.config({ path: path, debug: NODE_ENV === 'development' }) assert(process.env.API_TOKEN_SECRET_PRIVATE, 'API_TOKEN_SECRET_PRIVATE not set') assert(process.env.API_TOKEN_SECRET_PUBLIC, 'API_TOKEN_SECRET_PUBLIC not set') assert(process.env.API_TOKEN_EXPIRESIN, 'API_TOKEN_EXPIRESIN not set') const privateKey = ` -----BEGIN PRIVATE KEY----- ${process.env.API_TOKEN_SECRET_PRIVATE} -----END PRIVATE KEY----- ` const publicKey = ` -----BEGIN PUBLIC KEY----- ${process.env.API_TOKEN_SECRET_PUBLIC} -----END PUBLIC KEY----- ` let baseConfig = { api: { port: parseInt(process.env.API_PORT), host: process.env.API_HOST, token_secret_private: privateKey, token_secret_public: publicKey, token_expiresIn: process.env.API_TOKEN_EXPIRESIN, }, db_main: process.env.DB_MAIN, db_second: process.env.DB_SECOND, } export default baseConfig