2019-06-07 17:02:33 +02:00
|
|
|
const Sequelize = require('sequelize')
|
2021-09-27 11:14:11 +02:00
|
|
|
const config = require('../../config')
|
|
|
|
const log = require('../../log')
|
2019-09-25 19:07:15 +02:00
|
|
|
|
2021-09-27 11:14:11 +02:00
|
|
|
const db = {
|
|
|
|
sequelize: null,
|
|
|
|
close () {
|
|
|
|
return db.sequelize.close()
|
|
|
|
},
|
|
|
|
async connect (dbConf = config.db) {
|
|
|
|
log.debug(`Connecting to DB: ${dbConf}`)
|
|
|
|
db.sequelize = new Sequelize(dbConf)
|
|
|
|
await db.sequelize.authenticate()
|
|
|
|
return db.sequelize
|
|
|
|
}
|
2019-09-25 19:07:15 +02:00
|
|
|
}
|
2019-04-03 00:25:12 +02:00
|
|
|
|
2021-09-27 11:14:11 +02:00
|
|
|
if (!config.firstrun) {
|
|
|
|
try {
|
|
|
|
db.connect()
|
|
|
|
} catch (e) {
|
|
|
|
log.warn(` ⚠️ Cannot connect to db, check your configuration => ${e}`)
|
|
|
|
process.exit(1)
|
|
|
|
}
|
|
|
|
}
|
2019-09-11 19:12:24 +02:00
|
|
|
|
2021-09-27 11:14:11 +02:00
|
|
|
module.exports = db
|