From 005503a99506dcae17fe5a6d746f2ed1566859d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20Salgado?= Date: Wed, 1 Sep 2021 17:23:44 +0100 Subject: [PATCH] feat: add database selector env variable --- .env | 1 + lib/options-loader.js | 16 +++++++++------- test/stress/test-server.js | 2 +- 3 files changed, 11 insertions(+), 8 deletions(-) create mode 100644 .env diff --git a/.env b/.env new file mode 100644 index 00000000..db93e716 --- /dev/null +++ b/.env @@ -0,0 +1 @@ +LAMASSU_DB=DEV \ No newline at end of file diff --git a/lib/options-loader.js b/lib/options-loader.js index 37605be5..8f4ded41 100644 --- a/lib/options-loader.js +++ b/lib/options-loader.js @@ -2,8 +2,14 @@ const fs = require('fs') const path = require('path') const os = require('os') const argv = require('minimist')(process.argv.slice(2)) +const _ = require('lodash/fp') +const dotenv = require('dotenv').config() -const STRESS_TEST_DB = 'psql://postgres:postgres123@localhost/lamassu_stress' +const dbMapping = psqlConf => ({ + STRESS_TEST: _.replace('lamassu', 'lamassu_stress', psqlConf), + RELEASE: _.replace('lamassu', 'lamassu_release', psqlConf), + DEV: _.replace('lamassu', 'lamassu', psqlConf) +}) /** * @return {{path: string, opts: any}} @@ -32,9 +38,7 @@ function load () { opts: JSON.parse(fs.readFileSync(globalConfigPath)) } - if (argv.testDB) { - config.opts.postgresql = STRESS_TEST_DB - } + config.opts.postgresql = dbMapping(config.opts.postgresql)[process.env.LAMASSU_DB] return config } catch (_) { @@ -45,9 +49,7 @@ function load () { opts: JSON.parse(fs.readFileSync(homeConfigPath)) } - if (argv.testDB) { - config.opts.postgresql = STRESS_TEST_DB - } + config.opts.postgresql = dbMapping(config.opts.postgresql)[process.env.LAMASSU_DB] return config } catch (_) { diff --git a/test/stress/test-server.js b/test/stress/test-server.js index 56a7811e..8d9b1f5b 100644 --- a/test/stress/test-server.js +++ b/test/stress/test-server.js @@ -3,5 +3,5 @@ const cmd = require('./scripts') process.on('message', async (msg) => { console.log('Message from parent:', msg) - await cmd.execCommand(`node --prof ../../bin/lamassu-server --mockSms --testDB`) + await cmd.execCommand(`node --prof LAMASSU_DB=STRESS_TEST ../../bin/lamassu-server --mockSms`) })