Open gopal-augment opened 3 years ago
Hello,
I use dotenv-flow for NODE_ENV.
In package.json
"scripts": {
"up:prod": "set NODE_ENV=production&& node -r dotenv-flow/config bdd_up.js",
"up:dev": "set NODE_ENV=development&& node -r dotenv-flow/config bdd_up.js"
},
In bdd_up.js
var DBMigrate = require('db-migrate');
var assert = require('assert');
//getting an instance of dbmigrate
var dbmigrate = DBMigrate.getInstance(true);
//execute any of the API methods
dbmigrate.reset()
.then( () => dbmigrate.up() );
In database.json
{
"defaultEnv": {
"ENV": "NODE_ENV"
},
"development": {
"host": {
"ENV": "DB_HOST"
},
"user": {
"ENV": "DB_USERNAME"
},
"password": {
"ENV": "DB_PASSWORD"
},
"database": {
"ENV": "DB_DATABASE"
},
"driver": "mysql",
"multipleStatements": true
},
"production": {
"host": {
"ENV": "DB_HOST"
},
"user": {
"ENV": "DB_USERNAME"
},
"password": {
"ENV": "DB_PASSWORD"
},
"database": {
"ENV": "DB_DATABASE"
},
"driver": "mysql",
"multipleStatements": true
}
}
and i use two file .env.production and .env.development
I hope this will help you
I'm using PM2 to run the node server and set env from PM2 config file. When I run db-migration command, it doesn't get node ENV variables and its value. But I can console it in my application. Even in normal .env not working for db-migrate
My db-migrate json file
PM2 pm2.config.js
.env
First I ran the node server by pm2 start pm2.config.js --env local (when pm2 using) OR node app.js(when .env using) And run the db-migrate for migration, it throws an error as below
cmd: db-migrate up -e local
Error throws:
Please help me to resolve this.