diff --git a/src/services.js b/src/services.js index 1f5445f2f..06845b44b 100644 --- a/src/services.js +++ b/src/services.js @@ -837,6 +837,7 @@ function startServices(existingInfra, callback) { if (existingInfra.version !== infra.version) { debug(`startServices: ${existingInfra.version} -> ${infra.version}. starting all services`); startFuncs.push( + mail.startMail, // start this first to reduce email downtime startTurn.bind(null, existingInfra, servicesConfig['turn'] || {}), startMysql.bind(null, existingInfra), startPostgresql.bind(null, existingInfra), @@ -844,15 +845,15 @@ function startServices(existingInfra, callback) { startRedis.bind(null, existingInfra), graphite.start.bind(null, existingInfra, servicesConfig['graphite'] || {}), sftp.start.bind(null, existingInfra, servicesConfig['sftp'] || {}), - mail.startMail); + ); } else { assert.strictEqual(typeof existingInfra.images, 'object'); + if (infra.images.mail.tag !== existingInfra.images.mail.tag) startFuncs.push(mail.startMail); // start this first to reduce email downtime if (infra.images.turn.tag !== existingInfra.images.turn.tag) startFuncs.push(startTurn.bind(null, existingInfra, servicesConfig['turn'] || {})); if (infra.images.mysql.tag !== existingInfra.images.mysql.tag) startFuncs.push(startMysql.bind(null, existingInfra)); if (infra.images.postgresql.tag !== existingInfra.images.postgresql.tag) startFuncs.push(startPostgresql.bind(null, existingInfra)); if (infra.images.mongodb.tag !== existingInfra.images.mongodb.tag) startFuncs.push(startMongodb.bind(null, existingInfra)); - if (infra.images.mail.tag !== existingInfra.images.mail.tag) startFuncs.push(mail.startMail); if (infra.images.redis.tag !== existingInfra.images.redis.tag) startFuncs.push(startRedis.bind(null, existingInfra)); if (infra.images.graphite.tag !== existingInfra.images.graphite.tag) startFuncs.push(graphite.start.bind(null, existingInfra, servicesConfig['graphite'] || {})); if (infra.images.sftp.tag !== existingInfra.images.sftp.tag) startFuncs.push(sftp.start.bind(null, existingInfra, servicesConfig['sftp'] || {}));