diff --git a/src/apptask.js b/src/apptask.js index a4f661b12..714d91a17 100644 --- a/src/apptask.js +++ b/src/apptask.js @@ -61,8 +61,6 @@ var NGINX_APPCONFIG_EJS = fs.readFileSync(__dirname + '/../setup/start/nginx/app RMAPPDIR_CMD = path.join(__dirname, 'scripts/rmappdir.sh'), CREATEAPPDIR_CMD = path.join(__dirname, 'scripts/createappdir.sh'); -var gDnsRecordChangeId = null; - function initialize(callback) { database.initialize(callback); } @@ -435,11 +433,9 @@ function registerSubdomain(app, callback) { subdomains.add(record, function (error, changeId) { if (error) return callback(error); - gDnsRecordChangeId = changeId; - debugApp(app, 'Registered subdomain.'); - callback(null); + updateApp(app, { dnsRecordId: changeId }, callback); }); } @@ -475,7 +471,7 @@ function waitForDnsPropagation(app, callback) { setTimeout(waitForDnsPropagation.bind(null, app, callback), 5000); } - subdomains.status(gDnsRecordChangeId, function (error, result) { + subdomains.status(app.dnsRecordId, function (error, result) { if (error) return retry(new Error('Failed to get dns record status : ' + error.message)); debugApp(app, 'waitForDnsPropagation: dnsRecordId:%s status:%s', app.dnsRecordId, result); diff --git a/src/aws.js b/src/aws.js index 1bfc73c0c..97bec0022 100644 --- a/src/aws.js +++ b/src/aws.js @@ -139,13 +139,14 @@ function getZoneByName(zoneName, callback) { route53.listHostedZones({}, function (error, result) { if (error) return callback(new SubdomainError(SubdomainError.EXTERNAL_ERROR, new Error(error))); - debug('getZoneByName: found zones', result.HostedZones); var zone = result.HostedZones.filter(function (zone) { return zone.Name.slice(0, -1) === zoneName; // aws zone name contains a '.' at the end })[0]; if (!zone) return callback(new SubdomainError(SubdomainError.NOT_FOUND, 'no such zone')); + debug('getZoneByName: found zone', zone); + callback(null, zone); }); });