@pulumi/awsx
Version:
[](https://github.com/pulumi/pulumi-awsx/actions) [](https://slack.pulumi.com) [;
exports.ApplicationLoadBalancer = void 0;
const pulumi = require("@pulumi/pulumi");
const inputs = require("../types/input");
const utilities = require("../utilities");
/**
* Provides an Application Load Balancer resource with listeners, default target group and default security group.
*/
class ApplicationLoadBalancer extends pulumi.ComponentResource {
/**
* Returns true if the given object is an instance of ApplicationLoadBalancer. 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'] === ApplicationLoadBalancer.__pulumiType;
}
/**
* Create a ApplicationLoadBalancer 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["defaultSecurityGroup"] = args ? (args.defaultSecurityGroup ? inputs.awsx.defaultSecurityGroupArgsProvideDefaults(args.defaultSecurityGroup) : undefined) : 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["enableDeletionProtection"] = args ? args.enableDeletionProtection : undefined;
resourceInputs["enableHttp2"] = args ? args.enableHttp2 : 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["defaultSecurityGroup"] = undefined /*out*/;
resourceInputs["defaultTargetGroup"] = undefined /*out*/;
resourceInputs["listeners"] = undefined /*out*/;
resourceInputs["loadBalancer"] = undefined /*out*/;
resourceInputs["vpcId"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(ApplicationLoadBalancer.__pulumiType, name, resourceInputs, opts, true /*remote*/);
}
}
exports.ApplicationLoadBalancer = ApplicationLoadBalancer;
/** @internal */
ApplicationLoadBalancer.__pulumiType = 'awsx:lb:ApplicationLoadBalancer';
//# sourceMappingURL=applicationLoadBalancer.js.map