forked from lnp2pBot/bot
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathdb_connect.ts
More file actions
25 lines (21 loc) · 742 Bytes
/
db_connect.ts
File metadata and controls
25 lines (21 loc) · 742 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import mongoose, { ConnectOptions } from 'mongoose';
import { logger } from './logger';
mongoose.set('strictQuery', false);
// connect to database
const credentials = process.env.DB_USER
? `${process.env.DB_USER}:${process.env.DB_PASS}@`
: '';
let MONGO_URI = `mongodb://${credentials}${process.env.DB_HOST}:${process.env.DB_PORT}/${process.env.DB_NAME}?authSource=admin`;
MONGO_URI = process.env.MONGO_URI ? process.env.MONGO_URI : MONGO_URI;
if (!MONGO_URI) {
throw new Error('You must provide a MongoDB URI');
}
logger.info(`Connecting to MongoDB`);
const connect = () => {
mongoose.connect(MONGO_URI, {
useNewUrlParser: true,
useUnifiedTopology: true,
} as ConnectOptions);
return mongoose;
};
export { connect };