diff --git a/.meteor/packages b/.meteor/packages index 64d574983ded..1e55d76dde34 100644 --- a/.meteor/packages +++ b/.meteor/packages @@ -4,6 +4,7 @@ # but you can also edit it by hand. rocketchat:cors +rocketchat:mongo-config accounts-facebook@1.3.2 accounts-github@1.4.2 diff --git a/.meteor/versions b/.meteor/versions index a26ea4c0a36e..d833186bf753 100644 --- a/.meteor/versions +++ b/.meteor/versions @@ -204,6 +204,7 @@ rocketchat:message-star@0.0.1 rocketchat:metrics@0.0.1 rocketchat:migrations@0.0.1 rocketchat:models@1.0.0 +rocketchat:mongo-config@0.0.1 rocketchat:monitoring@2.30.2_3 rocketchat:notifications@0.0.1 rocketchat:nrr@1.0.0 diff --git a/packages/rocketchat-cors/server/cors.js b/packages/rocketchat-cors/server/cors.js index a3e36d816210..e0204d67d148 100644 --- a/packages/rocketchat-cors/server/cors.js +++ b/packages/rocketchat-cors/server/cors.js @@ -1,31 +1,11 @@ import { Meteor } from 'meteor/meteor'; import { WebApp, WebAppInternals } from 'meteor/webapp'; import { settings } from 'meteor/rocketchat:settings'; -import { Mongo } from 'meteor/mongo'; import { Logger } from 'meteor/rocketchat:logger'; const logger = new Logger('CORS', {}); import _ from 'underscore'; import url from 'url'; -import tls from 'tls'; -// FIX For TLS error see more here https://github.com/RocketChat/Rocket.Chat/issues/9316 -// TODO: Remove after NodeJS fix it, more information https://github.com/nodejs/node/issues/16196 https://github.com/nodejs/node/pull/16853 -tls.DEFAULT_ECDH_CURVE = 'auto'; - -// Revert change from Meteor 1.6.1 who set ignoreUndefined: true -// more information https://github.com/meteor/meteor/pull/9444 -let mongoOptions = { - ignoreUndefined: false, -}; - -const mongoOptionStr = process.env.MONGO_OPTIONS; -if (typeof mongoOptionStr !== 'undefined') { - const jsonMongoOptions = JSON.parse(mongoOptionStr); - - mongoOptions = Object.assign({}, mongoOptions, jsonMongoOptions); -} - -Mongo.setConnectionOptions(mongoOptions); WebApp.rawConnectHandlers.use(Meteor.bindEnvironment(function(req, res, next) { if (req._body) { diff --git a/packages/rocketchat-mongo-config/package.js b/packages/rocketchat-mongo-config/package.js new file mode 100644 index 000000000000..69abd24efb95 --- /dev/null +++ b/packages/rocketchat-mongo-config/package.js @@ -0,0 +1,15 @@ +Package.describe({ + name: 'rocketchat:mongo-config', + version: '0.0.1', + summary: '', + git: '', +}); + +Package.onUse(function(api) { + api.use([ + 'ecmascript', + 'mongo', + ]); + + api.mainModule('server/index.js', 'server'); +}); diff --git a/packages/rocketchat-mongo-config/server/index.js b/packages/rocketchat-mongo-config/server/index.js new file mode 100644 index 000000000000..f1daeb106b94 --- /dev/null +++ b/packages/rocketchat-mongo-config/server/index.js @@ -0,0 +1,16 @@ +import { Mongo } from 'meteor/mongo'; + +// Revert change from Meteor 1.6.1 who set ignoreUndefined: true +// more information https://github.com/meteor/meteor/pull/9444 +let mongoOptions = { + ignoreUndefined: false, +}; + +const mongoOptionStr = process.env.MONGO_OPTIONS; +if (typeof mongoOptionStr !== 'undefined') { + const jsonMongoOptions = JSON.parse(mongoOptionStr); + + mongoOptions = Object.assign({}, mongoOptions, jsonMongoOptions); +} + +Mongo.setConnectionOptions(mongoOptions);