azure-cli
Version:
Microsoft Azure Cross Platform Command Line tool
736 lines (423 loc) • 71.3 kB
JavaScript
/*** Generated by streamline 0.10.17 (callbacks) - DO NOT EDIT ***/ var __rt=require('streamline/lib/callbacks/runtime').runtime(__filename, false),__func=__rt.__func,__cb=__rt.__cb,__catch=__rt.__catch,__tryCatch=__rt.__tryCatch; var __ = require("underscore");
var constants = require("./constants");
var fs = require("fs");
var profile = require("../../../util/profile");
var PublicIp = require("./publicIp");
var resourceUtils = require("../resource/resourceUtils");
var Subnet = require("./subnet");
var tagUtils = require("../tag/tagUtils");
var util = require("util");
var utils = require("../../../util/utils");
var VNetUtil = require("../../../util/vnet.util");
var $ = utils.getLocaleString;
function AppGateways(cli, networkManagementClient) {
this.interaction = cli.interaction;
this.networkManagementClient = networkManagementClient;
this.output = cli.output;
this.publicIpCrud = new PublicIp(cli, networkManagementClient);
this.subnetCrud = new Subnet(cli, networkManagementClient);
this.vnetUtil = new VNetUtil();};
__.extend(AppGateways.prototype, {
create: function create__1(resourceGroup, appGatewayName, location, options, _) { var self, appGateway, subnetId, subnet, parameters, frontendIpID, frontendPortID, poolID, settingsID, listenerID, capacity, data, certID, progress, createdAppGateway, __this = this; var __frame = { name: "create__1", line: 39 }; return __func(_, this, arguments, create__1, 4, __frame, function __$create__1() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __1) { appGateway = __1;
if (appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" already exists in resource group \"%s\""), appGatewayName, resourceGroup))); } ; return (function __$create__1(__then) {
if (options.subnetId) {
subnetId = options.subnetId; __then(); } else {
return self.subnetCrud.get(resourceGroup, options.vnetName, options.subnetName, __cb(_, __frame, 10, 35, function ___(__0, __2) { subnet = __2;
if (!subnet) {
return _(new Error(util.format($("Subnet \"%s\" not found in virtual network \"%s\""), options.subnetName, options.vnetName))); } ;
subnetId = subnet.id; __then(); }, true)); } ; })(function __$create__1() {
parameters = self._setDefaultAttributes(options);
self.subscriptionId = self._getSubscriptionId(options);
frontendIpID = self._generateResourceId(resourceGroup, appGatewayName, "frontendIPConfigurations", parameters.frontendIpName);
frontendPortID = self._generateResourceId(resourceGroup, appGatewayName, "frontendPorts", parameters.frontendPortName);
poolID = self._generateResourceId(resourceGroup, appGatewayName, "backendAddressPools", parameters.addressPoolName);
settingsID = self._generateResourceId(resourceGroup, appGatewayName, "backendHttpSettingsCollection", parameters.httpSettingsName);
listenerID = self._generateResourceId(resourceGroup, appGatewayName, "httpListeners", parameters.httpListenerName);
appGateway = {
name: appGatewayName,
location: location,
gatewayIPConfigurations: [{
name: parameters.gatewayIpName,
subnet: { id: subnetId } },],
frontendPorts: [{
name: parameters.frontendPortName,
port: parseInt(parameters.frontendPort) },],
backendAddressPools: [{
name: parameters.addressPoolName,
backendAddresses: self._parseDnsServers(options),
backendIPConfiguration: [] },],
backendHttpSettingsCollection: [{
name: parameters.httpSettingsName,
protocol: parameters.httpSettingsProtocol,
port: parseInt(parameters.httpSettingsPort),
cookieBasedAffinity: parameters.httpSettingsCookieBasedAffinity },],
httpListeners: [{
name: parameters.httpListenerName,
frontendIPConfiguration: { id: frontendIpID },
frontendPort: { id: frontendPortID },
protocol: parameters.httpListenerProtocol },],
requestRoutingRules: [{
name: parameters.routingRuleName,
ruleType: parameters.routingRuleType,
backendAddressPool: { id: poolID },
backendHttpSettings: { id: settingsID },
httpListener: { id: listenerID } },] };
if (parameters.skuName) {
utils.verifyParamExistsInCollection(constants.appGateway.sku.name, parameters.skuName, "--sku-name");
appGateway.sku = {
name: parameters.skuName }; } ;
if (options.skuTier) {
utils.verifyParamExistsInCollection(constants.appGateway.sku.tier, parameters.skuTier, "--sku-tier");
appGateway.sku.tier = parameters.skuTier; } ;
if (options.capacity) {
capacity = parseInt(options.capacity);
if (((capacity >= constants.appGateway.sku.capacity[0]) && (capacity <= constants.appGateway.sku.capacity[1]))) {
appGateway.sku.capacity = capacity; }
else {
return _(new Error(util.format($("Given %s \"%s\" is invalid, supported values are: [%s]"), "--capacity", options.capacity, constants.appGateway.sku.capacity))); } ; } ;
appGateway.frontendIPConfigurations = [];
return self._parseFrontendIp(resourceGroup, appGatewayName, parameters.frontendIpName, parameters, __cb(_, __frame, 81, 50, function ___(__0, __3) { appGateway.frontendIPConfigurations.push(__3);
if (parameters.certFile) {
appGateway.sslCertificates = [];
data = fs.readFileSync(parameters.certFile);
appGateway.sslCertificates.push({
name: parameters.certName,
password: parameters.certPassword,
data: data.toString("base64") });
certID = self._generateResourceId(resourceGroup, appGatewayName, "sslCertificates", parameters.certName);
appGateway.httpListeners[0].sslCertificate = {
id: certID }; } ;
if (utils.argHasValue(options.tags)) {
tagUtils.appendTags(appGateway, options); }
else {
appGateway.tags = { }; } ;
progress = self.interaction.progress(util.format($("Creating configuration for an application gateway \"%s\""), appGatewayName)); return (function ___(__then) { (function ___(_) { __tryCatch(_, function __$create__1() {
return self.networkManagementClient.applicationGateways.createOrUpdate(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 106, 75, function ___(__0, __4) { createdAppGateway = __4; _(null, null, true); }, true)); }); })(function ___(__e, __r, __cont) { (function ___(__then) { __tryCatch(_, function __$create__1() {
progress.end(); __then(); }); })(function ___() { __tryCatch(_, function ___() { if (__cont) { __then(); } else { _(__e, __r); }; }); }); }); })(function ___() { __tryCatch(_, function __$create__1() {
self._showAppGateway(createdAppGateway); _(); }); }); }, true)); }); }, true)); }); },
set: function set__2(resourceGroup, appGatewayName, options, _) { var self, appGateway, capacity, __this = this; var __frame = { name: "set__2", line: 152 }; return __func(_, this, arguments, set__2, 3, __frame, function __$set__2() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __1) { appGateway = __1;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found in resource group \"%s\""), appGatewayName, resourceGroup))); } ;
if (options.skuName) {
utils.verifyParamExistsInCollection(constants.appGateway.sku.name, options.skuName, "--sku-name");
appGateway.sku.name = options.skuName; } ;
if (options.skuTier) {
utils.verifyParamExistsInCollection(constants.appGateway.sku.tier, options.skuTier, "--sku-tier");
appGateway.sku.tier = options.skuTier; } ;
if (options.capacity) {
capacity = parseInt(options.capacity);
if (((capacity >= constants.appGateway.sku.capacity[0]) && (capacity <= constants.appGateway.sku.capacity[1]))) {
appGateway.sku.capacity = capacity; }
else {
return _(new Error(util.format($("Given %s \"%s\" is invalid, supported values are: [%s]"), "--capacity", options.capacity, constants.appGateway.sku.capacity))); } ; } ;
if (utils.argHasValue(options.tags)) {
tagUtils.appendTags(appGateway, options); } ;
self.output.warn("Application gateway set command is a long-running process. It may take up to 15-20 minutes to complete.");
return self._setAppGateway(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 28, 9, function __$set__2() { _(); }, true)); }, true)); }); },
get: function get__3(resourceGroup, appGatewayName, _) { var self, appGateway, progress, __this = this; var __frame = { name: "get__3", line: 183 }; return __func(_, this, arguments, get__3, 2, __frame, function __$get__3() { self = __this;
progress = self.interaction.progress(util.format($("Looking up an application gateway \"%s\""), appGatewayName)); return (function ___(__then) { (function ___(_) { __tryCatch(_, function __$get__3() { return (function ___(__then) { (function ___(_) { __tryCatch(_, function __$get__3() {
return self.networkManagementClient.applicationGateways.get(resourceGroup, appGatewayName, null, __cb(_, __frame, 5, 68, function ___(__0, __1) { appGateway = __1; __then(); }, true)); }); })(function ___(error, __result) { __catch(function __$get__3() { if (error) {
if ((error.statusCode === 404)) {
appGateway = null; } ; __then(); } else { _(null, __result); } ; }, _); }); })(function ___() { __tryCatch(_, function __$get__3() { _(null, null, true); }); }); }); })(function ___(__e, __r, __cont) { (function ___(__then) { __tryCatch(_, function __$get__3() {
progress.end(); __then(); }); })(function ___() { __tryCatch(_, function ___() { if (__cont) { __then(); } else { _(__e, __r); }; }); }); }); })(function ___() { __tryCatch(_, function __$get__3() {
return _(null, appGateway); }); }); }); },
list: function list__4(options, _) { var self, appGateways, progress, __this = this; var __frame = { name: "list__4", line: 199 }; return __func(_, this, arguments, list__4, 1, __frame, function __$list__4() { self = __this; return (function ___(__then) { (function ___(_) { __tryCatch(_, function __$list__4() { return (function __$list__4(__then) {
if (options.resourceGroup) {
progress = self.interaction.progress(util.format($("Looking up application gateways in resource group \"%s\""), options.resourceGroup));
return self.networkManagementClient.applicationGateways.list(options.resourceGroup, options, __cb(_, __frame, 7, 71, function ___(__0, __1) { appGateways = __1; __then(); }, true)); } else {
progress = self.interaction.progress($("Looking up application gateways in all resource groups"));
return self.networkManagementClient.applicationGateways.listAll(options, __cb(_, __frame, 10, 71, function ___(__0, __2) { appGateways = __2; __then(); }, true)); } ; })(function __$list__4() { _(null, null, true); }); }); })(function ___(__e, __r, __cont) { (function ___(__then) { __tryCatch(_, function __$list__4() {
progress.end(); __then(); }); })(function ___() { __tryCatch(_, function ___() { if (__cont) { __then(); } else { _(__e, __r); }; }); }); }); })(function ___() { __tryCatch(_, function __$list__4() {
if (!appGateways) {
self.output.warn(util.format($("No application gateways found in resource group \"%s\""), options.resourceGroup)); } ;
self.interaction.formatOutput(appGateways, function(data) {
if ((data.length === 0)) {
self.output.warn(util.format($("No application gateways found in resource group \"%s\""), options.resourceGroup)); }
else {
self.output.table(data, function(row, gateway) {
row.cell($("Name"), gateway.name);
row.cell($("Provisioning state"), gateway.provisioningState);
row.cell($("Location"), gateway.location);
var resource = resourceUtils.getResourceInformation(gateway.id);
row.cell($("Resource group"), resource.resourceGroup); }); } ; }); _(); }); }); }); },
show: function show__5(resourceGroup, appGatewayName, options, _) { var self, appGateway, __this = this; var __frame = { name: "show__5", line: 233 }; return __func(_, this, arguments, show__5, 3, __frame, function __$show__5() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __1) { appGateway = __1;
if (appGateway) {
self._showAppGateway(appGateway); }
else {
self.output.warn(util.format($("An application gateway with name \"%s\" not found in resource group \"%s\""), appGatewayName, resourceGroup)); } ; _(); }, true)); }); },
delete: function delete__6(resourceGroup, appGatewayName, options, _) { var self, appGateway, progress, __this = this; var __frame = { name: "delete__6", line: 244 }; return __func(_, this, arguments, delete__6, 3, __frame, function __$delete__6() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 3, 26, function ___(__0, __2) { appGateway = __2;
if (!appGateway) {
self.output.warn(util.format($("An application gateway with name \"%s\" not found in resource group \"%s\""), appGatewayName, resourceGroup)); return _(null); } ; return (function __$delete__6(_) {
var __1 = !options.quiet; if (!__1) { return _(null, __1); } ; return self.interaction.confirm(util.format($("Delete an application gateway \"%s\"? [y/n] "), appGatewayName), __cb(_, __frame, 8, 44, function ___(__0, __3) { var __2 = !__3; return _(null, __2); }, true)); })(__cb(_, __frame, -243, 17, function ___(__0, __3) { return (function __$delete__6(__then) { if (__3) { return _(null); } else { __then(); } ; })(function __$delete__6() {
progress = self.interaction.progress(util.format($("Deleting an application gateway \"%s\""), appGatewayName)); return (function ___(__then) { (function ___(_) { __tryCatch(_, function __$delete__6() {
return self.networkManagementClient.applicationGateways.deleteMethod(resourceGroup, appGatewayName, __cb(_, __frame, 14, 55, function __$delete__6() { _(null, null, true); }, true)); }); })(function ___(__e, __r, __cont) { (function ___(__then) { __tryCatch(_, function __$delete__6() {
progress.end(); __then(); }); })(function ___() { __tryCatch(_, function ___() { if (__cont) { __then(); } else { _(__e, __r); }; }); }); }); })(function ___() { __tryCatch(_, function __$delete__6() { _(); }); }); }); }, true)); }, true)); }); },
start: function start__7(resourceGroup, appGatewayName, options, _) { var self, appGateway, progress, __this = this; var __frame = { name: "start__7", line: 264 }; return __func(_, this, arguments, start__7, 3, __frame, function __$start__7() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __1) { appGateway = __1;
if (!appGateway) {
return _(new Error(util.format($("An application gateway with name \"%s\" not found in resource group \"%s\""), appGatewayName, resourceGroup))); } ;
self.output.warn("Application gateway start command is a long-running process. It may take up to 15-20 minutes to complete.");
progress = self.interaction.progress(util.format($("Starting an application gateway \"%s\""), appGatewayName)); return (function ___(__then) { (function ___(_) { __tryCatch(_, function __$start__7() {
return self.networkManagementClient.applicationGateways.start(resourceGroup, appGatewayName, __cb(_, __frame, 12, 55, function __$start__7() { _(null, null, true); }, true)); }); })(function ___(__e, __r, __cont) { (function ___(__then) { __tryCatch(_, function __$start__7() {
progress.end(); __then(); }); })(function ___() { __tryCatch(_, function ___() { if (__cont) { __then(); } else { _(__e, __r); }; }); }); }); })(function ___() { __tryCatch(_, function __$start__7() { _(); }); }); }, true)); }); },
stop: function stop__8(resourceGroup, appGatewayName, options, _) { var self, appGateway, progress, __this = this; var __frame = { name: "stop__8", line: 282 }; return __func(_, this, arguments, stop__8, 3, __frame, function __$stop__8() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __1) { appGateway = __1;
if (!appGateway) {
return _(new Error(util.format($("An application gateway with name \"%s\" not found in resource group \"%s\""), appGatewayName, resourceGroup))); } ;
progress = self.interaction.progress(util.format($("Stopping an application gateway \"%s\""), appGatewayName)); return (function ___(__then) { (function ___(_) { __tryCatch(_, function __$stop__8() {
return self.networkManagementClient.applicationGateways.stop(resourceGroup, appGatewayName, __cb(_, __frame, 10, 55, function __$stop__8() { _(null, null, true); }, true)); }); })(function ___(__e, __r, __cont) { (function ___(__then) { __tryCatch(_, function __$stop__8() {
progress.end(); __then(); }); })(function ___() { __tryCatch(_, function ___() { if (__cont) { __then(); } else { _(__e, __r); }; }); }); }); })(function ___() { __tryCatch(_, function __$stop__8() { _(); }); }); }, true)); }); },
addSsl: function addSsl__9(resourceGroup, appGatewayName, certName, options, _) { var self, appGateway, certificateObject, data, __this = this; var __frame = { name: "addSsl__9", line: 298 }; return __func(_, this, arguments, addSsl__9, 4, __frame, function __$addSsl__9() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __1) { appGateway = __1;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found in resource group \"%s\""), appGatewayName, resourceGroup))); } ;
if (utils.stringIsNullOrEmpty(options.certFile)) {
return _(new Error($("--cert-file parameter must not be empty"))); } ;
if (utils.stringIsNullOrEmpty(options.certPassword)) {
return _(new Error($("--cert-password parameter must not be empty"))); } ;
certificateObject = { password: options.certPassword, name: certName }; return (function ___(__then) { (function ___(_) { __tryCatch(_, function __$addSsl__9() {
data = fs.readFileSync(options.certFile); __then(); }); })(function ___(e, __result) { __catch(function __$addSsl__9() { if (e) {
if ((e.code === "ENONT")) {
return _(new Error(util.format($("File \"%s\" not found"), options.certFile))); } ; __then(); } else { _(null, __result); } ; }, _); }); })(function ___() { __tryCatch(_, function __$addSsl__9() {
certificateObject.data = data.toString("base64");
appGateway.sslCertificates.push(certificateObject);
return self._setAppGateway(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 26, 9, function __$addSsl__9() { _(); }, true)); }); }); }, true)); }); },
removeSsl: function removeSsl__10(resourceGroup, appGatewayName, certName, options, _) { var self, appGateway, index, __this = this; var __frame = { name: "removeSsl__10", line: 327 }; return __func(_, this, arguments, removeSsl__10, 4, __frame, function __$removeSsl__10() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 3, 26, function ___(__0, __2) { appGateway = __2;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found in resource group \"%s\""), appGatewayName, resourceGroup))); } ;
index = utils.indexOfCaseIgnore(appGateway.sslCertificates, { name: certName }); return (function __$removeSsl__10(__then) {
if ((index !== -1)) { return (function __$removeSsl__10(_) {
var __1 = !options.quiet; if (!__1) { return _(null, __1); } ; return self.interaction.confirm(util.format($("Delete an ssl certificate \"%s\"? [y/n] "), certName), __cb(_, __frame, 10, 46, function ___(__0, __3) { var __2 = !__3; return _(null, __2); }, true)); })(__cb(_, __frame, -326, 17, function ___(__0, __3) { return (function __$removeSsl__10(__then) { if (__3) { return _(null); } else { __then(); } ; })(function __$removeSsl__10() {
appGateway.sslCertificates.splice(index, 1);
return self._setAppGateway(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 14, 11, __then, true)); }); }, true)); } else {
return _(new Error(util.format($("SSL certificate with name \"%s\" not found for an application gateway \"%s\""), certName, appGatewayName))); } ; })(_); }, true)); }); },
addFrontendIp: function addFrontendIp__11(resourceGroup, appGatewayName, frontendIpName, options, _) { var self, appGateway, frontendIp, __this = this; var __frame = { name: "addFrontendIp__11", line: 347 }; return __func(_, this, arguments, addFrontendIp__11, 4, __frame, function __$addFrontendIp__11() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __1) { appGateway = __1;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found in resource group \"%s\""), appGatewayName, resourceGroup))); } ;
frontendIp = utils.findFirstCaseIgnore(appGateway.frontendIPConfigurations, { name: frontendIpName });
if (frontendIp) {
return _(new Error(util.format($("A frontend ip with name \"%s\" already exists for an application gateway \"%s\""), frontendIpName, appGatewayName))); } ;
return self._parseFrontendIp(resourceGroup, appGatewayName, frontendIpName, options, __cb(_, __frame, 12, 22, function ___(__0, __2) { frontendIp = __2;
appGateway.frontendIPConfigurations.push(frontendIp);
return self._setAppGateway(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 14, 9, function __$addFrontendIp__11() { _(); }, true)); }, true)); }, true)); }); },
removeFrontendIp: function removeFrontendIp__12(resourceGroup, appGatewayName, frontendIpName, options, _) { var self, appGateway, index, __this = this; var __frame = { name: "removeFrontendIp__12", line: 364 }; return __func(_, this, arguments, removeFrontendIp__12, 4, __frame, function __$removeFrontendIp__12() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __2) { appGateway = __2;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found in resource group \"%s\""), appGatewayName, resourceGroup))); } ;
index = utils.indexOfCaseIgnore(appGateway.frontendIPConfigurations, { name: frontendIpName });
if ((index === -1)) {
return _(new Error(util.format($("A frontend ip with name \"%s\" not found for an application gateway \"%s\""), frontendIpName, appGatewayName))); } ; return (function __$removeFrontendIp__12(_) {
var __1 = !options.quiet; if (!__1) { return _(null, __1); } ; return self.interaction.confirm(util.format($("Delete a frontend ip \"%s\"? [y/n] "), frontendIpName), __cb(_, __frame, 12, 44, function ___(__0, __3) { var __2 = !__3; return _(null, __2); }, true)); })(__cb(_, __frame, -363, 17, function ___(__0, __3) { return (function __$removeFrontendIp__12(__then) { if (__3) { return _(null); } else { __then(); } ; })(function __$removeFrontendIp__12() {
appGateway.frontendIPConfigurations.splice(index, 1);
return self._setAppGateway(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 16, 9, function __$removeFrontendIp__12() { _(); }, true)); }); }, true)); }, true)); }); },
addFrontendPort: function addFrontendPort__13(resourceGroup, appGatewayName, frontendPortName, options, _) { var self, appGateway, frontendPort, __this = this; var __frame = { name: "addFrontendPort__13", line: 383 }; return __func(_, this, arguments, addFrontendPort__13, 4, __frame, function __$addFrontendPort__13() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __1) { appGateway = __1;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found in resource group \"%s\""), appGatewayName, resourceGroup))); } ;
frontendPort = utils.findFirstCaseIgnore(appGateway.frontendPorts, { name: frontendPortName });
if (frontendPort) {
return _(new Error(util.format($("A frontend port with name \"%s\" already exists for an application gateway \"%s\""), frontendPortName, appGatewayName))); } ;
if (((options.port < constants.appGateway.settings.port[0]) || (options.port > constants.appGateway.settings.port[1]))) {
return _(new Error(util.format($("A frontend port value must be in range [%s]"), constants.appGateway.settings.port))); } ;
frontendPort = {
name: frontendPortName,
port: parseInt(options.port) };
self.output.warn("Application gateway add new frontend port command is a long-running process. It may take up to 15-20 minutes to complete.");
appGateway.frontendPorts.push(frontendPort);
return self._setAppGateway(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 21, 9, function __$addFrontendPort__13() { _(); }, true)); }, true)); }); },
removeFrontendPort: function removeFrontendPort__14(resourceGroup, appGatewayName, frontendPortName, options, _) { var self, appGateway, index, __this = this; var __frame = { name: "removeFrontendPort__14", line: 407 }; return __func(_, this, arguments, removeFrontendPort__14, 4, __frame, function __$removeFrontendPort__14() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __2) { appGateway = __2;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found in resource group \"%s\""), appGatewayName, resourceGroup))); } ;
index = utils.indexOfCaseIgnore(appGateway.frontendPorts, { name: frontendPortName });
if ((index === -1)) {
return _(new Error(util.format($("Frontend port with name \"%s\" not found for an application gateway \"%s\""), frontendPortName, appGatewayName))); } ; return (function __$removeFrontendPort__14(_) {
var __1 = !options.quiet; if (!__1) { return _(null, __1); } ; return self.interaction.confirm(util.format($("Delete a frontend port \"%s\"? [y/n] "), frontendPortName), __cb(_, __frame, 12, 44, function ___(__0, __3) { var __2 = !__3; return _(null, __2); }, true)); })(__cb(_, __frame, -406, 17, function ___(__0, __3) { return (function __$removeFrontendPort__14(__then) { if (__3) { return _(null); } else { __then(); } ; })(function __$removeFrontendPort__14() {
self.output.warn("Application gateway remove frontend port command is a long-running process. It may take up to 15-20 minutes to complete.");
appGateway.frontendPorts.splice(index, 1);
return self._setAppGateway(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 18, 9, function __$removeFrontendPort__14() { _(); }, true)); }); }, true)); }, true)); }); },
addBackendAddressPool: function addBackendAddressPool__15(resourceGroup, appGatewayName, poolName, options, _) { var self, dnsServers, appGateway, pool, addressPool, __this = this; var __frame = { name: "addBackendAddressPool__15", line: 428 }; return __func(_, this, arguments, addBackendAddressPool__15, 4, __frame, function __$addBackendAddressPool__15() { self = __this;
dnsServers = self._parseDnsServers(options);
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 3, 26, function ___(__0, __1) { appGateway = __1;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found in resource group \"%s\""), appGatewayName, resourceGroup))); } ;
pool = utils.findFirstCaseIgnore(appGateway.backendAddressPools, { name: poolName }); return (function __$addBackendAddressPool__15(__then) {
if (pool) {
return _(new Error(util.format($("A backend address pool with name \"%s\" already exists in application gateway \"%s\""), poolName, appGatewayName))); } else {
addressPool = {
name: poolName,
backendAddresses: dnsServers };
appGateway.backendAddressPools.push(addressPool);
return self._setAppGateway(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 18, 11, __then, true)); } ; })(_); }, true)); }); },
removeBackendAddressPool: function removeBackendAddressPool__16(resourceGroup, appGatewayName, poolName, options, _) { var self, appGateway, index, __this = this; var __frame = { name: "removeBackendAddressPool__16", line: 450 }; return __func(_, this, arguments, removeBackendAddressPool__16, 4, __frame, function __$removeBackendAddressPool__16() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __2) { appGateway = __2;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found in resource group \"%s\""), appGatewayName, resourceGroup))); } ;
index = utils.indexOfCaseIgnore(appGateway.backendAddressPools, { name: poolName }); return (function __$removeBackendAddressPool__16(__then) {
if ((index !== -1)) { return (function __$removeBackendAddressPool__16(_) {
var __1 = !options.quiet; if (!__1) { return _(null, __1); } ; return self.interaction.confirm(util.format($("Delete a backend address pool \"%s\"? [y/n] "), poolName), __cb(_, __frame, 9, 46, function ___(__0, __3) { var __2 = !__3; return _(null, __2); }, true)); })(__cb(_, __frame, -449, 17, function ___(__0, __3) { return (function __$removeBackendAddressPool__16(__then) { if (__3) { return _(null); } else { __then(); } ; })(function __$removeBackendAddressPool__16() {
appGateway.backendAddressPools.splice(index, 1);
return self._setAppGateway(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 13, 11, __then, true)); }); }, true)); } else {
return _(new Error(util.format($("A backend address pool with name \"%s\" not found for an application gateway \"%s\""), poolName, appGatewayName))); } ; })(_); }, true)); }); },
addHttpSettings: function addHttpSettings__17(resourceGroup, appGatewayName, httpSettingsName, options, _) { var self, appGateway, httpSettings, settings, __this = this; var __frame = { name: "addHttpSettings__17", line: 469 }; return __func(_, this, arguments, addHttpSettings__17, 4, __frame, function __$addHttpSettings__17() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __1) { appGateway = __1;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found in resource group \"%s\""), appGatewayName, resourceGroup))); } ;
httpSettings = self._parseHttpSettings(httpSettingsName, options, true);
settings = utils.findFirstCaseIgnore(appGateway.backendHttpSettingsCollection, { name: httpSettingsName }); return (function __$addHttpSettings__17(__then) {
if (settings) {
return _(new Error(util.format($("A http settings with name \"%s\" already exists for an application gateway \"%s\""), httpSettingsName, appGatewayName))); } else {
appGateway.backendHttpSettingsCollection.push(httpSettings);
return self._setAppGateway(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 13, 11, __then, true)); } ; })(_); }, true)); }); },
removeHttpSettings: function removeHttpSettings__18(resourceGroup, appGatewayName, httpSettingsName, options, _) { var self, appGateway, index, __this = this; var __frame = { name: "removeHttpSettings__18", line: 486 }; return __func(_, this, arguments, removeHttpSettings__18, 4, __frame, function __$removeHttpSettings__18() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __2) { appGateway = __2;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found in resource group \"%s\""), appGatewayName, resourceGroup))); } ;
index = utils.indexOfCaseIgnore(appGateway.backendHttpSettingsCollection, { name: httpSettingsName }); return (function __$removeHttpSettings__18(__then) {
if ((index !== -1)) { return (function __$removeHttpSettings__18(_) {
var __1 = !options.quiet; if (!__1) { return _(null, __1); } ; return self.interaction.confirm(util.format($("Delete an http settings \"%s\"? [y/n] "), httpSettingsName), __cb(_, __frame, 9, 46, function ___(__0, __3) { var __2 = !__3; return _(null, __2); }, true)); })(__cb(_, __frame, -485, 17, function ___(__0, __3) { return (function __$removeHttpSettings__18(__then) { if (__3) { return _(null); } else { __then(); } ; })(function __$removeHttpSettings__18() {
appGateway.backendHttpSettingsCollection.splice(index, 1);
return self._setAppGateway(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 13, 11, __then, true)); }); }, true)); } else {
return _(new Error(util.format($("An http settings with name \"%s\" not found for an application gateway \"%s\""), httpSettingsName, appGatewayName))); } ; })(_); }, true)); }); },
addHttpListener: function addHttpListener__19(resourceGroup, appGatewayName, httpListenerName, options, _) { var self, appGateway, httpListener, frontendIp, frontendPort, protocol, sslCert, __this = this; var __frame = { name: "addHttpListener__19", line: 505 }; return __func(_, this, arguments, addHttpListener__19, 4, __frame, function __$addHttpListener__19() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __1) { appGateway = __1;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found in resource group \"%s\""), appGatewayName, resourceGroup))); } ;
if ((!appGateway.httpListeners || !appGateway.httpListeners.length)) {
appGateway.httpListeners = []; } ;
if (utils.findFirstCaseIgnore(appGateway.httpListeners, { name: httpListenerName })) {
return _(new Error(util.format($("An http listener with name \"%s\" already exists for an application gateway \"%s\""), httpListenerName, appGatewayName))); } ;
httpListener = {
name: httpListenerName,
protocol: constants.appGateway.settings.protocol[0] };
if (options.frontendIpName) {
frontendIp = utils.findFirstCaseIgnore(appGateway.frontendIPConfigurations, { name: options.frontendIpName });
if (!frontendIp) {
return _(new Error(util.format($("Frontend ip with name \"%s\" not found for an application gateway \"%s\""), options.frontendIpName, appGatewayName))); } ;
httpListener.frontendIPConfiguration = frontendIp; } ;
if (options.frontendPortName) {
frontendPort = utils.findFirstCaseIgnore(appGateway.frontendPorts, { name: options.frontendPortName });
if (!frontendPort) {
return _(new Error(util.format($("Frontend port with name \"%s\" not found for an application gateway \"%s\""), options.frontendPortName, appGatewayName))); } ;
httpListener.frontendPort = frontendPort; } ;
if (options.protocol) {
protocol = options.protocol.toLowerCase();
if (((protocol === "https") && !options.sslCert)) {
return _(new Error($("--ssl-cert parameter is required, when \"--protocol Https\" parameter is specified"))); } ;
if (((protocol !== "http") && (protocol != "https"))) {
return _(new Error(util.format($("\"%s\" protocol is not valid. Valid values are [%s]"), constants.appGateway.httpListener.protocol))); } ;
httpListener.protocol = utils.capitalizeFirstLetter(protocol); } ;
if (options.sslCert) {
sslCert = utils.findFirstCaseIgnore(appGateway.sslCertificates, { name: options.sslCert });
if (!sslCert) {
return _(new Error(util.format($("SSL certificate with name \"%s\" not found for an application gateway \"%s\""), options.sslCert, appGatewayName))); } ;
httpListener.sslCertificate = sslCert; } ;
self.output.warn("Application gateway add new http listener command is a long-running process. It may take up to 15-20 minutes to complete.");
appGateway.httpListeners.push(httpListener);
return self._setAppGateway(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 57, 9, function __$addHttpListener__19() { _(); }, true)); }, true)); }); },
removeHttpListener: function removeHttpListener__20(resourceGroup, appGatewayName, httpListenerName, options, _) { var self, appGateway, index, __this = this; var __frame = { name: "removeHttpListener__20", line: 565 }; return __func(_, this, arguments, removeHttpListener__20, 4, __frame, function __$removeHttpListener__20() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __2) { appGateway = __2;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found in resource group \"%s\""), appGatewayName, resourceGroup))); } ;
index = utils.indexOfCaseIgnore(appGateway.httpListeners, { name: httpListenerName });
if ((index === -1)) {
return _(new Error(util.format($("Http listener with name \"%s\" not found for an application gateway \"%s\""), httpListenerName, appGatewayName))); } ; return (function __$removeHttpListener__20(_) {
var __1 = !options.quiet; if (!__1) { return _(null, __1); } ; return self.interaction.confirm(util.format($("Delete http listener \"%s\"? [y/n] "), httpListenerName), __cb(_, __frame, 12, 44, function ___(__0, __3) { var __2 = !__3; return _(null, __2); }, true)); })(__cb(_, __frame, -564, 17, function ___(__0, __3) { return (function __$removeHttpListener__20(__then) { if (__3) { return _(null); } else { __then(); } ; })(function __$removeHttpListener__20() {
self.output.warn("Application gateway remove http listener command is a long-running process. It may take up to 15-20 minutes to complete.");
appGateway.httpListeners.splice(index, 1);
return self._setAppGateway(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 18, 9, function __$removeHttpListener__20() { _(); }, true)); }); }, true)); }, true)); }); },
addRequestRoutingRule: function addRequestRoutingRule__21(resourceGroup, appGatewayName, ruleName, options, _) { var self, appGateway, backendHttpSettings, httpListener, backendAddressPool, rule, __this = this; var __frame = { name: "addRequestRoutingRule__21", line: 586 }; return __func(_, this, arguments, addRequestRoutingRule__21, 4, __frame, function __$addRequestRoutingRule__21() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __1) { appGateway = __1;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found"), appGatewayName))); } ;
if (utils.findFirstCaseIgnore(appGateway.requestRoutingRules, { name: ruleName })) {
return _(new Error(util.format($("A request routing rule with name \"%s\" already exists in application gateway \"%s\""), ruleName, appGatewayName))); } ;
backendHttpSettings = utils.findFirstCaseIgnore(appGateway.backendHttpSettingsCollection, { name: options.httpSettingsName });
if (!backendHttpSettings) {
return _(new Error(util.format($("A backend http settings with name \"%s\" not found in application gateway \"%s\""), options.httpSettingsName, appGatewayName))); } ;
httpListener = utils.findFirstCaseIgnore(appGateway.httpListeners, { name: options.httpListenerName });
if (!httpListener) {
return _(new Error(util.format($("Http listener with name \"%s\" not found for an application gateway \"%s\""), options.httpListenerName, appGatewayName))); } ;
backendAddressPool = utils.findFirstCaseIgnore(appGateway.backendAddressPools, { name: options.addressPoolName });
if (!backendAddressPool) {
return _(new Error(util.format($("Address pool with name \"%s\" not found for an application gateway \"%s\""), options.addressPoolName, appGatewayName))); } ;
rule = {
name: ruleName,
type: constants.appGateway.routingRule.type[0],
backendHttpSettings: backendHttpSettings,
httpListener: httpListener,
backendAddressPool: backendAddressPool };
if (options.type) {
utils.verifyParamExistsInCollection(constants.appGateway.routingRule.type, options.type, "--type");
rule.type = options.type; } ;
appGateway.requestRoutingRules.push(rule);
return self._setAppGateway(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 40, 9, function __$addRequestRoutingRule__21() { _(); }, true)); }, true)); }); },
removeRequestRoutingRule: function removeRequestRoutingRule__22(resourceGroup, appGatewayName, ruleName, options, _) { var self, appGateway, index, __this = this; var __frame = { name: "removeRequestRoutingRule__22", line: 629 }; return __func(_, this, arguments, removeRequestRoutingRule__22, 4, __frame, function __$removeRequestRoutingRule__22() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __2) { appGateway = __2;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found"), appGatewayName))); } ;
index = utils.indexOfCaseIgnore(appGateway.requestRoutingRules, { name: ruleName });
if ((index === -1)) {
return _(new Error(util.format($("An request routing rule with name \"%s\" not found in application gateway \"%s\""), ruleName, appGatewayName))); } ; return (function __$removeRequestRoutingRule__22(_) {
var __1 = !options.quiet; if (!__1) { return _(null, __1); } ; return self.interaction.confirm(util.format($("Delete request routing rule \"%s\"? [y/n] "), ruleName), __cb(_, __frame, 12, 44, function ___(__0, __3) { var __2 = !__3; return _(null, __2); }, true)); })(__cb(_, __frame, -628, 17, function ___(__0, __3) { return (function __$removeRequestRoutingRule__22(__then) { if (__3) { return _(null); } else { __then(); } ; })(function __$removeRequestRoutingRule__22() {
appGateway.requestRoutingRules.splice(index, 1);
return self._setAppGateway(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 16, 9, function __$removeRequestRoutingRule__22() { _(); }, true)); }); }, true)); }, true)); }); },
addProbe: function addProbe__23(resourceGroup, appGatewayName, probeName, options, _) { var self, appGateway, probe, __this = this; var __frame = { name: "addProbe__23", line: 648 }; return __func(_, this, arguments, addProbe__23, 4, __frame, function __$addProbe__23() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __1) { appGateway = __1;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found"), appGatewayName))); } ;
if (utils.findFirstCaseIgnore(appGateway.probes, { name: probeName })) {
return _(new Error(util.format($("A probe with name \"%s\" already exists in application gateway \"%s\""), probeName, appGatewayName))); } ;
probe = self._parseProbe(resourceGroup, appGatewayName, probeName, options);
appGateway.probes.push(probe);
return self._setAppGateway(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 13, 9, function __$addProbe__23() { _(); }, true)); }, true)); }); },
removeProbe: function removeProbe__24(resourceGroup, appGatewayName, probeName, options, _) { var self, appGateway, index, __this = this; var __frame = { name: "removeProbe__24", line: 664 }; return __func(_, this, arguments, removeProbe__24, 4, __frame, function __$removeProbe__24() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __2) { appGateway = __2;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found"), appGatewayName))); } ;
index = utils.indexOfCaseIgnore(appGateway.probes, { name: probeName });
if ((index === -1)) {
return _(new Error(util.format($("A probe with name \"%s\" not found in application gateway \"%s\""), probeName, appGatewayName))); } ; return (function __$removeProbe__24(_) {
var __1 = !options.quiet; if (!__1) { return _(null, __1); } ; return self.interaction.confirm(util.format($("Delete probe \"%s\"? [y/n] "), probeName), __cb(_, __frame, 12, 44, function ___(__0, __3) { var __2 = !__3; return _(null, __2); }, true)); })(__cb(_, __frame, -663, 17, function ___(__0, __3) { return (function __$removeProbe__24(__then) { if (__3) { return _(null); } else { __then(); } ; })(function __$removeProbe__24() {
appGateway.probes.splice(index, 1);
return self._setAppGateway(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 16, 9, function __$removeProbe__24() { _(); }, true)); }); }, true)); }, true)); }); },
addUrlPathMap: function addUrlPathMap__25(resourceGroup, appGatewayName, urlPathMapName, options, _) { var self, appGateway, backendHttpSettings, backendAddressPool, urlPathMap, __this = this; var __frame = { name: "addUrlPathMap__25", line: 683 }; return __func(_, this, arguments, addUrlPathMap__25, 4, __frame, function __$addUrlPathMap__25() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __1) { appGateway = __1;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found"), appGatewayName))); } ;
if (utils.findFirstCaseIgnore(appGateway.urlPathMaps, { name: urlPathMapName })) {
return _(new Error(util.format($("An url path map with name \"%s\" already exists in application gateway \"%s\""), urlPathMapName, appGatewayName))); } ;
backendHttpSettings = utils.findFirstCaseIgnore(appGateway.backendHttpSettingsCollection, { name: options.httpSettingsName });
if (!backendHttpSettings) {
return _(new Error(util.format($("A backend http settings with name \"%s\" not found in application gateway \"%s\""), options.httpSettingsName, appGatewayName))); } ;
backendAddressPool = utils.findFirstCaseIgnore(appGateway.backendAddressPools, { name: options.addressPoolName });
if (!backendAddressPool) {
return _(new Error(util.format($("Address pool with name \"%s\" not found for an application gateway \"%s\""), options.addressPoolName, appGatewayName))); } ;
urlPathMap = {
name: urlPathMapName,
defaultBackendAddressPool: {
id: backendAddressPool.id },
defaultBackendHttpSettings: {
id: backendHttpSettings.id },
pathRules: [{
name: options.ruleName,
paths: [options.path,],
backendAddressPool: { id: backendAddressPool.id },
backendHttpSettings: { id: backendHttpSettings.id } },] };
appGateway.urlPathMaps.push(urlPathMap);
return self._setAppGateway(resourceGroup, appGatewayName, appGateway, __cb(_, __frame, 38, 9, function __$addUrlPathMap__25() { _(); }, true)); }, true)); }); },
removeUrlPathMap: function removeUrlPathMap__26(resourceGroup, appGatewayName, urlPathMapName, options, _) { var self, appGateway, index, __this = this; var __frame = { name: "removeUrlPathMap__26", line: 724 }; return __func(_, this, arguments, removeUrlPathMap__26, 4, __frame, function __$removeUrlPathMap__26() { self = __this;
return self.get(resourceGroup, appGatewayName, __cb(_, __frame, 2, 26, function ___(__0, __2) { appGateway = __2;
if (!appGateway) {
return _(new Error(util.format($("Application gateway \"%s\" not found"), appGatewayName))); } ;
index = utils.indexOfCaseIgnore(appGateway.urlPathMaps, { name: urlPathMapName });
if ((index === -1)) {
return _(new Error(util.format($("An url path map with name \"%s\" not found in application gateway \"%s\""), urlPathMapName, appGatewayName))); } ; return (function __$removeUrlPathMap__26(_) {
var __1 = !options.quiet; if (!__1) { return _(null, __1); } ; return self.interaction.confirm(util.format($("Delete url path map \"%s\"? [y/n] "), urlPathMapName), __cb(_, __frame, 12,