refactor db connection string
This commit is contained in:
parent
944de6fab0
commit
91e0fed95d
9 changed files with 47 additions and 82 deletions
|
|
@ -1,14 +1,8 @@
|
|||
#!/usr/bin/env node
|
||||
|
||||
var fs = require('fs')
|
||||
var pgp = require('pg-promise')()
|
||||
var psqlUrl = require('../lib/options').postgres
|
||||
|
||||
var psqlUrl
|
||||
try {
|
||||
psqlUrl = process.env.DATABASE_URL || JSON.parse(fs.readFileSync('/etc/lamassu.json')).postgresql
|
||||
} catch (ex) {
|
||||
psqlUrl = 'psql://lamassu:lamassu@localhost/lamassu'
|
||||
}
|
||||
var db = pgp(psqlUrl)
|
||||
|
||||
db.manyOrNone(`select * from transactions where incoming=false
|
||||
|
|
|
|||
|
|
@ -3,34 +3,23 @@
|
|||
'use strict'
|
||||
|
||||
var fs = require('fs')
|
||||
const os = require('os')
|
||||
var path = require('path')
|
||||
var createServer = require('../lib/app.js')
|
||||
var argv = require('minimist')(process.argv.slice(2))
|
||||
|
||||
var options
|
||||
|
||||
try {
|
||||
options = JSON.parse(fs.readFileSync('/etc/lamassu.json'))
|
||||
} catch (err) {
|
||||
try {
|
||||
const homePath = path.resolve(os.homedir(), '.lamassu', 'lamassu.json')
|
||||
options = JSON.parse(fs.readFileSync(homePath))
|
||||
} catch (err2) {
|
||||
console.log('Missing configuration file -- exiting.')
|
||||
process.exit(1)
|
||||
}
|
||||
}
|
||||
|
||||
process.env.DATABASE_URL = options.postgresql
|
||||
var options = require('../lib/options')
|
||||
|
||||
var port = process.env.PORT || 3000
|
||||
var httpOnly = options.httpOnly || argv.http
|
||||
|
||||
if (!httpOnly) {
|
||||
options.https = {
|
||||
key: fs.readFileSync(options.certKeyPath),
|
||||
cert: fs.readFileSync(options.certPath)
|
||||
try {
|
||||
options.https = {
|
||||
key: fs.readFileSync(options.certKeyPath),
|
||||
cert: fs.readFileSync(options.certPath)
|
||||
}
|
||||
} catch (err) {
|
||||
console.log('Please configure your certificate.')
|
||||
console.log(err)
|
||||
process.exit(1)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
20
bin/ssu
20
bin/ssu
|
|
@ -8,7 +8,7 @@ var argv = process.argv.slice(2)
|
|||
var pgp = require('pg-promise')()
|
||||
var inquirer = require('inquirer')
|
||||
var R = require('ramda')
|
||||
var fs = require('fs')
|
||||
var psqlUrl = require('../lib/options').postgres
|
||||
|
||||
var cmd = argv[0]
|
||||
|
||||
|
|
@ -130,12 +130,6 @@ function reboot () {
|
|||
}
|
||||
|
||||
function cryptoActivate (code, on) {
|
||||
var psqlUrl
|
||||
try {
|
||||
psqlUrl = process.env.DATABASE_URL || JSON.parse(fs.readFileSync('/etc/lamassu.json')).postgresql
|
||||
} catch (ex) {
|
||||
psqlUrl = 'psql://lamassu:lamassu@localhost/lamassu'
|
||||
}
|
||||
var db = pgp(psqlUrl)
|
||||
|
||||
return db.one('select data from user_config where type=$1', 'exchanges')
|
||||
|
|
@ -180,12 +174,6 @@ function crypto () {
|
|||
|
||||
code = code.toUpperCase()
|
||||
|
||||
var psqlUrl
|
||||
try {
|
||||
psqlUrl = process.env.DATABASE_URL || JSON.parse(fs.readFileSync('/etc/lamassu.json')).postgresql
|
||||
} catch (ex) {
|
||||
psqlUrl = 'psql://lamassu:lamassu@localhost/lamassu'
|
||||
}
|
||||
var db = pgp(psqlUrl)
|
||||
|
||||
return db.one('select data from user_config where type=$1', 'exchanges')
|
||||
|
|
@ -211,12 +199,6 @@ function crypto () {
|
|||
}
|
||||
|
||||
function connect () {
|
||||
var psqlUrl
|
||||
try {
|
||||
psqlUrl = process.env.DATABASE_URL || JSON.parse(fs.readFileSync('/etc/lamassu.json')).postgresql
|
||||
} catch (ex) {
|
||||
psqlUrl = 'psql://lamassu:lamassu@localhost/lamassu'
|
||||
}
|
||||
return pgp(psqlUrl)
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@ var _ = require('lodash');
|
|||
var pg = require('pg');
|
||||
var uuid = require('node-uuid');
|
||||
var async = require('async');
|
||||
var psqlUrl = require('../lib/options').postgres
|
||||
|
||||
var raqiaPath = path.join(__dirname, '..', 'raqia.json');
|
||||
|
||||
|
|
@ -33,13 +34,6 @@ try {
|
|||
process.exit(2);
|
||||
}
|
||||
|
||||
var psqlUrl;
|
||||
try {
|
||||
psqlUrl = process.env.DATABASE_URL || JSON.parse(fs.readFileSync('/etc/lamassu.json')).postgresql;
|
||||
} catch (ex) {
|
||||
psqlUrl = 'psql://lamassu:lamassu@localhost/lamassu';
|
||||
}
|
||||
|
||||
var client = new pg.Client(psqlUrl);
|
||||
client.connect(function(err) {
|
||||
if (err) return console.log(err);
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
require('es6-promise').polyfill()
|
||||
|
||||
var fs = require('fs')
|
||||
var notifier = require('../lib/notifier')
|
||||
var db = require('../lib/postgresql_interface')
|
||||
var psqlUrl = require('../lib/options').postgres
|
||||
|
||||
function getBalances () {
|
||||
return [
|
||||
|
|
@ -11,13 +11,6 @@ function getBalances () {
|
|||
]
|
||||
}
|
||||
|
||||
var psqlUrl
|
||||
try {
|
||||
psqlUrl = process.env.DATABASE_URL || JSON.parse(fs.readFileSync('/etc/lamassu.json')).postgresql
|
||||
} catch (ex) {
|
||||
psqlUrl = 'psql://lamassu:lamassu@localhost/lamassu'
|
||||
}
|
||||
|
||||
db.init(psqlUrl)
|
||||
notifier.init(db, getBalances, {lowBalanceThreshold: 10})
|
||||
console.log('DEBUG0')
|
||||
|
|
|
|||
|
|
@ -1,13 +1,7 @@
|
|||
var fs = require('fs')
|
||||
var pgp = require('pg-promise')()
|
||||
var psqlUrl = require('../lib/options').postgres
|
||||
|
||||
function connect () {
|
||||
var psqlUrl
|
||||
try {
|
||||
psqlUrl = process.env.DATABASE_URL || JSON.parse(fs.readFileSync('/etc/lamassu.json')).postgresql
|
||||
} catch (ex) {
|
||||
psqlUrl = 'psql://lamassu:lamassu@localhost/lamassu'
|
||||
}
|
||||
return pgp(psqlUrl)
|
||||
}
|
||||
exports.connect = connect
|
||||
|
|
|
|||
29
lib/options.js
Normal file
29
lib/options.js
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
'use strict'
|
||||
|
||||
var fs = require('fs')
|
||||
var path = require('path')
|
||||
var os = require('os')
|
||||
|
||||
var options
|
||||
var configPath
|
||||
|
||||
try {
|
||||
configPath = '/etc/lamassu.json'
|
||||
options = JSON.parse(fs.readFileSync(configPath))
|
||||
} catch (err) {
|
||||
try {
|
||||
configPath = path.resolve(os.homedir(), '.lamassu', 'lamassu.json')
|
||||
options = JSON.parse(fs.readFileSync(configPath))
|
||||
} catch (err2) {
|
||||
console.log('Missing configuration file -- exiting.')
|
||||
process.exit(1)
|
||||
}
|
||||
}
|
||||
|
||||
var psqlUrl = options.postgres
|
||||
if (!psqlUrl) {
|
||||
console.log('Missing postgres entry in configuration file: %s', configPath)
|
||||
process.exit(2)
|
||||
}
|
||||
|
||||
module.exports = options
|
||||
|
|
@ -1,24 +1,15 @@
|
|||
'use strict';
|
||||
|
||||
var fs = require('fs');
|
||||
var pg = require('pg');
|
||||
var async = require('async');
|
||||
|
||||
var conString;
|
||||
try {
|
||||
conString = process.env.DATABASE_URL ||
|
||||
JSON.parse(fs.readFileSync('/etc/lamassu.json')).postgresql;
|
||||
}
|
||||
catch (ex) {
|
||||
conString = 'psql://lamassu:lamassu@localhost/lamassu';
|
||||
}
|
||||
var psqlUrl = require('../lib/options').postgres
|
||||
|
||||
exports.query = function query(sql, cb) {
|
||||
exports.multi([sql], cb);
|
||||
};
|
||||
|
||||
exports.silentQuery = function query(sql, cb) {
|
||||
pg.connect(conString, function(err, client, done) {
|
||||
pg.connect(psqlUrl, function(err, client, done) {
|
||||
if (err) {
|
||||
console.log(err.message);
|
||||
return cb(err);
|
||||
|
|
@ -32,7 +23,7 @@ exports.silentQuery = function query(sql, cb) {
|
|||
};
|
||||
|
||||
exports.multi = function multi(sqls, cb) {
|
||||
pg.connect(conString, function(err, client, done) {
|
||||
pg.connect(psqlUrl, function(err, client, done) {
|
||||
if (err) {
|
||||
console.log(err.message);
|
||||
return cb(err);
|
||||
|
|
|
|||
1
todo.txt
1
todo.txt
|
|
@ -6,5 +6,4 @@
|
|||
- throttle status check for 3rd services like bitgo
|
||||
|
||||
- load stuff from master config file
|
||||
- set up DATABASE_URL environment variable in lamassu-server
|
||||
- add default configuration
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue