From 96a0bad149f3fee3b4fcc9bff0a68128eba7bcbc Mon Sep 17 00:00:00 2001 From: Girish Ramakrishnan Date: Tue, 7 Feb 2017 01:08:37 -0800 Subject: [PATCH] generate dkim keys in tests move out dkim creation code that the tests require --- src/cloudron.js | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/cloudron.js b/src/cloudron.js index 170952513..c1a3c3a4d 100644 --- a/src/cloudron.js +++ b/src/cloudron.js @@ -166,6 +166,7 @@ function onConfigured(callback) { cron.initialize, certificates.ensureFallbackCertificate, platform.initialize, // requires fallback certs for mail container + ensureDkimKey, addDnsRecords, configureAdmin, mailer.start @@ -512,12 +513,7 @@ function sendAliveStatus(callback) { }); } -function readDkimPublicKeySync() { - if (!config.fqdn()) { - debug('Cannot read dkim public key without a domain.', safe.error); - return null; - } - +function ensureDkimKey(callback) { var dkimPath = path.join(paths.MAIL_DATA_DIR, 'dkim/' + config.fqdn()); var dkimPrivateKeyFile = path.join(dkimPath, 'private'); var dkimPublicKeyFile = path.join(dkimPath, 'public'); @@ -536,6 +532,18 @@ function readDkimPublicKeySync() { debug('DKIM keys already present'); } + callback(); +} + +function readDkimPublicKeySync() { + if (!config.fqdn()) { + debug('Cannot read dkim public key without a domain.', safe.error); + return null; + } + + var dkimPath = path.join(paths.MAIL_DATA_DIR, 'dkim/' + config.fqdn()); + var dkimPublicKeyFile = path.join(dkimPath, 'public'); + var publicKey = safe.fs.readFileSync(dkimPublicKeyFile, 'utf8'); if (publicKey === null) {