diff --git a/src/platform.js b/src/platform.js index b04c4bb0d..4f2686363 100644 --- a/src/platform.js +++ b/src/platform.js @@ -168,12 +168,13 @@ function startApps(existingInfra, callback) { } } -function handleCertChanged(cn) { +function handleCertChanged(cn, callback) { assert.strictEqual(typeof cn, 'string'); + assert.strictEqual(typeof callback, 'function'); debug('handleCertChanged', cn); - if (cn === '*.' + config.adminDomain() || cn === config.adminFqdn()) { - mail.startMail(NOOP_CALLBACK); - } + if (cn === '*.' + config.adminDomain() || cn === config.adminFqdn()) return mail.startMail(callback); + + callback(); } diff --git a/src/reverseproxy.js b/src/reverseproxy.js index 5d4222f64..fd6e2c94d 100644 --- a/src/reverseproxy.js +++ b/src/reverseproxy.js @@ -242,12 +242,14 @@ function setFallbackCertificate(domain, fallback, callback) { if (!safe.fs.writeFileSync(path.join(paths.APP_CERTS_DIR, `${domain}.host.key`), fallback.key)) return callback(new ReverseProxyError(ReverseProxyError.INTERNAL_ERROR, safe.error.message)); } - platform.handleCertChanged('*.' + domain); - - reload(function (error) { + platform.handleCertChanged('*.' + domain, function (error) { if (error) return callback(new ReverseProxyError(ReverseProxyError.INTERNAL_ERROR, error)); - return callback(null); + reload(function (error) { + if (error) return callback(new ReverseProxyError(ReverseProxyError.INTERNAL_ERROR, error)); + + return callback(null); + }); }); } @@ -555,9 +557,7 @@ function renewCerts(options, auditSource, progressCallback, callback) { configureFunc(function (ignoredError) { if (ignoredError) debug('renewAll: error reconfiguring app', ignoredError); - platform.handleCertChanged(appDomain.fqdn); - - iteratorCallback(); // move to next domain + platform.handleCertChanged(appDomain.fqdn, iteratorCallback); }); }); }, callback);