verdandi
Version:
Verðandi; API backend for Sjekk UT mobile application
30 lines (22 loc) • 739 B
JavaScript
;
const mongoose = require('mongoose');
// Use native promises
mongoose.Promise = global.Promise;
if (mongoose.connection._hasOpened) {
module.exports = mongoose;
} else {
let mongoUri = process.env.MONGO_URI;
if (typeof mongoUri === 'undefined' || !mongoUri) {
if (!process.env.MONGO_DB) {
throw new Error('Environment variable "MONGO_DB" is undefined');
}
const addr = process.env.MONGO_PORT_27017_TCP_ADDR || 'mongo';
const port = process.env.MONGO_PORT_27017_TCP_PORT || 27017;
const db = process.env.MONGO_DB;
mongoUri = `mongodb://${addr}:${port}/${db}`;
}
module.exports = mongoose.connect(mongoUri);
module.exports.connection.on('error', err => {
throw err;
});
}