diff --git a/migrations/db.js b/migrations/db.js index ae191313..586e384f 100644 --- a/migrations/db.js +++ b/migrations/db.js @@ -1,10 +1,17 @@ 'use strict'; +var fs = require('fs'); var pg = require('pg'); var async = require('async'); -// TODO: generalize -var conString = 'psql://lamassu:lamassu@localhost/lamassu'; +var conString; +try { + conString = process.env.DATABASE_URL || + JSON.parse(fs.readFileSync('/etc/lamassu.json')).postgresql; +} +catch (ex) { + conString = 'psql://lamassu:lamassu@localhost/lamassu'; +} exports.query = function query(sql, cb) { exports.multi([sql], cb); @@ -12,7 +19,11 @@ exports.query = function query(sql, cb) { exports.silentQuery = function query(sql, cb) { pg.connect(conString, function(err, client, done) { - if (err) return cb(err); + if (err) { + console.log(err.message); + return cb(err); + } + client.query(sql, function(err) { done(true); cb(err); @@ -22,7 +33,10 @@ exports.silentQuery = function query(sql, cb) { exports.multi = function multi(sqls, cb) { pg.connect(conString, function(err, client, done) { - if (err) return cb(err); + if (err) { + console.log(err.message); + return cb(err); + } async.eachSeries(sqls, client.query.bind(client), function(err) { done(true);