UNPKG

azure-cli

Version:

Microsoft Azure Cross Platform Command Line tool

172 lines (166 loc) 6.15 kB
/* * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for * license information. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is * regenerated. */ 'use strict'; const models = require('./index'); /** * Describes a virtual machine scale set network profile's IP configuration. * * @extends models['SubResource'] */ class VirtualMachineScaleSetIPConfiguration extends models['SubResource'] { /** * Create a VirtualMachineScaleSetIPConfiguration. * @member {string} name The IP configuration name. * @member {object} [subnet] Specifies the identifier of the subnet. * @member {string} [subnet.id] The ARM resource id in the form of * /subscriptions/{SubcriptionId}/resourceGroups/{ResourceGroupName}/... * @member {boolean} [primary] Specifies the primary network interface in * case the virtual machine has more than 1 network interface. * @member {object} [publicIPAddressConfiguration] The * publicIPAddressConfiguration. * @member {string} [publicIPAddressConfiguration.name] The publicIP address * configuration name. * @member {number} [publicIPAddressConfiguration.idleTimeoutInMinutes] The * idle timeout of the public IP address. * @member {object} [publicIPAddressConfiguration.dnsSettings] The dns * settings to be applied on the publicIP addresses . * @member {string} * [publicIPAddressConfiguration.dnsSettings.domainNameLabel] The Domain name * label.The concatenation of the domain name label and vm index will be the * domain name labels of the PublicIPAddress resources that will be created * @member {string} [privateIPAddressVersion] Available from Api-Version * 2017-03-30 onwards, it represents whether the specific ipconfiguration is * IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and * 'IPv6'. Possible values include: 'IPv4', 'IPv6' * @member {array} [applicationGatewayBackendAddressPools] Specifies an array * of references to backend address pools of application gateways. A scale * set can reference backend address pools of multiple application gateways. * Multiple scale sets cannot use the same application gateway. * @member {array} [loadBalancerBackendAddressPools] Specifies an array of * references to backend address pools of load balancers. A scale set can * reference backend address pools of one public and one internal load * balancer. Multiple scale sets cannot use the same load balancer. * @member {array} [loadBalancerInboundNatPools] Specifies an array of * references to inbound Nat pools of the load balancers. A scale set can * reference inbound nat pools of one public and one internal load balancer. * Multiple scale sets cannot use the same load balancer */ constructor() { super(); } /** * Defines the metadata of VirtualMachineScaleSetIPConfiguration * * @returns {object} metadata of VirtualMachineScaleSetIPConfiguration * */ mapper() { return { required: false, serializedName: 'VirtualMachineScaleSetIPConfiguration', type: { name: 'Composite', className: 'VirtualMachineScaleSetIPConfiguration', modelProperties: { id: { required: false, serializedName: 'id', type: { name: 'String' } }, name: { required: true, serializedName: 'name', type: { name: 'String' } }, subnet: { required: false, serializedName: 'properties.subnet', type: { name: 'Composite', className: 'ApiEntityReference' } }, primary: { required: false, serializedName: 'properties.primary', type: { name: 'Boolean' } }, publicIPAddressConfiguration: { required: false, serializedName: 'properties.publicIPAddressConfiguration', type: { name: 'Composite', className: 'VirtualMachineScaleSetPublicIPAddressConfiguration' } }, privateIPAddressVersion: { required: false, serializedName: 'properties.privateIPAddressVersion', type: { name: 'String' } }, applicationGatewayBackendAddressPools: { required: false, serializedName: 'properties.applicationGatewayBackendAddressPools', type: { name: 'Sequence', element: { required: false, serializedName: 'SubResourceElementType', type: { name: 'Composite', className: 'SubResource' } } } }, loadBalancerBackendAddressPools: { required: false, serializedName: 'properties.loadBalancerBackendAddressPools', type: { name: 'Sequence', element: { required: false, serializedName: 'SubResourceElementType', type: { name: 'Composite', className: 'SubResource' } } } }, loadBalancerInboundNatPools: { required: false, serializedName: 'properties.loadBalancerInboundNatPools', type: { name: 'Sequence', element: { required: false, serializedName: 'SubResourceElementType', type: { name: 'Composite', className: 'SubResource' } } } } } } }; } } module.exports = VirtualMachineScaleSetIPConfiguration;