@pulumi/awsx
Version:
[](https://github.com/pulumi/pulumi-awsx/actions) [](https://slack.pulumi.com) [;
exports.NetworkLoadBalancer = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../utilities");
/**
* Provides a Network Load Balancer resource with listeners and default target group.
*/
class NetworkLoadBalancer extends pulumi.ComponentResource {
/**
* Returns true if the given object is an instance of NetworkLoadBalancer. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === NetworkLoadBalancer.__pulumiType;
}
/**
* Create a NetworkLoadBalancer resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name, args, opts) {
let resourceInputs = {};
opts = opts || {};
if (!opts.id) {
resourceInputs["accessLogs"] = args ? args.accessLogs : undefined;
resourceInputs["clientKeepAlive"] = args ? args.clientKeepAlive : undefined;
resourceInputs["connectionLogs"] = args ? args.connectionLogs : undefined;
resourceInputs["customerOwnedIpv4Pool"] = args ? args.customerOwnedIpv4Pool : undefined;
resourceInputs["defaultTargetGroup"] = args ? args.defaultTargetGroup : undefined;
resourceInputs["defaultTargetGroupPort"] = args ? args.defaultTargetGroupPort : undefined;
resourceInputs["desyncMitigationMode"] = args ? args.desyncMitigationMode : undefined;
resourceInputs["dnsRecordClientRoutingPolicy"] = args ? args.dnsRecordClientRoutingPolicy : undefined;
resourceInputs["dropInvalidHeaderFields"] = args ? args.dropInvalidHeaderFields : undefined;
resourceInputs["enableCrossZoneLoadBalancing"] = args ? args.enableCrossZoneLoadBalancing : undefined;
resourceInputs["enableDeletionProtection"] = args ? args.enableDeletionProtection : undefined;
resourceInputs["enableTlsVersionAndCipherSuiteHeaders"] = args ? args.enableTlsVersionAndCipherSuiteHeaders : undefined;
resourceInputs["enableWafFailOpen"] = args ? args.enableWafFailOpen : undefined;
resourceInputs["enableXffClientPort"] = args ? args.enableXffClientPort : undefined;
resourceInputs["enableZonalShift"] = args ? args.enableZonalShift : undefined;
resourceInputs["enforceSecurityGroupInboundRulesOnPrivateLinkTraffic"] = args ? args.enforceSecurityGroupInboundRulesOnPrivateLinkTraffic : undefined;
resourceInputs["idleTimeout"] = args ? args.idleTimeout : undefined;
resourceInputs["internal"] = args ? args.internal : undefined;
resourceInputs["ipAddressType"] = args ? args.ipAddressType : undefined;
resourceInputs["ipamPools"] = args ? args.ipamPools : undefined;
resourceInputs["listener"] = args ? args.listener : undefined;
resourceInputs["listeners"] = args ? args.listeners : undefined;
resourceInputs["minimumLoadBalancerCapacity"] = args ? args.minimumLoadBalancerCapacity : undefined;
resourceInputs["name"] = args ? args.name : undefined;
resourceInputs["namePrefix"] = args ? args.namePrefix : undefined;
resourceInputs["preserveHostHeader"] = args ? args.preserveHostHeader : undefined;
resourceInputs["region"] = args ? args.region : undefined;
resourceInputs["securityGroups"] = args ? args.securityGroups : undefined;
resourceInputs["subnetIds"] = args ? args.subnetIds : undefined;
resourceInputs["subnetMappings"] = args ? args.subnetMappings : undefined;
resourceInputs["subnets"] = args ? args.subnets : undefined;
resourceInputs["tags"] = args ? args.tags : undefined;
resourceInputs["xffHeaderProcessingMode"] = args ? args.xffHeaderProcessingMode : undefined;
resourceInputs["loadBalancer"] = undefined /*out*/;
resourceInputs["vpcId"] = undefined /*out*/;
}
else {
resourceInputs["defaultTargetGroup"] = undefined /*out*/;
resourceInputs["listeners"] = undefined /*out*/;
resourceInputs["loadBalancer"] = undefined /*out*/;
resourceInputs["vpcId"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(NetworkLoadBalancer.__pulumiType, name, resourceInputs, opts, true /*remote*/);
}
}
exports.NetworkLoadBalancer = NetworkLoadBalancer;
/** @internal */
NetworkLoadBalancer.__pulumiType = 'awsx:lb:NetworkLoadBalancer';
//# sourceMappingURL=networkLoadBalancer.js.map