github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/lb/getTargetGroup.go (about) 1 // Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. 2 // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** 3 4 package lb 5 6 import ( 7 "context" 8 "reflect" 9 10 "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" 11 "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 12 ) 13 14 // > **Note:** `alb.TargetGroup` is known as `lb.TargetGroup`. The functionality is identical. 15 // 16 // Provides information about a Load Balancer Target Group. 17 // 18 // This data source can prove useful when a module accepts an LB Target Group as an 19 // input variable and needs to know its attributes. It can also be used to get the ARN of 20 // an LB Target Group for use in other resources, given LB Target Group name. 21 // 22 // ## Example Usage 23 // 24 // <!--Start PulumiCodeChooser --> 25 // ```go 26 // package main 27 // 28 // import ( 29 // 30 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/lb" 31 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 32 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi/config" 33 // 34 // ) 35 // 36 // func main() { 37 // pulumi.Run(func(ctx *pulumi.Context) error { 38 // cfg := config.New(ctx, "") 39 // lbTgArn := "" 40 // if param := cfg.Get("lbTgArn"); param != "" { 41 // lbTgArn = param 42 // } 43 // lbTgName := "" 44 // if param := cfg.Get("lbTgName"); param != "" { 45 // lbTgName = param 46 // } 47 // _, err := lb.LookupTargetGroup(ctx, &lb.LookupTargetGroupArgs{ 48 // Arn: pulumi.StringRef(lbTgArn), 49 // Name: pulumi.StringRef(lbTgName), 50 // }, nil) 51 // if err != nil { 52 // return err 53 // } 54 // return nil 55 // }) 56 // } 57 // 58 // ``` 59 // <!--End PulumiCodeChooser --> 60 func LookupTargetGroup(ctx *pulumi.Context, args *LookupTargetGroupArgs, opts ...pulumi.InvokeOption) (*LookupTargetGroupResult, error) { 61 opts = internal.PkgInvokeDefaultOpts(opts) 62 var rv LookupTargetGroupResult 63 err := ctx.Invoke("aws:lb/getTargetGroup:getTargetGroup", args, &rv, opts...) 64 if err != nil { 65 return nil, err 66 } 67 return &rv, nil 68 } 69 70 // A collection of arguments for invoking getTargetGroup. 71 type LookupTargetGroupArgs struct { 72 // Full ARN of the target group. 73 Arn *string `pulumi:"arn"` 74 LoadBalancingAnomalyMitigation *string `pulumi:"loadBalancingAnomalyMitigation"` 75 // Unique name of the target group. 76 Name *string `pulumi:"name"` 77 // Mapping of tags, each pair of which must exactly match a pair on the desired target group. 78 // 79 // > **NOTE:** When both `arn` and `name` are specified, `arn` takes precedence. `tags` has the lowest precedence. 80 Tags map[string]string `pulumi:"tags"` 81 } 82 83 // A collection of values returned by getTargetGroup. 84 type LookupTargetGroupResult struct { 85 Arn string `pulumi:"arn"` 86 ArnSuffix string `pulumi:"arnSuffix"` 87 ConnectionTermination bool `pulumi:"connectionTermination"` 88 DeregistrationDelay string `pulumi:"deregistrationDelay"` 89 HealthCheck GetTargetGroupHealthCheck `pulumi:"healthCheck"` 90 // The provider-assigned unique ID for this managed resource. 91 Id string `pulumi:"id"` 92 LambdaMultiValueHeadersEnabled bool `pulumi:"lambdaMultiValueHeadersEnabled"` 93 LoadBalancerArns []string `pulumi:"loadBalancerArns"` 94 LoadBalancingAlgorithmType string `pulumi:"loadBalancingAlgorithmType"` 95 LoadBalancingAnomalyMitigation string `pulumi:"loadBalancingAnomalyMitigation"` 96 LoadBalancingCrossZoneEnabled string `pulumi:"loadBalancingCrossZoneEnabled"` 97 Name string `pulumi:"name"` 98 Port int `pulumi:"port"` 99 PreserveClientIp string `pulumi:"preserveClientIp"` 100 Protocol string `pulumi:"protocol"` 101 ProtocolVersion string `pulumi:"protocolVersion"` 102 ProxyProtocolV2 bool `pulumi:"proxyProtocolV2"` 103 SlowStart int `pulumi:"slowStart"` 104 Stickiness GetTargetGroupStickiness `pulumi:"stickiness"` 105 Tags map[string]string `pulumi:"tags"` 106 TargetType string `pulumi:"targetType"` 107 VpcId string `pulumi:"vpcId"` 108 } 109 110 func LookupTargetGroupOutput(ctx *pulumi.Context, args LookupTargetGroupOutputArgs, opts ...pulumi.InvokeOption) LookupTargetGroupResultOutput { 111 return pulumi.ToOutputWithContext(context.Background(), args). 112 ApplyT(func(v interface{}) (LookupTargetGroupResult, error) { 113 args := v.(LookupTargetGroupArgs) 114 r, err := LookupTargetGroup(ctx, &args, opts...) 115 var s LookupTargetGroupResult 116 if r != nil { 117 s = *r 118 } 119 return s, err 120 }).(LookupTargetGroupResultOutput) 121 } 122 123 // A collection of arguments for invoking getTargetGroup. 124 type LookupTargetGroupOutputArgs struct { 125 // Full ARN of the target group. 126 Arn pulumi.StringPtrInput `pulumi:"arn"` 127 LoadBalancingAnomalyMitigation pulumi.StringPtrInput `pulumi:"loadBalancingAnomalyMitigation"` 128 // Unique name of the target group. 129 Name pulumi.StringPtrInput `pulumi:"name"` 130 // Mapping of tags, each pair of which must exactly match a pair on the desired target group. 131 // 132 // > **NOTE:** When both `arn` and `name` are specified, `arn` takes precedence. `tags` has the lowest precedence. 133 Tags pulumi.StringMapInput `pulumi:"tags"` 134 } 135 136 func (LookupTargetGroupOutputArgs) ElementType() reflect.Type { 137 return reflect.TypeOf((*LookupTargetGroupArgs)(nil)).Elem() 138 } 139 140 // A collection of values returned by getTargetGroup. 141 type LookupTargetGroupResultOutput struct{ *pulumi.OutputState } 142 143 func (LookupTargetGroupResultOutput) ElementType() reflect.Type { 144 return reflect.TypeOf((*LookupTargetGroupResult)(nil)).Elem() 145 } 146 147 func (o LookupTargetGroupResultOutput) ToLookupTargetGroupResultOutput() LookupTargetGroupResultOutput { 148 return o 149 } 150 151 func (o LookupTargetGroupResultOutput) ToLookupTargetGroupResultOutputWithContext(ctx context.Context) LookupTargetGroupResultOutput { 152 return o 153 } 154 155 func (o LookupTargetGroupResultOutput) Arn() pulumi.StringOutput { 156 return o.ApplyT(func(v LookupTargetGroupResult) string { return v.Arn }).(pulumi.StringOutput) 157 } 158 159 func (o LookupTargetGroupResultOutput) ArnSuffix() pulumi.StringOutput { 160 return o.ApplyT(func(v LookupTargetGroupResult) string { return v.ArnSuffix }).(pulumi.StringOutput) 161 } 162 163 func (o LookupTargetGroupResultOutput) ConnectionTermination() pulumi.BoolOutput { 164 return o.ApplyT(func(v LookupTargetGroupResult) bool { return v.ConnectionTermination }).(pulumi.BoolOutput) 165 } 166 167 func (o LookupTargetGroupResultOutput) DeregistrationDelay() pulumi.StringOutput { 168 return o.ApplyT(func(v LookupTargetGroupResult) string { return v.DeregistrationDelay }).(pulumi.StringOutput) 169 } 170 171 func (o LookupTargetGroupResultOutput) HealthCheck() GetTargetGroupHealthCheckOutput { 172 return o.ApplyT(func(v LookupTargetGroupResult) GetTargetGroupHealthCheck { return v.HealthCheck }).(GetTargetGroupHealthCheckOutput) 173 } 174 175 // The provider-assigned unique ID for this managed resource. 176 func (o LookupTargetGroupResultOutput) Id() pulumi.StringOutput { 177 return o.ApplyT(func(v LookupTargetGroupResult) string { return v.Id }).(pulumi.StringOutput) 178 } 179 180 func (o LookupTargetGroupResultOutput) LambdaMultiValueHeadersEnabled() pulumi.BoolOutput { 181 return o.ApplyT(func(v LookupTargetGroupResult) bool { return v.LambdaMultiValueHeadersEnabled }).(pulumi.BoolOutput) 182 } 183 184 func (o LookupTargetGroupResultOutput) LoadBalancerArns() pulumi.StringArrayOutput { 185 return o.ApplyT(func(v LookupTargetGroupResult) []string { return v.LoadBalancerArns }).(pulumi.StringArrayOutput) 186 } 187 188 func (o LookupTargetGroupResultOutput) LoadBalancingAlgorithmType() pulumi.StringOutput { 189 return o.ApplyT(func(v LookupTargetGroupResult) string { return v.LoadBalancingAlgorithmType }).(pulumi.StringOutput) 190 } 191 192 func (o LookupTargetGroupResultOutput) LoadBalancingAnomalyMitigation() pulumi.StringOutput { 193 return o.ApplyT(func(v LookupTargetGroupResult) string { return v.LoadBalancingAnomalyMitigation }).(pulumi.StringOutput) 194 } 195 196 func (o LookupTargetGroupResultOutput) LoadBalancingCrossZoneEnabled() pulumi.StringOutput { 197 return o.ApplyT(func(v LookupTargetGroupResult) string { return v.LoadBalancingCrossZoneEnabled }).(pulumi.StringOutput) 198 } 199 200 func (o LookupTargetGroupResultOutput) Name() pulumi.StringOutput { 201 return o.ApplyT(func(v LookupTargetGroupResult) string { return v.Name }).(pulumi.StringOutput) 202 } 203 204 func (o LookupTargetGroupResultOutput) Port() pulumi.IntOutput { 205 return o.ApplyT(func(v LookupTargetGroupResult) int { return v.Port }).(pulumi.IntOutput) 206 } 207 208 func (o LookupTargetGroupResultOutput) PreserveClientIp() pulumi.StringOutput { 209 return o.ApplyT(func(v LookupTargetGroupResult) string { return v.PreserveClientIp }).(pulumi.StringOutput) 210 } 211 212 func (o LookupTargetGroupResultOutput) Protocol() pulumi.StringOutput { 213 return o.ApplyT(func(v LookupTargetGroupResult) string { return v.Protocol }).(pulumi.StringOutput) 214 } 215 216 func (o LookupTargetGroupResultOutput) ProtocolVersion() pulumi.StringOutput { 217 return o.ApplyT(func(v LookupTargetGroupResult) string { return v.ProtocolVersion }).(pulumi.StringOutput) 218 } 219 220 func (o LookupTargetGroupResultOutput) ProxyProtocolV2() pulumi.BoolOutput { 221 return o.ApplyT(func(v LookupTargetGroupResult) bool { return v.ProxyProtocolV2 }).(pulumi.BoolOutput) 222 } 223 224 func (o LookupTargetGroupResultOutput) SlowStart() pulumi.IntOutput { 225 return o.ApplyT(func(v LookupTargetGroupResult) int { return v.SlowStart }).(pulumi.IntOutput) 226 } 227 228 func (o LookupTargetGroupResultOutput) Stickiness() GetTargetGroupStickinessOutput { 229 return o.ApplyT(func(v LookupTargetGroupResult) GetTargetGroupStickiness { return v.Stickiness }).(GetTargetGroupStickinessOutput) 230 } 231 232 func (o LookupTargetGroupResultOutput) Tags() pulumi.StringMapOutput { 233 return o.ApplyT(func(v LookupTargetGroupResult) map[string]string { return v.Tags }).(pulumi.StringMapOutput) 234 } 235 236 func (o LookupTargetGroupResultOutput) TargetType() pulumi.StringOutput { 237 return o.ApplyT(func(v LookupTargetGroupResult) string { return v.TargetType }).(pulumi.StringOutput) 238 } 239 240 func (o LookupTargetGroupResultOutput) VpcId() pulumi.StringOutput { 241 return o.ApplyT(func(v LookupTargetGroupResult) string { return v.VpcId }).(pulumi.StringOutput) 242 } 243 244 func init() { 245 pulumi.RegisterOutputType(LookupTargetGroupResultOutput{}) 246 }