generated from pulumi/pulumi-tf-provider-boilerplate
/
getLoadBalancers.go
154 lines (134 loc) · 5.17 KB
/
getLoadBalancers.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
package loadbalancer
import (
"context"
"reflect"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/raeumlich/pulumi-scaleway/sdk/go/scaleway/internal"
)
// Gets information about multiple Load Balancers.
//
// ## Example Usage
//
// <!--Start PulumiCodeChooser -->
// ```go
// package main
//
// import (
//
// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
// "github.com/raeumlich/pulumi-scaleway/sdk/go/scaleway/loadbalancer"
//
// )
//
// func main() {
// pulumi.Run(func(ctx *pulumi.Context) error {
// _, err := loadbalancer.GetLoadBalancers(ctx, &loadbalancer.GetLoadBalancersArgs{
// Name: pulumi.StringRef("foobar"),
// Zone: pulumi.StringRef("fr-par-2"),
// }, nil)
// if err != nil {
// return err
// }
// return nil
// })
// }
//
// ```
// <!--End PulumiCodeChooser -->
func GetLoadBalancers(ctx *pulumi.Context, args *GetLoadBalancersArgs, opts ...pulumi.InvokeOption) (*GetLoadBalancersResult, error) {
opts = internal.PkgInvokeDefaultOpts(opts)
var rv GetLoadBalancersResult
err := ctx.Invoke("scaleway:loadbalancer/getLoadBalancers:getLoadBalancers", args, &rv, opts...)
if err != nil {
return nil, err
}
return &rv, nil
}
// A collection of arguments for invoking getLoadBalancers.
type GetLoadBalancersArgs struct {
// The load balancer name used as a filter. LBs with a name like it are listed.
Name *string `pulumi:"name"`
// The ID of the project the load-balancer is associated with.
ProjectId *string `pulumi:"projectId"`
// `zone`) The zone in which LBs exist.
Zone *string `pulumi:"zone"`
}
// A collection of values returned by getLoadBalancers.
type GetLoadBalancersResult struct {
// The provider-assigned unique ID for this managed resource.
Id string `pulumi:"id"`
// List of found LBs
Lbs []GetLoadBalancersLb `pulumi:"lbs"`
// The name of the load-balancer.
Name *string `pulumi:"name"`
// The organization ID the load-balancer is associated with.
OrganizationId string `pulumi:"organizationId"`
// The ID of the project the load-balancer is associated with.
ProjectId string `pulumi:"projectId"`
// The zone in which the load-balancer is.
Zone string `pulumi:"zone"`
}
func GetLoadBalancersOutput(ctx *pulumi.Context, args GetLoadBalancersOutputArgs, opts ...pulumi.InvokeOption) GetLoadBalancersResultOutput {
return pulumi.ToOutputWithContext(context.Background(), args).
ApplyT(func(v interface{}) (GetLoadBalancersResult, error) {
args := v.(GetLoadBalancersArgs)
r, err := GetLoadBalancers(ctx, &args, opts...)
var s GetLoadBalancersResult
if r != nil {
s = *r
}
return s, err
}).(GetLoadBalancersResultOutput)
}
// A collection of arguments for invoking getLoadBalancers.
type GetLoadBalancersOutputArgs struct {
// The load balancer name used as a filter. LBs with a name like it are listed.
Name pulumi.StringPtrInput `pulumi:"name"`
// The ID of the project the load-balancer is associated with.
ProjectId pulumi.StringPtrInput `pulumi:"projectId"`
// `zone`) The zone in which LBs exist.
Zone pulumi.StringPtrInput `pulumi:"zone"`
}
func (GetLoadBalancersOutputArgs) ElementType() reflect.Type {
return reflect.TypeOf((*GetLoadBalancersArgs)(nil)).Elem()
}
// A collection of values returned by getLoadBalancers.
type GetLoadBalancersResultOutput struct{ *pulumi.OutputState }
func (GetLoadBalancersResultOutput) ElementType() reflect.Type {
return reflect.TypeOf((*GetLoadBalancersResult)(nil)).Elem()
}
func (o GetLoadBalancersResultOutput) ToGetLoadBalancersResultOutput() GetLoadBalancersResultOutput {
return o
}
func (o GetLoadBalancersResultOutput) ToGetLoadBalancersResultOutputWithContext(ctx context.Context) GetLoadBalancersResultOutput {
return o
}
// The provider-assigned unique ID for this managed resource.
func (o GetLoadBalancersResultOutput) Id() pulumi.StringOutput {
return o.ApplyT(func(v GetLoadBalancersResult) string { return v.Id }).(pulumi.StringOutput)
}
// List of found LBs
func (o GetLoadBalancersResultOutput) Lbs() GetLoadBalancersLbArrayOutput {
return o.ApplyT(func(v GetLoadBalancersResult) []GetLoadBalancersLb { return v.Lbs }).(GetLoadBalancersLbArrayOutput)
}
// The name of the load-balancer.
func (o GetLoadBalancersResultOutput) Name() pulumi.StringPtrOutput {
return o.ApplyT(func(v GetLoadBalancersResult) *string { return v.Name }).(pulumi.StringPtrOutput)
}
// The organization ID the load-balancer is associated with.
func (o GetLoadBalancersResultOutput) OrganizationId() pulumi.StringOutput {
return o.ApplyT(func(v GetLoadBalancersResult) string { return v.OrganizationId }).(pulumi.StringOutput)
}
// The ID of the project the load-balancer is associated with.
func (o GetLoadBalancersResultOutput) ProjectId() pulumi.StringOutput {
return o.ApplyT(func(v GetLoadBalancersResult) string { return v.ProjectId }).(pulumi.StringOutput)
}
// The zone in which the load-balancer is.
func (o GetLoadBalancersResultOutput) Zone() pulumi.StringOutput {
return o.ApplyT(func(v GetLoadBalancersResult) string { return v.Zone }).(pulumi.StringOutput)
}
func init() {
pulumi.RegisterOutputType(GetLoadBalancersResultOutput{})
}