// Code generated by pulumi-language-go DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** package incus import ( "context" "reflect" "git.kalinow.ski/kiterun/pulumi-incus/sdk/go/incus/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) // ## # getNetworkLoadBalancer // // Provides information about an Incus network load balancer. // See Incus network load balancer [configuration reference](https://linuxcontainers.org/incus/docs/main/howto/network_load_balancers/) for more details. // // ## Example Usage // // ```go // package main // // import ( // // "git.kalinow.ski/kiterun/pulumi-incus/sdk/go/incus" // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" // // ) // // func main() { // pulumi.Run(func(ctx *pulumi.Context) error { // this, err := incus.LookupNetworkLoadBalancer(ctx, &incus.LookupNetworkLoadBalancerArgs{ // ListenAddress: "127.0.0.1", // Network: "parent", // }, nil) // if err != nil { // return err // } // ctx.Export("networkLoadBalancerListenAddress", this.ListenAddress) // return nil // }) // } // // ``` func LookupNetworkLoadBalancer(ctx *pulumi.Context, args *LookupNetworkLoadBalancerArgs, opts ...pulumi.InvokeOption) (*LookupNetworkLoadBalancerResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupNetworkLoadBalancerResult err := ctx.Invoke("incus:index/getNetworkLoadBalancer:getNetworkLoadBalancer", args, &rv, opts...) if err != nil { return nil, err } return &rv, nil } // A collection of arguments for invoking getNetworkLoadBalancer. type LookupNetworkLoadBalancerArgs struct { // List of load balancer backends. Backends []GetNetworkLoadBalancerBackend `pulumi:"backends"` // Description of the load balancer port. Description *string `pulumi:"description"` // **Required** - Listen Address of the network load balancer. ListenAddress string `pulumi:"listenAddress"` // Location of the network load balancer. Location *string `pulumi:"location"` // **Required** - Name of the parent network. Network string `pulumi:"network"` // List of load balancer ports. Ports []GetNetworkLoadBalancerPort `pulumi:"ports"` // *Optional* - Name of the project where the network load balancer is be stored. Project *string `pulumi:"project"` // *Optional* - The remote in which the resource was created. If // not provided, the provider's default remote will be used. Remote *string `pulumi:"remote"` } // A collection of values returned by getNetworkLoadBalancer. type LookupNetworkLoadBalancerResult struct { // List of load balancer backends. Backends []GetNetworkLoadBalancerBackend `pulumi:"backends"` // Map of key/value pairs of config settings. Config map[string]string `pulumi:"config"` // Description of the load balancer port. Description string `pulumi:"description"` // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` ListenAddress string `pulumi:"listenAddress"` // Location of the network load balancer. Location string `pulumi:"location"` Network string `pulumi:"network"` // List of load balancer ports. Ports []GetNetworkLoadBalancerPort `pulumi:"ports"` Project *string `pulumi:"project"` Remote *string `pulumi:"remote"` } func LookupNetworkLoadBalancerOutput(ctx *pulumi.Context, args LookupNetworkLoadBalancerOutputArgs, opts ...pulumi.InvokeOption) LookupNetworkLoadBalancerResultOutput { return pulumi.ToOutputWithContext(ctx.Context(), args). ApplyT(func(v interface{}) (LookupNetworkLoadBalancerResultOutput, error) { args := v.(LookupNetworkLoadBalancerArgs) options := pulumi.InvokeOutputOptions{InvokeOptions: internal.PkgInvokeDefaultOpts(opts)} return ctx.InvokeOutput("incus:index/getNetworkLoadBalancer:getNetworkLoadBalancer", args, LookupNetworkLoadBalancerResultOutput{}, options).(LookupNetworkLoadBalancerResultOutput), nil }).(LookupNetworkLoadBalancerResultOutput) } // A collection of arguments for invoking getNetworkLoadBalancer. type LookupNetworkLoadBalancerOutputArgs struct { // List of load balancer backends. Backends GetNetworkLoadBalancerBackendArrayInput `pulumi:"backends"` // Description of the load balancer port. Description pulumi.StringPtrInput `pulumi:"description"` // **Required** - Listen Address of the network load balancer. ListenAddress pulumi.StringInput `pulumi:"listenAddress"` // Location of the network load balancer. Location pulumi.StringPtrInput `pulumi:"location"` // **Required** - Name of the parent network. Network pulumi.StringInput `pulumi:"network"` // List of load balancer ports. Ports GetNetworkLoadBalancerPortArrayInput `pulumi:"ports"` // *Optional* - Name of the project where the network load balancer is be stored. Project pulumi.StringPtrInput `pulumi:"project"` // *Optional* - The remote in which the resource was created. If // not provided, the provider's default remote will be used. Remote pulumi.StringPtrInput `pulumi:"remote"` } func (LookupNetworkLoadBalancerOutputArgs) ElementType() reflect.Type { return reflect.TypeOf((*LookupNetworkLoadBalancerArgs)(nil)).Elem() } // A collection of values returned by getNetworkLoadBalancer. type LookupNetworkLoadBalancerResultOutput struct{ *pulumi.OutputState } func (LookupNetworkLoadBalancerResultOutput) ElementType() reflect.Type { return reflect.TypeOf((*LookupNetworkLoadBalancerResult)(nil)).Elem() } func (o LookupNetworkLoadBalancerResultOutput) ToLookupNetworkLoadBalancerResultOutput() LookupNetworkLoadBalancerResultOutput { return o } func (o LookupNetworkLoadBalancerResultOutput) ToLookupNetworkLoadBalancerResultOutputWithContext(ctx context.Context) LookupNetworkLoadBalancerResultOutput { return o } // List of load balancer backends. func (o LookupNetworkLoadBalancerResultOutput) Backends() GetNetworkLoadBalancerBackendArrayOutput { return o.ApplyT(func(v LookupNetworkLoadBalancerResult) []GetNetworkLoadBalancerBackend { return v.Backends }).(GetNetworkLoadBalancerBackendArrayOutput) } // Map of key/value pairs of config settings. func (o LookupNetworkLoadBalancerResultOutput) Config() pulumi.StringMapOutput { return o.ApplyT(func(v LookupNetworkLoadBalancerResult) map[string]string { return v.Config }).(pulumi.StringMapOutput) } // Description of the load balancer port. func (o LookupNetworkLoadBalancerResultOutput) Description() pulumi.StringOutput { return o.ApplyT(func(v LookupNetworkLoadBalancerResult) string { return v.Description }).(pulumi.StringOutput) } // The provider-assigned unique ID for this managed resource. func (o LookupNetworkLoadBalancerResultOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v LookupNetworkLoadBalancerResult) string { return v.Id }).(pulumi.StringOutput) } func (o LookupNetworkLoadBalancerResultOutput) ListenAddress() pulumi.StringOutput { return o.ApplyT(func(v LookupNetworkLoadBalancerResult) string { return v.ListenAddress }).(pulumi.StringOutput) } // Location of the network load balancer. func (o LookupNetworkLoadBalancerResultOutput) Location() pulumi.StringOutput { return o.ApplyT(func(v LookupNetworkLoadBalancerResult) string { return v.Location }).(pulumi.StringOutput) } func (o LookupNetworkLoadBalancerResultOutput) Network() pulumi.StringOutput { return o.ApplyT(func(v LookupNetworkLoadBalancerResult) string { return v.Network }).(pulumi.StringOutput) } // List of load balancer ports. func (o LookupNetworkLoadBalancerResultOutput) Ports() GetNetworkLoadBalancerPortArrayOutput { return o.ApplyT(func(v LookupNetworkLoadBalancerResult) []GetNetworkLoadBalancerPort { return v.Ports }).(GetNetworkLoadBalancerPortArrayOutput) } func (o LookupNetworkLoadBalancerResultOutput) Project() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupNetworkLoadBalancerResult) *string { return v.Project }).(pulumi.StringPtrOutput) } func (o LookupNetworkLoadBalancerResultOutput) Remote() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupNetworkLoadBalancerResult) *string { return v.Remote }).(pulumi.StringPtrOutput) } func init() { pulumi.RegisterOutputType(LookupNetworkLoadBalancerResultOutput{}) }