Add domains.setupAdminDnsRecord

This commit is contained in:
Girish Ramakrishnan
2018-12-13 22:24:26 -08:00
parent 63e3560dd7
commit 9dced3f596
+21
View File
@@ -26,6 +26,8 @@ module.exports = exports = {
parentDomain: parentDomain,
setupAdminDnsRecord: setupAdminDnsRecord,
DomainsError: DomainsError,
// exported for testing
@@ -494,3 +496,22 @@ function makeWildcard(hostname) {
parts[0] = '*';
return parts.join('.');
}
function setupAdminDnsRecord(domain, callback) {
assert.strictEqual(typeof domain, 'string');
assert.strictEqual(typeof callback, 'function');
sysinfo.getPublicIp(function (error, ip) {
if (error) return callback(error);
upsertDnsRecords(constants.ADMIN_LOCATION, domain, 'A', [ ip ], function (error) {
if (error) return callback(error);
waitForDnsRecord(constants.ADMIN_LOCATION, domain, 'A', ip, { interval: 30000, times: 50000 }, function (error) {
if (error) return callback(error);
callback();
});
});
});
}