Added master/worker pm2 detection and mail configuration

This commit is contained in:
vjrj 2018-04-04 08:42:02 +02:00
parent f042beceb1
commit a6bd1095bf
5 changed files with 27 additions and 1 deletions

View file

@ -3,6 +3,7 @@ import { Mongo } from 'meteor/mongo';
import nodemailer from 'nodemailer'; import nodemailer from 'nodemailer';
import { MailTime } from 'meteor/ostrio:mailer'; import { MailTime } from 'meteor/ostrio:mailer';
import i18n from 'i18next'; import i18n from 'i18next';
import isMaster from './isMaster';
const transports = []; const transports = [];
@ -22,7 +23,8 @@ export const hr = `<table cellspacing="0" cellpadding="0" border="0" width="100%
let MailQueue; let MailQueue;
if (Meteor.settings.private.isMailServer) { if (Meteor.settings.private.isMailServer && isMaster) {
console.log('I\'m the mail server');
MailQueue = new MailTime({ MailQueue = new MailTime({
db, db,
type: 'server', type: 'server',
@ -47,6 +49,7 @@ if (Meteor.settings.private.isMailServer) {
template: MailTime.Template // Use default template template: MailTime.Template // Use default template
}); });
} else { } else {
console.log('I\'m a mail client');
MailQueue = new MailTime({ MailQueue = new MailTime({
db, db,
type: 'client', type: 'client',

View file

@ -14,3 +14,4 @@ import './subsUnion';
import './prerender'; import './prerender';
import './feedback'; import './feedback';
import './cron'; import './cron';
import './isMaster';

View file

@ -0,0 +1,16 @@
/* eslint-disable import/no-absolute-path */
import pm2Master from 'pm2-master';
import { Meteor } from 'meteor/meteor';
Meteor.startup(() => {
if (pm2Master.isMaster()) {
console.log('This is the master process');
} else {
console.log('This is a worker process');
}
});
const isMaster = () => pm2Master.isMaster();
export default isMaster;

5
package-lock.json generated
View file

@ -9725,6 +9725,11 @@
"integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==",
"dev": true "dev": true
}, },
"pm2-master": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/pm2-master/-/pm2-master-1.1.3.tgz",
"integrity": "sha512-/TBL6nG8Lv/ZZanbxHTAEba26AFHvZNhT/Ug6VSEnmRy+2nrL83r4X4t29FWFSkiXtOcgUMGb4cWpuz9CY9w1Q=="
},
"popper.js": { "popper.js": {
"version": "1.12.9", "version": "1.12.9",
"resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.12.9.tgz", "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.12.9.tgz",

View file

@ -49,6 +49,7 @@
"moment-timezone": "^0.5.14", "moment-timezone": "^0.5.14",
"node-geocoder": "^3.21.1", "node-geocoder": "^3.21.1",
"nodemailer": "^4.4.2", "nodemailer": "^4.4.2",
"pm2-master": "^1.1.3",
"popper.js": "^1.12.7", "popper.js": "^1.12.7",
"prerender-node": "^2.7.4", "prerender-node": "^2.7.4",
"prop-types": "^15.6.0", "prop-types": "^15.6.0",