github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/elb/getLoadBalancer.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 elb 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 // Provides information about a "classic" Elastic Load Balancer (ELB). 15 // See LB Data Source if you are looking for "v2" 16 // Application Load Balancer (ALB) or Network Load Balancer (NLB). 17 // 18 // This data source can prove useful when a module accepts an LB as an input 19 // variable and needs to, for example, determine the security groups associated 20 // with it, etc. 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/elb" 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 // lbName := "" 40 // if param := cfg.Get("lbName"); param != "" { 41 // lbName = param 42 // } 43 // _, err := elb.LookupLoadBalancer(ctx, &elb.LookupLoadBalancerArgs{ 44 // Name: lbName, 45 // }, nil) 46 // if err != nil { 47 // return err 48 // } 49 // return nil 50 // }) 51 // } 52 // 53 // ``` 54 // <!--End PulumiCodeChooser --> 55 func LookupLoadBalancer(ctx *pulumi.Context, args *LookupLoadBalancerArgs, opts ...pulumi.InvokeOption) (*LookupLoadBalancerResult, error) { 56 opts = internal.PkgInvokeDefaultOpts(opts) 57 var rv LookupLoadBalancerResult 58 err := ctx.Invoke("aws:elb/getLoadBalancer:getLoadBalancer", args, &rv, opts...) 59 if err != nil { 60 return nil, err 61 } 62 return &rv, nil 63 } 64 65 // A collection of arguments for invoking getLoadBalancer. 66 type LookupLoadBalancerArgs struct { 67 // Unique name of the load balancer. 68 Name string `pulumi:"name"` 69 Tags map[string]string `pulumi:"tags"` 70 } 71 72 // A collection of values returned by getLoadBalancer. 73 type LookupLoadBalancerResult struct { 74 AccessLogs GetLoadBalancerAccessLogs `pulumi:"accessLogs"` 75 Arn string `pulumi:"arn"` 76 AvailabilityZones []string `pulumi:"availabilityZones"` 77 ConnectionDraining bool `pulumi:"connectionDraining"` 78 ConnectionDrainingTimeout int `pulumi:"connectionDrainingTimeout"` 79 CrossZoneLoadBalancing bool `pulumi:"crossZoneLoadBalancing"` 80 DesyncMitigationMode string `pulumi:"desyncMitigationMode"` 81 DnsName string `pulumi:"dnsName"` 82 HealthCheck GetLoadBalancerHealthCheck `pulumi:"healthCheck"` 83 // The provider-assigned unique ID for this managed resource. 84 Id string `pulumi:"id"` 85 IdleTimeout int `pulumi:"idleTimeout"` 86 Instances []string `pulumi:"instances"` 87 Internal bool `pulumi:"internal"` 88 Listeners []GetLoadBalancerListener `pulumi:"listeners"` 89 Name string `pulumi:"name"` 90 SecurityGroups []string `pulumi:"securityGroups"` 91 SourceSecurityGroup string `pulumi:"sourceSecurityGroup"` 92 SourceSecurityGroupId string `pulumi:"sourceSecurityGroupId"` 93 Subnets []string `pulumi:"subnets"` 94 Tags map[string]string `pulumi:"tags"` 95 ZoneId string `pulumi:"zoneId"` 96 } 97 98 func LookupLoadBalancerOutput(ctx *pulumi.Context, args LookupLoadBalancerOutputArgs, opts ...pulumi.InvokeOption) LookupLoadBalancerResultOutput { 99 return pulumi.ToOutputWithContext(context.Background(), args). 100 ApplyT(func(v interface{}) (LookupLoadBalancerResult, error) { 101 args := v.(LookupLoadBalancerArgs) 102 r, err := LookupLoadBalancer(ctx, &args, opts...) 103 var s LookupLoadBalancerResult 104 if r != nil { 105 s = *r 106 } 107 return s, err 108 }).(LookupLoadBalancerResultOutput) 109 } 110 111 // A collection of arguments for invoking getLoadBalancer. 112 type LookupLoadBalancerOutputArgs struct { 113 // Unique name of the load balancer. 114 Name pulumi.StringInput `pulumi:"name"` 115 Tags pulumi.StringMapInput `pulumi:"tags"` 116 } 117 118 func (LookupLoadBalancerOutputArgs) ElementType() reflect.Type { 119 return reflect.TypeOf((*LookupLoadBalancerArgs)(nil)).Elem() 120 } 121 122 // A collection of values returned by getLoadBalancer. 123 type LookupLoadBalancerResultOutput struct{ *pulumi.OutputState } 124 125 func (LookupLoadBalancerResultOutput) ElementType() reflect.Type { 126 return reflect.TypeOf((*LookupLoadBalancerResult)(nil)).Elem() 127 } 128 129 func (o LookupLoadBalancerResultOutput) ToLookupLoadBalancerResultOutput() LookupLoadBalancerResultOutput { 130 return o 131 } 132 133 func (o LookupLoadBalancerResultOutput) ToLookupLoadBalancerResultOutputWithContext(ctx context.Context) LookupLoadBalancerResultOutput { 134 return o 135 } 136 137 func (o LookupLoadBalancerResultOutput) AccessLogs() GetLoadBalancerAccessLogsOutput { 138 return o.ApplyT(func(v LookupLoadBalancerResult) GetLoadBalancerAccessLogs { return v.AccessLogs }).(GetLoadBalancerAccessLogsOutput) 139 } 140 141 func (o LookupLoadBalancerResultOutput) Arn() pulumi.StringOutput { 142 return o.ApplyT(func(v LookupLoadBalancerResult) string { return v.Arn }).(pulumi.StringOutput) 143 } 144 145 func (o LookupLoadBalancerResultOutput) AvailabilityZones() pulumi.StringArrayOutput { 146 return o.ApplyT(func(v LookupLoadBalancerResult) []string { return v.AvailabilityZones }).(pulumi.StringArrayOutput) 147 } 148 149 func (o LookupLoadBalancerResultOutput) ConnectionDraining() pulumi.BoolOutput { 150 return o.ApplyT(func(v LookupLoadBalancerResult) bool { return v.ConnectionDraining }).(pulumi.BoolOutput) 151 } 152 153 func (o LookupLoadBalancerResultOutput) ConnectionDrainingTimeout() pulumi.IntOutput { 154 return o.ApplyT(func(v LookupLoadBalancerResult) int { return v.ConnectionDrainingTimeout }).(pulumi.IntOutput) 155 } 156 157 func (o LookupLoadBalancerResultOutput) CrossZoneLoadBalancing() pulumi.BoolOutput { 158 return o.ApplyT(func(v LookupLoadBalancerResult) bool { return v.CrossZoneLoadBalancing }).(pulumi.BoolOutput) 159 } 160 161 func (o LookupLoadBalancerResultOutput) DesyncMitigationMode() pulumi.StringOutput { 162 return o.ApplyT(func(v LookupLoadBalancerResult) string { return v.DesyncMitigationMode }).(pulumi.StringOutput) 163 } 164 165 func (o LookupLoadBalancerResultOutput) DnsName() pulumi.StringOutput { 166 return o.ApplyT(func(v LookupLoadBalancerResult) string { return v.DnsName }).(pulumi.StringOutput) 167 } 168 169 func (o LookupLoadBalancerResultOutput) HealthCheck() GetLoadBalancerHealthCheckOutput { 170 return o.ApplyT(func(v LookupLoadBalancerResult) GetLoadBalancerHealthCheck { return v.HealthCheck }).(GetLoadBalancerHealthCheckOutput) 171 } 172 173 // The provider-assigned unique ID for this managed resource. 174 func (o LookupLoadBalancerResultOutput) Id() pulumi.StringOutput { 175 return o.ApplyT(func(v LookupLoadBalancerResult) string { return v.Id }).(pulumi.StringOutput) 176 } 177 178 func (o LookupLoadBalancerResultOutput) IdleTimeout() pulumi.IntOutput { 179 return o.ApplyT(func(v LookupLoadBalancerResult) int { return v.IdleTimeout }).(pulumi.IntOutput) 180 } 181 182 func (o LookupLoadBalancerResultOutput) Instances() pulumi.StringArrayOutput { 183 return o.ApplyT(func(v LookupLoadBalancerResult) []string { return v.Instances }).(pulumi.StringArrayOutput) 184 } 185 186 func (o LookupLoadBalancerResultOutput) Internal() pulumi.BoolOutput { 187 return o.ApplyT(func(v LookupLoadBalancerResult) bool { return v.Internal }).(pulumi.BoolOutput) 188 } 189 190 func (o LookupLoadBalancerResultOutput) Listeners() GetLoadBalancerListenerArrayOutput { 191 return o.ApplyT(func(v LookupLoadBalancerResult) []GetLoadBalancerListener { return v.Listeners }).(GetLoadBalancerListenerArrayOutput) 192 } 193 194 func (o LookupLoadBalancerResultOutput) Name() pulumi.StringOutput { 195 return o.ApplyT(func(v LookupLoadBalancerResult) string { return v.Name }).(pulumi.StringOutput) 196 } 197 198 func (o LookupLoadBalancerResultOutput) SecurityGroups() pulumi.StringArrayOutput { 199 return o.ApplyT(func(v LookupLoadBalancerResult) []string { return v.SecurityGroups }).(pulumi.StringArrayOutput) 200 } 201 202 func (o LookupLoadBalancerResultOutput) SourceSecurityGroup() pulumi.StringOutput { 203 return o.ApplyT(func(v LookupLoadBalancerResult) string { return v.SourceSecurityGroup }).(pulumi.StringOutput) 204 } 205 206 func (o LookupLoadBalancerResultOutput) SourceSecurityGroupId() pulumi.StringOutput { 207 return o.ApplyT(func(v LookupLoadBalancerResult) string { return v.SourceSecurityGroupId }).(pulumi.StringOutput) 208 } 209 210 func (o LookupLoadBalancerResultOutput) Subnets() pulumi.StringArrayOutput { 211 return o.ApplyT(func(v LookupLoadBalancerResult) []string { return v.Subnets }).(pulumi.StringArrayOutput) 212 } 213 214 func (o LookupLoadBalancerResultOutput) Tags() pulumi.StringMapOutput { 215 return o.ApplyT(func(v LookupLoadBalancerResult) map[string]string { return v.Tags }).(pulumi.StringMapOutput) 216 } 217 218 func (o LookupLoadBalancerResultOutput) ZoneId() pulumi.StringOutput { 219 return o.ApplyT(func(v LookupLoadBalancerResult) string { return v.ZoneId }).(pulumi.StringOutput) 220 } 221 222 func init() { 223 pulumi.RegisterOutputType(LookupLoadBalancerResultOutput{}) 224 }