push aliases to mail container on startup

This commit is contained in:
Girish Ramakrishnan
2016-05-28 00:05:54 -07:00
parent 080128539c
commit cafbb31e78
2 changed files with 30 additions and 3 deletions
+24
View File
@@ -8,10 +8,13 @@ exports = module.exports = {
setAliases: setAliases,
getAliases: getAliases,
setupAliases: setupAliases,
MailboxError: MailboxError
};
var assert = require('assert'),
async = require('async'),
DatabaseError = require('./databaseerror.js'),
docker = require('./docker.js'),
mailboxdb = require('./mailboxdb.js'),
@@ -162,3 +165,24 @@ function getAliases(name, callback) {
callback(null, aliases);
});
}
// push aliases to the mail container on startup
function setupAliases(callback) {
assert.strictEqual(typeof callback, 'function');
getAll(function (error, mailboxes) {
if (error) return callback(error);
async.each(mailboxes, function iteratorDone(mailbox) {
console.log('why am i here????', mailbox);
getAliases(mailbox.name, function (error, aliases) {
if (error) return iteratorDone(error);
if (aliases.length === 0) return iteratorDone();
pushAlias(mailbox.name, aliases, iteratorDone);
});
}, callback)
});
}
+6 -3
View File
@@ -14,6 +14,7 @@ var apps = require('./apps.js'),
fs = require('fs'),
infra = require('./infra_version.js'),
ini = require('ini'),
mailboxes = require('./mailboxes.js'),
path = require('path'),
paths = require('./paths.js'),
safe = require('safetydance'),
@@ -54,11 +55,13 @@ function initialize(callback) {
func(function (error) {
if (error) return callback(error);
fs.writeFileSync(paths.INFRA_VERSION_FILE, JSON.stringify(infra));
loadAddonVarsSync();
callback();
mailboxes.setupAliases(function (error) {
if (error) return callback(error);
fs.writeFile(paths.INFRA_VERSION_FILE, JSON.stringify(infra), callback);
});
});
});
}