mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-16 14:17:22 +01:00
* remove some unused dependencies * update mongoose version * make common tests pass * Make unit tests pass * make api v3 integration tests pass * fix lint issues * fix issue with package-lock * fix(lint): we don't need no .js * fix(lint): update to latest config-habitrpg * chore(npm): update package locks * fix(test): replace deprecated fn * chore(package): update eslint-habitrpg again * fix(lint): server linting * fix(lint): client linting * fix(client): correct mangled common imports * chore(npm): update package-locks * fix(lint): punctuation, module --------- Co-authored-by: SabreCat <sabrecat@gmail.com> Co-authored-by: SabreCat <sabe@habitica.com>
29 lines
891 B
JavaScript
29 lines
891 B
JavaScript
import nconf from 'nconf';
|
|
import mongoose from 'mongoose';
|
|
import logger from './logger';
|
|
import {
|
|
getDevelopmentConnectionUrl,
|
|
getDefaultConnectionOptions,
|
|
} from './mongodb';
|
|
|
|
const IS_PROD = nconf.get('IS_PROD');
|
|
const MAINTENANCE_MODE = nconf.get('MAINTENANCE_MODE');
|
|
const POOL_SIZE = nconf.get('MONGODB_POOL_SIZE');
|
|
|
|
// Do not connect to MongoDB when in maintenance mode
|
|
if (MAINTENANCE_MODE !== 'true') {
|
|
const mongooseOptions = getDefaultConnectionOptions();
|
|
|
|
if (POOL_SIZE) mongooseOptions.maxPoolSize = Number(POOL_SIZE);
|
|
|
|
const DB_URI = nconf.get('IS_TEST') ? nconf.get('TEST_DB_URI') : nconf.get('NODE_DB_URI');
|
|
const connectionUrl = IS_PROD ? DB_URI : getDevelopmentConnectionUrl(DB_URI);
|
|
|
|
mongoose.connect(connectionUrl, mongooseOptions).then(() => {
|
|
logger.info('Connected with Mongoose.');
|
|
}).catch(err => {
|
|
logger.error(err);
|
|
throw err;
|
|
});
|
|
}
|