TrafficSourceAttachmentArgs

data class TrafficSourceAttachmentArgs(val autoscalingGroupName: Output<String>? = null, val trafficSource: Output<TrafficSourceAttachmentTrafficSourceArgs>? = null) : ConvertibleToJava<TrafficSourceAttachmentArgs>

Attaches a traffic source to an Auto Scaling group.

NOTE on Auto Scaling Groups, Attachments and Traffic Source Attachments: Pulumi provides standalone Attachment (for attaching Classic Load Balancers and Application Load Balancer, Gateway Load Balancer, or Network Load Balancer target groups) and Traffic Source Attachment (for attaching Load Balancers and VPC Lattice target groups) resources and an Auto Scaling Group resource with load_balancers, target_group_arns and traffic_source attributes. Do not use the same traffic source in more than one of these resources. Doing so will cause a conflict of attachments. A lifecycle configuration block can be used to suppress differences if necessary.

Example Usage

Basic Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.autoscaling.TrafficSourceAttachment("example", {
autoscalingGroupName: exampleAwsAutoscalingGroup.id,
trafficSource: {
identifier: exampleAwsLbTargetGroup.arn,
type: "elbv2",
},
});
import pulumi
import pulumi_aws as aws
example = aws.autoscaling.TrafficSourceAttachment("example",
autoscaling_group_name=example_aws_autoscaling_group["id"],
traffic_source={
"identifier": example_aws_lb_target_group["arn"],
"type": "elbv2",
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.AutoScaling.TrafficSourceAttachment("example", new()
{
AutoscalingGroupName = exampleAwsAutoscalingGroup.Id,
TrafficSource = new Aws.AutoScaling.Inputs.TrafficSourceAttachmentTrafficSourceArgs
{
Identifier = exampleAwsLbTargetGroup.Arn,
Type = "elbv2",
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/autoscaling"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := autoscaling.NewTrafficSourceAttachment(ctx, "example", &autoscaling.TrafficSourceAttachmentArgs{
AutoscalingGroupName: pulumi.Any(exampleAwsAutoscalingGroup.Id),
TrafficSource: &autoscaling.TrafficSourceAttachmentTrafficSourceArgs{
Identifier: pulumi.Any(exampleAwsLbTargetGroup.Arn),
Type: pulumi.String("elbv2"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.autoscaling.TrafficSourceAttachment;
import com.pulumi.aws.autoscaling.TrafficSourceAttachmentArgs;
import com.pulumi.aws.autoscaling.inputs.TrafficSourceAttachmentTrafficSourceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new TrafficSourceAttachment("example", TrafficSourceAttachmentArgs.builder()
.autoscalingGroupName(exampleAwsAutoscalingGroup.id())
.trafficSource(TrafficSourceAttachmentTrafficSourceArgs.builder()
.identifier(exampleAwsLbTargetGroup.arn())
.type("elbv2")
.build())
.build());
}
}
resources:
example:
type: aws:autoscaling:TrafficSourceAttachment
properties:
autoscalingGroupName: ${exampleAwsAutoscalingGroup.id}
trafficSource:
identifier: ${exampleAwsLbTargetGroup.arn}
type: elbv2

Constructors

Link copied to clipboard
constructor(autoscalingGroupName: Output<String>? = null, trafficSource: Output<TrafficSourceAttachmentTrafficSourceArgs>? = null)

Properties

Link copied to clipboard
val autoscalingGroupName: Output<String>? = null

The name of the Auto Scaling group.

Link copied to clipboard

The unique identifiers of a traffic sources.

Functions

Link copied to clipboard
open override fun toJava(): TrafficSourceAttachmentArgs