iploadbalancing

package
v0.43.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 23, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type GetIpLoadBalancingArgs

type GetIpLoadBalancingArgs struct {
	// the name displayed in ManagerV6 for your iplb (max 50 chars)
	DisplayName *string `pulumi:"displayName"`
	// Your IP load balancing
	IpLoadbalancing *string `pulumi:"ipLoadbalancing"`
	// The IPV4 associated to your IP load balancing
	Ipv4 *string `pulumi:"ipv4"`
	// The IPV6 associated to your IP load balancing
	Ipv6 *string `pulumi:"ipv6"`
	// The offer of your IP load balancing
	Offer *string `pulumi:"offer"`
	// The internal name of your IP load balancing
	ServiceName *string `pulumi:"serviceName"`
	// Modern oldest compatible clients : Firefox 27, Chrome 30,
	// IE 11 on Windows 7, Edge, Opera 17, Safari 9, Android 5.0, and Java 8.
	// Intermediate oldest compatible clients : Firefox 1, Chrome 1, IE 7, Opera 5,
	// Safari 1, Windows XP IE8, Android 2.3, Java 7.
	// Can take any of the following value: "intermediate", "modern"
	SslConfiguration *string `pulumi:"sslConfiguration"`
	// Current state of your IP. Can take any of the following value:
	// "blacklisted", "deleted", "free", "ok", "quarantined", "suspended"
	State *string `pulumi:"state"`
	// Vrack eligibility. Takes a boolean value.
	VrackEligibility *bool `pulumi:"vrackEligibility"`
	// Name of the vRack on which the current Load Balancer is
	// attached to, as it is named on vRack product
	VrackName *string `pulumi:"vrackName"`
	// Location where your service is. This takes an array of values.
	Zones []string `pulumi:"zones"`
}

A collection of arguments for invoking getIpLoadBalancing.

type GetIpLoadBalancingOrderableZone

type GetIpLoadBalancingOrderableZone struct {
	// The zone three letter code
	Name string `pulumi:"name"`
	// The billing planCode for this zone
	PlanCode string `pulumi:"planCode"`
}

type GetIpLoadBalancingOrderableZoneArgs

type GetIpLoadBalancingOrderableZoneArgs struct {
	// The zone three letter code
	Name pulumi.StringInput `pulumi:"name"`
	// The billing planCode for this zone
	PlanCode pulumi.StringInput `pulumi:"planCode"`
}

func (GetIpLoadBalancingOrderableZoneArgs) ElementType

func (GetIpLoadBalancingOrderableZoneArgs) ToGetIpLoadBalancingOrderableZoneOutput

func (i GetIpLoadBalancingOrderableZoneArgs) ToGetIpLoadBalancingOrderableZoneOutput() GetIpLoadBalancingOrderableZoneOutput

func (GetIpLoadBalancingOrderableZoneArgs) ToGetIpLoadBalancingOrderableZoneOutputWithContext

func (i GetIpLoadBalancingOrderableZoneArgs) ToGetIpLoadBalancingOrderableZoneOutputWithContext(ctx context.Context) GetIpLoadBalancingOrderableZoneOutput

type GetIpLoadBalancingOrderableZoneArray

type GetIpLoadBalancingOrderableZoneArray []GetIpLoadBalancingOrderableZoneInput

func (GetIpLoadBalancingOrderableZoneArray) ElementType

func (GetIpLoadBalancingOrderableZoneArray) ToGetIpLoadBalancingOrderableZoneArrayOutput

func (i GetIpLoadBalancingOrderableZoneArray) ToGetIpLoadBalancingOrderableZoneArrayOutput() GetIpLoadBalancingOrderableZoneArrayOutput

func (GetIpLoadBalancingOrderableZoneArray) ToGetIpLoadBalancingOrderableZoneArrayOutputWithContext

func (i GetIpLoadBalancingOrderableZoneArray) ToGetIpLoadBalancingOrderableZoneArrayOutputWithContext(ctx context.Context) GetIpLoadBalancingOrderableZoneArrayOutput

type GetIpLoadBalancingOrderableZoneArrayInput

type GetIpLoadBalancingOrderableZoneArrayInput interface {
	pulumi.Input

	ToGetIpLoadBalancingOrderableZoneArrayOutput() GetIpLoadBalancingOrderableZoneArrayOutput
	ToGetIpLoadBalancingOrderableZoneArrayOutputWithContext(context.Context) GetIpLoadBalancingOrderableZoneArrayOutput
}

GetIpLoadBalancingOrderableZoneArrayInput is an input type that accepts GetIpLoadBalancingOrderableZoneArray and GetIpLoadBalancingOrderableZoneArrayOutput values. You can construct a concrete instance of `GetIpLoadBalancingOrderableZoneArrayInput` via:

GetIpLoadBalancingOrderableZoneArray{ GetIpLoadBalancingOrderableZoneArgs{...} }

type GetIpLoadBalancingOrderableZoneArrayOutput

type GetIpLoadBalancingOrderableZoneArrayOutput struct{ *pulumi.OutputState }

func (GetIpLoadBalancingOrderableZoneArrayOutput) ElementType

func (GetIpLoadBalancingOrderableZoneArrayOutput) Index

func (GetIpLoadBalancingOrderableZoneArrayOutput) ToGetIpLoadBalancingOrderableZoneArrayOutput

func (o GetIpLoadBalancingOrderableZoneArrayOutput) ToGetIpLoadBalancingOrderableZoneArrayOutput() GetIpLoadBalancingOrderableZoneArrayOutput

func (GetIpLoadBalancingOrderableZoneArrayOutput) ToGetIpLoadBalancingOrderableZoneArrayOutputWithContext

func (o GetIpLoadBalancingOrderableZoneArrayOutput) ToGetIpLoadBalancingOrderableZoneArrayOutputWithContext(ctx context.Context) GetIpLoadBalancingOrderableZoneArrayOutput

type GetIpLoadBalancingOrderableZoneInput

type GetIpLoadBalancingOrderableZoneInput interface {
	pulumi.Input

	ToGetIpLoadBalancingOrderableZoneOutput() GetIpLoadBalancingOrderableZoneOutput
	ToGetIpLoadBalancingOrderableZoneOutputWithContext(context.Context) GetIpLoadBalancingOrderableZoneOutput
}

GetIpLoadBalancingOrderableZoneInput is an input type that accepts GetIpLoadBalancingOrderableZoneArgs and GetIpLoadBalancingOrderableZoneOutput values. You can construct a concrete instance of `GetIpLoadBalancingOrderableZoneInput` via:

GetIpLoadBalancingOrderableZoneArgs{...}

type GetIpLoadBalancingOrderableZoneOutput

type GetIpLoadBalancingOrderableZoneOutput struct{ *pulumi.OutputState }

func (GetIpLoadBalancingOrderableZoneOutput) ElementType

func (GetIpLoadBalancingOrderableZoneOutput) Name

The zone three letter code

func (GetIpLoadBalancingOrderableZoneOutput) PlanCode

The billing planCode for this zone

func (GetIpLoadBalancingOrderableZoneOutput) ToGetIpLoadBalancingOrderableZoneOutput

func (o GetIpLoadBalancingOrderableZoneOutput) ToGetIpLoadBalancingOrderableZoneOutput() GetIpLoadBalancingOrderableZoneOutput

func (GetIpLoadBalancingOrderableZoneOutput) ToGetIpLoadBalancingOrderableZoneOutputWithContext

func (o GetIpLoadBalancingOrderableZoneOutput) ToGetIpLoadBalancingOrderableZoneOutputWithContext(ctx context.Context) GetIpLoadBalancingOrderableZoneOutput

type GetIpLoadBalancingOutputArgs

type GetIpLoadBalancingOutputArgs struct {
	// the name displayed in ManagerV6 for your iplb (max 50 chars)
	DisplayName pulumi.StringPtrInput `pulumi:"displayName"`
	// Your IP load balancing
	IpLoadbalancing pulumi.StringPtrInput `pulumi:"ipLoadbalancing"`
	// The IPV4 associated to your IP load balancing
	Ipv4 pulumi.StringPtrInput `pulumi:"ipv4"`
	// The IPV6 associated to your IP load balancing
	Ipv6 pulumi.StringPtrInput `pulumi:"ipv6"`
	// The offer of your IP load balancing
	Offer pulumi.StringPtrInput `pulumi:"offer"`
	// The internal name of your IP load balancing
	ServiceName pulumi.StringPtrInput `pulumi:"serviceName"`
	// Modern oldest compatible clients : Firefox 27, Chrome 30,
	// IE 11 on Windows 7, Edge, Opera 17, Safari 9, Android 5.0, and Java 8.
	// Intermediate oldest compatible clients : Firefox 1, Chrome 1, IE 7, Opera 5,
	// Safari 1, Windows XP IE8, Android 2.3, Java 7.
	// Can take any of the following value: "intermediate", "modern"
	SslConfiguration pulumi.StringPtrInput `pulumi:"sslConfiguration"`
	// Current state of your IP. Can take any of the following value:
	// "blacklisted", "deleted", "free", "ok", "quarantined", "suspended"
	State pulumi.StringPtrInput `pulumi:"state"`
	// Vrack eligibility. Takes a boolean value.
	VrackEligibility pulumi.BoolPtrInput `pulumi:"vrackEligibility"`
	// Name of the vRack on which the current Load Balancer is
	// attached to, as it is named on vRack product
	VrackName pulumi.StringPtrInput `pulumi:"vrackName"`
	// Location where your service is. This takes an array of values.
	Zones pulumi.StringArrayInput `pulumi:"zones"`
}

A collection of arguments for invoking getIpLoadBalancing.

func (GetIpLoadBalancingOutputArgs) ElementType

type GetIpLoadBalancingResult

type GetIpLoadBalancingResult struct {
	DisplayName string `pulumi:"displayName"`
	// The provider-assigned unique ID for this managed resource.
	Id              string `pulumi:"id"`
	IpLoadbalancing string `pulumi:"ipLoadbalancing"`
	Ipv4            string `pulumi:"ipv4"`
	Ipv6            string `pulumi:"ipv6"`
	// The metrics token associated with your IP load balancing
	// This attribute is sensitive.
	MetricsToken string `pulumi:"metricsToken"`
	Offer        string `pulumi:"offer"`
	// Available additional zone for your Load Balancer
	OrderableZones   []GetIpLoadBalancingOrderableZone `pulumi:"orderableZones"`
	ServiceName      string                            `pulumi:"serviceName"`
	SslConfiguration string                            `pulumi:"sslConfiguration"`
	State            string                            `pulumi:"state"`
	// The URN of the load balancer, to be used in IAM policies
	Urn              string   `pulumi:"urn"`
	VrackEligibility bool     `pulumi:"vrackEligibility"`
	VrackName        string   `pulumi:"vrackName"`
	Zones            []string `pulumi:"zones"`
}

A collection of values returned by getIpLoadBalancing.

func GetIpLoadBalancing

func GetIpLoadBalancing(ctx *pulumi.Context, args *GetIpLoadBalancingArgs, opts ...pulumi.InvokeOption) (*GetIpLoadBalancingResult, error)

Use this data source to retrieve information about an IP Load Balancing product

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := IpLoadBalancing.GetIpLoadBalancing(ctx, &iploadbalancing.GetIpLoadBalancingArgs{
			ServiceName: pulumi.StringRef("XXXXXX"),
			State:       pulumi.StringRef("ok"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type GetIpLoadBalancingResultOutput

type GetIpLoadBalancingResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getIpLoadBalancing.

func (GetIpLoadBalancingResultOutput) DisplayName

func (GetIpLoadBalancingResultOutput) ElementType

func (GetIpLoadBalancingResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetIpLoadBalancingResultOutput) IpLoadbalancing

func (GetIpLoadBalancingResultOutput) Ipv4

func (GetIpLoadBalancingResultOutput) Ipv6

func (GetIpLoadBalancingResultOutput) MetricsToken

The metrics token associated with your IP load balancing This attribute is sensitive.

func (GetIpLoadBalancingResultOutput) Offer

func (GetIpLoadBalancingResultOutput) OrderableZones

Available additional zone for your Load Balancer

func (GetIpLoadBalancingResultOutput) ServiceName

func (GetIpLoadBalancingResultOutput) SslConfiguration

func (o GetIpLoadBalancingResultOutput) SslConfiguration() pulumi.StringOutput

func (GetIpLoadBalancingResultOutput) State

func (GetIpLoadBalancingResultOutput) ToGetIpLoadBalancingResultOutput

func (o GetIpLoadBalancingResultOutput) ToGetIpLoadBalancingResultOutput() GetIpLoadBalancingResultOutput

func (GetIpLoadBalancingResultOutput) ToGetIpLoadBalancingResultOutputWithContext

func (o GetIpLoadBalancingResultOutput) ToGetIpLoadBalancingResultOutputWithContext(ctx context.Context) GetIpLoadBalancingResultOutput

func (GetIpLoadBalancingResultOutput) Urn

The URN of the load balancer, to be used in IAM policies

func (GetIpLoadBalancingResultOutput) VrackEligibility

func (o GetIpLoadBalancingResultOutput) VrackEligibility() pulumi.BoolOutput

func (GetIpLoadBalancingResultOutput) VrackName

func (GetIpLoadBalancingResultOutput) Zones

type HttpFarm

type HttpFarm struct {
	pulumi.CustomResourceState

	// Load balancing algorithm. `roundrobin` if null (`first`, `leastconn`, `roundrobin`, `source`)
	Balance pulumi.StringPtrOutput `pulumi:"balance"`
	// Readable label for loadbalancer farm
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// Port for backends to receive traffic on.
	Port pulumi.IntPtrOutput `pulumi:"port"`
	// define a backend healthcheck probe
	Probe HttpFarmProbePtrOutput `pulumi:"probe"`
	// The internal name of your IP load balancing
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
	// Stickiness type. No stickiness if null (`sourceIp`, `cookie`)
	Stickiness pulumi.StringPtrOutput `pulumi:"stickiness"`
	// Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack
	VrackNetworkId pulumi.IntPtrOutput `pulumi:"vrackNetworkId"`
	// Zone where the farm will be defined (ie. `GRA`, `BHS` also supports `ALL`)
	Zone pulumi.StringOutput `pulumi:"zone"`
}

Creates a HTTP backend server group (farm) to be used by loadbalancing frontend(s)

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		lb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, &iploadbalancing.GetIpLoadBalancingArgs{
			ServiceName: pulumi.StringRef("ip-1.2.3.4"),
			State:       pulumi.StringRef("ok"),
		}, nil)
		if err != nil {
			return err
		}
		_, err = IpLoadBalancing.NewHttpFarm(ctx, "farmname", &IpLoadBalancing.HttpFarmArgs{
			DisplayName: pulumi.String("ingress-8080-gra"),
			ServiceName: pulumi.String(lb.ServiceName),
			Zone:        pulumi.String("GRA"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

HTTP farm can be imported using the following format `serviceName` and the `id` of the farm, separated by "/" e.g.

func GetHttpFarm

func GetHttpFarm(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *HttpFarmState, opts ...pulumi.ResourceOption) (*HttpFarm, error)

GetHttpFarm gets an existing HttpFarm resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewHttpFarm

func NewHttpFarm(ctx *pulumi.Context,
	name string, args *HttpFarmArgs, opts ...pulumi.ResourceOption) (*HttpFarm, error)

NewHttpFarm registers a new resource with the given unique name, arguments, and options.

func (*HttpFarm) ElementType

func (*HttpFarm) ElementType() reflect.Type

func (*HttpFarm) ToHttpFarmOutput

func (i *HttpFarm) ToHttpFarmOutput() HttpFarmOutput

func (*HttpFarm) ToHttpFarmOutputWithContext

func (i *HttpFarm) ToHttpFarmOutputWithContext(ctx context.Context) HttpFarmOutput

type HttpFarmArgs

type HttpFarmArgs struct {
	// Load balancing algorithm. `roundrobin` if null (`first`, `leastconn`, `roundrobin`, `source`)
	Balance pulumi.StringPtrInput
	// Readable label for loadbalancer farm
	DisplayName pulumi.StringPtrInput
	// Port for backends to receive traffic on.
	Port pulumi.IntPtrInput
	// define a backend healthcheck probe
	Probe HttpFarmProbePtrInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringInput
	// Stickiness type. No stickiness if null (`sourceIp`, `cookie`)
	Stickiness pulumi.StringPtrInput
	// Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack
	VrackNetworkId pulumi.IntPtrInput
	// Zone where the farm will be defined (ie. `GRA`, `BHS` also supports `ALL`)
	Zone pulumi.StringInput
}

The set of arguments for constructing a HttpFarm resource.

func (HttpFarmArgs) ElementType

func (HttpFarmArgs) ElementType() reflect.Type

type HttpFarmArray

type HttpFarmArray []HttpFarmInput

func (HttpFarmArray) ElementType

func (HttpFarmArray) ElementType() reflect.Type

func (HttpFarmArray) ToHttpFarmArrayOutput

func (i HttpFarmArray) ToHttpFarmArrayOutput() HttpFarmArrayOutput

func (HttpFarmArray) ToHttpFarmArrayOutputWithContext

func (i HttpFarmArray) ToHttpFarmArrayOutputWithContext(ctx context.Context) HttpFarmArrayOutput

type HttpFarmArrayInput

type HttpFarmArrayInput interface {
	pulumi.Input

	ToHttpFarmArrayOutput() HttpFarmArrayOutput
	ToHttpFarmArrayOutputWithContext(context.Context) HttpFarmArrayOutput
}

HttpFarmArrayInput is an input type that accepts HttpFarmArray and HttpFarmArrayOutput values. You can construct a concrete instance of `HttpFarmArrayInput` via:

HttpFarmArray{ HttpFarmArgs{...} }

type HttpFarmArrayOutput

type HttpFarmArrayOutput struct{ *pulumi.OutputState }

func (HttpFarmArrayOutput) ElementType

func (HttpFarmArrayOutput) ElementType() reflect.Type

func (HttpFarmArrayOutput) Index

func (HttpFarmArrayOutput) ToHttpFarmArrayOutput

func (o HttpFarmArrayOutput) ToHttpFarmArrayOutput() HttpFarmArrayOutput

func (HttpFarmArrayOutput) ToHttpFarmArrayOutputWithContext

func (o HttpFarmArrayOutput) ToHttpFarmArrayOutputWithContext(ctx context.Context) HttpFarmArrayOutput

type HttpFarmInput

type HttpFarmInput interface {
	pulumi.Input

	ToHttpFarmOutput() HttpFarmOutput
	ToHttpFarmOutputWithContext(ctx context.Context) HttpFarmOutput
}

type HttpFarmMap

type HttpFarmMap map[string]HttpFarmInput

func (HttpFarmMap) ElementType

func (HttpFarmMap) ElementType() reflect.Type

func (HttpFarmMap) ToHttpFarmMapOutput

func (i HttpFarmMap) ToHttpFarmMapOutput() HttpFarmMapOutput

func (HttpFarmMap) ToHttpFarmMapOutputWithContext

func (i HttpFarmMap) ToHttpFarmMapOutputWithContext(ctx context.Context) HttpFarmMapOutput

type HttpFarmMapInput

type HttpFarmMapInput interface {
	pulumi.Input

	ToHttpFarmMapOutput() HttpFarmMapOutput
	ToHttpFarmMapOutputWithContext(context.Context) HttpFarmMapOutput
}

HttpFarmMapInput is an input type that accepts HttpFarmMap and HttpFarmMapOutput values. You can construct a concrete instance of `HttpFarmMapInput` via:

HttpFarmMap{ "key": HttpFarmArgs{...} }

type HttpFarmMapOutput

type HttpFarmMapOutput struct{ *pulumi.OutputState }

func (HttpFarmMapOutput) ElementType

func (HttpFarmMapOutput) ElementType() reflect.Type

func (HttpFarmMapOutput) MapIndex

func (HttpFarmMapOutput) ToHttpFarmMapOutput

func (o HttpFarmMapOutput) ToHttpFarmMapOutput() HttpFarmMapOutput

func (HttpFarmMapOutput) ToHttpFarmMapOutputWithContext

func (o HttpFarmMapOutput) ToHttpFarmMapOutputWithContext(ctx context.Context) HttpFarmMapOutput

type HttpFarmOutput

type HttpFarmOutput struct{ *pulumi.OutputState }

func (HttpFarmOutput) Balance

Load balancing algorithm. `roundrobin` if null (`first`, `leastconn`, `roundrobin`, `source`)

func (HttpFarmOutput) DisplayName

func (o HttpFarmOutput) DisplayName() pulumi.StringPtrOutput

Readable label for loadbalancer farm

func (HttpFarmOutput) ElementType

func (HttpFarmOutput) ElementType() reflect.Type

func (HttpFarmOutput) Port

Port for backends to receive traffic on.

func (HttpFarmOutput) Probe

define a backend healthcheck probe

func (HttpFarmOutput) ServiceName

func (o HttpFarmOutput) ServiceName() pulumi.StringOutput

The internal name of your IP load balancing

func (HttpFarmOutput) Stickiness

func (o HttpFarmOutput) Stickiness() pulumi.StringPtrOutput

Stickiness type. No stickiness if null (`sourceIp`, `cookie`)

func (HttpFarmOutput) ToHttpFarmOutput

func (o HttpFarmOutput) ToHttpFarmOutput() HttpFarmOutput

func (HttpFarmOutput) ToHttpFarmOutputWithContext

func (o HttpFarmOutput) ToHttpFarmOutputWithContext(ctx context.Context) HttpFarmOutput

func (HttpFarmOutput) VrackNetworkId

func (o HttpFarmOutput) VrackNetworkId() pulumi.IntPtrOutput

Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack

func (HttpFarmOutput) Zone

Zone where the farm will be defined (ie. `GRA`, `BHS` also supports `ALL`)

type HttpFarmProbe

type HttpFarmProbe struct {
	// Force use of SSL (TLS)
	ForceSsl *bool `pulumi:"forceSsl"`
	// probe interval, Value between 30 and 3600 seconds, default 30
	Interval *int `pulumi:"interval"`
	// What to match `pattern` against (`contains`, `default`, `internal`, `matches`, `status`)
	Match *string `pulumi:"match"`
	// HTTP probe method (`GET`, `HEAD`, `OPTIONS`, `internal`)
	Method *string `pulumi:"method"`
	// Negate probe result
	Negate *bool `pulumi:"negate"`
	// Pattern to match against `match`
	Pattern *string `pulumi:"pattern"`
	// Port for backends to receive traffic on.
	Port *int `pulumi:"port"`
	// Valid values : `http`, `internal`, `mysql`, `oco`, `pgsql`, `smtp`, `tcp`
	Type string `pulumi:"type"`
	// URL for HTTP probe type.
	Url *string `pulumi:"url"`
}

type HttpFarmProbeArgs

type HttpFarmProbeArgs struct {
	// Force use of SSL (TLS)
	ForceSsl pulumi.BoolPtrInput `pulumi:"forceSsl"`
	// probe interval, Value between 30 and 3600 seconds, default 30
	Interval pulumi.IntPtrInput `pulumi:"interval"`
	// What to match `pattern` against (`contains`, `default`, `internal`, `matches`, `status`)
	Match pulumi.StringPtrInput `pulumi:"match"`
	// HTTP probe method (`GET`, `HEAD`, `OPTIONS`, `internal`)
	Method pulumi.StringPtrInput `pulumi:"method"`
	// Negate probe result
	Negate pulumi.BoolPtrInput `pulumi:"negate"`
	// Pattern to match against `match`
	Pattern pulumi.StringPtrInput `pulumi:"pattern"`
	// Port for backends to receive traffic on.
	Port pulumi.IntPtrInput `pulumi:"port"`
	// Valid values : `http`, `internal`, `mysql`, `oco`, `pgsql`, `smtp`, `tcp`
	Type pulumi.StringInput `pulumi:"type"`
	// URL for HTTP probe type.
	Url pulumi.StringPtrInput `pulumi:"url"`
}

func (HttpFarmProbeArgs) ElementType

func (HttpFarmProbeArgs) ElementType() reflect.Type

func (HttpFarmProbeArgs) ToHttpFarmProbeOutput

func (i HttpFarmProbeArgs) ToHttpFarmProbeOutput() HttpFarmProbeOutput

func (HttpFarmProbeArgs) ToHttpFarmProbeOutputWithContext

func (i HttpFarmProbeArgs) ToHttpFarmProbeOutputWithContext(ctx context.Context) HttpFarmProbeOutput

func (HttpFarmProbeArgs) ToHttpFarmProbePtrOutput

func (i HttpFarmProbeArgs) ToHttpFarmProbePtrOutput() HttpFarmProbePtrOutput

func (HttpFarmProbeArgs) ToHttpFarmProbePtrOutputWithContext

func (i HttpFarmProbeArgs) ToHttpFarmProbePtrOutputWithContext(ctx context.Context) HttpFarmProbePtrOutput

type HttpFarmProbeInput

type HttpFarmProbeInput interface {
	pulumi.Input

	ToHttpFarmProbeOutput() HttpFarmProbeOutput
	ToHttpFarmProbeOutputWithContext(context.Context) HttpFarmProbeOutput
}

HttpFarmProbeInput is an input type that accepts HttpFarmProbeArgs and HttpFarmProbeOutput values. You can construct a concrete instance of `HttpFarmProbeInput` via:

HttpFarmProbeArgs{...}

type HttpFarmProbeOutput

type HttpFarmProbeOutput struct{ *pulumi.OutputState }

func (HttpFarmProbeOutput) ElementType

func (HttpFarmProbeOutput) ElementType() reflect.Type

func (HttpFarmProbeOutput) ForceSsl

Force use of SSL (TLS)

func (HttpFarmProbeOutput) Interval

probe interval, Value between 30 and 3600 seconds, default 30

func (HttpFarmProbeOutput) Match

What to match `pattern` against (`contains`, `default`, `internal`, `matches`, `status`)

func (HttpFarmProbeOutput) Method

HTTP probe method (`GET`, `HEAD`, `OPTIONS`, `internal`)

func (HttpFarmProbeOutput) Negate

Negate probe result

func (HttpFarmProbeOutput) Pattern

Pattern to match against `match`

func (HttpFarmProbeOutput) Port

Port for backends to receive traffic on.

func (HttpFarmProbeOutput) ToHttpFarmProbeOutput

func (o HttpFarmProbeOutput) ToHttpFarmProbeOutput() HttpFarmProbeOutput

func (HttpFarmProbeOutput) ToHttpFarmProbeOutputWithContext

func (o HttpFarmProbeOutput) ToHttpFarmProbeOutputWithContext(ctx context.Context) HttpFarmProbeOutput

func (HttpFarmProbeOutput) ToHttpFarmProbePtrOutput

func (o HttpFarmProbeOutput) ToHttpFarmProbePtrOutput() HttpFarmProbePtrOutput

func (HttpFarmProbeOutput) ToHttpFarmProbePtrOutputWithContext

func (o HttpFarmProbeOutput) ToHttpFarmProbePtrOutputWithContext(ctx context.Context) HttpFarmProbePtrOutput

func (HttpFarmProbeOutput) Type

Valid values : `http`, `internal`, `mysql`, `oco`, `pgsql`, `smtp`, `tcp`

func (HttpFarmProbeOutput) Url

URL for HTTP probe type.

type HttpFarmProbePtrInput

type HttpFarmProbePtrInput interface {
	pulumi.Input

	ToHttpFarmProbePtrOutput() HttpFarmProbePtrOutput
	ToHttpFarmProbePtrOutputWithContext(context.Context) HttpFarmProbePtrOutput
}

HttpFarmProbePtrInput is an input type that accepts HttpFarmProbeArgs, HttpFarmProbePtr and HttpFarmProbePtrOutput values. You can construct a concrete instance of `HttpFarmProbePtrInput` via:

        HttpFarmProbeArgs{...}

or:

        nil

type HttpFarmProbePtrOutput

type HttpFarmProbePtrOutput struct{ *pulumi.OutputState }

func (HttpFarmProbePtrOutput) Elem

func (HttpFarmProbePtrOutput) ElementType

func (HttpFarmProbePtrOutput) ElementType() reflect.Type

func (HttpFarmProbePtrOutput) ForceSsl

Force use of SSL (TLS)

func (HttpFarmProbePtrOutput) Interval

probe interval, Value between 30 and 3600 seconds, default 30

func (HttpFarmProbePtrOutput) Match

What to match `pattern` against (`contains`, `default`, `internal`, `matches`, `status`)

func (HttpFarmProbePtrOutput) Method

HTTP probe method (`GET`, `HEAD`, `OPTIONS`, `internal`)

func (HttpFarmProbePtrOutput) Negate

Negate probe result

func (HttpFarmProbePtrOutput) Pattern

Pattern to match against `match`

func (HttpFarmProbePtrOutput) Port

Port for backends to receive traffic on.

func (HttpFarmProbePtrOutput) ToHttpFarmProbePtrOutput

func (o HttpFarmProbePtrOutput) ToHttpFarmProbePtrOutput() HttpFarmProbePtrOutput

func (HttpFarmProbePtrOutput) ToHttpFarmProbePtrOutputWithContext

func (o HttpFarmProbePtrOutput) ToHttpFarmProbePtrOutputWithContext(ctx context.Context) HttpFarmProbePtrOutput

func (HttpFarmProbePtrOutput) Type

Valid values : `http`, `internal`, `mysql`, `oco`, `pgsql`, `smtp`, `tcp`

func (HttpFarmProbePtrOutput) Url

URL for HTTP probe type.

type HttpFarmServer

type HttpFarmServer struct {
	pulumi.CustomResourceState

	// Address of the backend server (IP from either internal or OVHcloud network)
	Address pulumi.StringOutput `pulumi:"address"`
	// is it a backup server used in case of failure of all the non-backup backends
	Backup pulumi.BoolPtrOutput   `pulumi:"backup"`
	Chain  pulumi.StringPtrOutput `pulumi:"chain"`
	// Value of the stickiness cookie used for this backend.
	Cookie pulumi.StringOutput `pulumi:"cookie"`
	// Label for the server
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// ID of the farm this server is attached to
	FarmId pulumi.IntOutput `pulumi:"farmId"`
	// enable action when backend marked down. (`shutdown-sessions`)
	OnMarkedDown pulumi.StringPtrOutput `pulumi:"onMarkedDown"`
	// Port that backend will respond on
	Port pulumi.IntPtrOutput `pulumi:"port"`
	// defines if backend will be probed to determine health and keep as active in farm if healthy
	Probe pulumi.BoolPtrOutput `pulumi:"probe"`
	// version of the PROXY protocol used to pass origin connection information from loadbalancer to receiving service (`v1`, `v2`, `v2-ssl`, `v2-ssl-cn`)
	ProxyProtocolVersion pulumi.StringPtrOutput `pulumi:"proxyProtocolVersion"`
	// The internal name of your IP load balancing
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
	// is the connection ciphered with SSL (TLS)
	Ssl pulumi.BoolPtrOutput `pulumi:"ssl"`
	// backend status - `active` or `inactive`
	Status pulumi.StringOutput `pulumi:"status"`
	// used in loadbalancing algorithm
	Weight pulumi.IntPtrOutput `pulumi:"weight"`
}

Creates a backend server entry linked to HTTP loadbalancing group (farm)

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		lb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, &iploadbalancing.GetIpLoadBalancingArgs{
			ServiceName: pulumi.StringRef("ip-1.2.3.4"),
			State:       pulumi.StringRef("ok"),
		}, nil)
		if err != nil {
			return err
		}
		farmname, err := IpLoadBalancing.NewHttpFarm(ctx, "farmname", &IpLoadBalancing.HttpFarmArgs{
			Port:        pulumi.Int(8080),
			ServiceName: pulumi.String(lb.ServiceName),
			Zone:        pulumi.String("all"),
		})
		if err != nil {
			return err
		}
		_, err = IpLoadBalancing.NewHttpFarmServer(ctx, "backend", &IpLoadBalancing.HttpFarmServerArgs{
			Address:              pulumi.String("4.5.6.7"),
			Backup:               pulumi.Bool(true),
			DisplayName:          pulumi.String("mybackend"),
			FarmId:               farmname.ID(),
			Port:                 pulumi.Int(80),
			Probe:                pulumi.Bool(true),
			ProxyProtocolVersion: pulumi.String("v2"),
			ServiceName:          pulumi.String(lb.ServiceName),
			Ssl:                  pulumi.Bool(false),
			Status:               pulumi.String("active"),
			Weight:               pulumi.Int(2),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

HTTP farm server can be imported using the following format `serviceName`, the `id` of the farm and the `id` of the server separated by "/" e.g.

func GetHttpFarmServer

func GetHttpFarmServer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *HttpFarmServerState, opts ...pulumi.ResourceOption) (*HttpFarmServer, error)

GetHttpFarmServer gets an existing HttpFarmServer resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewHttpFarmServer

func NewHttpFarmServer(ctx *pulumi.Context,
	name string, args *HttpFarmServerArgs, opts ...pulumi.ResourceOption) (*HttpFarmServer, error)

NewHttpFarmServer registers a new resource with the given unique name, arguments, and options.

func (*HttpFarmServer) ElementType

func (*HttpFarmServer) ElementType() reflect.Type

func (*HttpFarmServer) ToHttpFarmServerOutput

func (i *HttpFarmServer) ToHttpFarmServerOutput() HttpFarmServerOutput

func (*HttpFarmServer) ToHttpFarmServerOutputWithContext

func (i *HttpFarmServer) ToHttpFarmServerOutputWithContext(ctx context.Context) HttpFarmServerOutput

type HttpFarmServerArgs

type HttpFarmServerArgs struct {
	// Address of the backend server (IP from either internal or OVHcloud network)
	Address pulumi.StringInput
	// is it a backup server used in case of failure of all the non-backup backends
	Backup pulumi.BoolPtrInput
	Chain  pulumi.StringPtrInput
	// Label for the server
	DisplayName pulumi.StringPtrInput
	// ID of the farm this server is attached to
	FarmId pulumi.IntInput
	// enable action when backend marked down. (`shutdown-sessions`)
	OnMarkedDown pulumi.StringPtrInput
	// Port that backend will respond on
	Port pulumi.IntPtrInput
	// defines if backend will be probed to determine health and keep as active in farm if healthy
	Probe pulumi.BoolPtrInput
	// version of the PROXY protocol used to pass origin connection information from loadbalancer to receiving service (`v1`, `v2`, `v2-ssl`, `v2-ssl-cn`)
	ProxyProtocolVersion pulumi.StringPtrInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringInput
	// is the connection ciphered with SSL (TLS)
	Ssl pulumi.BoolPtrInput
	// backend status - `active` or `inactive`
	Status pulumi.StringInput
	// used in loadbalancing algorithm
	Weight pulumi.IntPtrInput
}

The set of arguments for constructing a HttpFarmServer resource.

func (HttpFarmServerArgs) ElementType

func (HttpFarmServerArgs) ElementType() reflect.Type

type HttpFarmServerArray

type HttpFarmServerArray []HttpFarmServerInput

func (HttpFarmServerArray) ElementType

func (HttpFarmServerArray) ElementType() reflect.Type

func (HttpFarmServerArray) ToHttpFarmServerArrayOutput

func (i HttpFarmServerArray) ToHttpFarmServerArrayOutput() HttpFarmServerArrayOutput

func (HttpFarmServerArray) ToHttpFarmServerArrayOutputWithContext

func (i HttpFarmServerArray) ToHttpFarmServerArrayOutputWithContext(ctx context.Context) HttpFarmServerArrayOutput

type HttpFarmServerArrayInput

type HttpFarmServerArrayInput interface {
	pulumi.Input

	ToHttpFarmServerArrayOutput() HttpFarmServerArrayOutput
	ToHttpFarmServerArrayOutputWithContext(context.Context) HttpFarmServerArrayOutput
}

HttpFarmServerArrayInput is an input type that accepts HttpFarmServerArray and HttpFarmServerArrayOutput values. You can construct a concrete instance of `HttpFarmServerArrayInput` via:

HttpFarmServerArray{ HttpFarmServerArgs{...} }

type HttpFarmServerArrayOutput

type HttpFarmServerArrayOutput struct{ *pulumi.OutputState }

func (HttpFarmServerArrayOutput) ElementType

func (HttpFarmServerArrayOutput) ElementType() reflect.Type

func (HttpFarmServerArrayOutput) Index

func (HttpFarmServerArrayOutput) ToHttpFarmServerArrayOutput

func (o HttpFarmServerArrayOutput) ToHttpFarmServerArrayOutput() HttpFarmServerArrayOutput

func (HttpFarmServerArrayOutput) ToHttpFarmServerArrayOutputWithContext

func (o HttpFarmServerArrayOutput) ToHttpFarmServerArrayOutputWithContext(ctx context.Context) HttpFarmServerArrayOutput

type HttpFarmServerInput

type HttpFarmServerInput interface {
	pulumi.Input

	ToHttpFarmServerOutput() HttpFarmServerOutput
	ToHttpFarmServerOutputWithContext(ctx context.Context) HttpFarmServerOutput
}

type HttpFarmServerMap

type HttpFarmServerMap map[string]HttpFarmServerInput

func (HttpFarmServerMap) ElementType

func (HttpFarmServerMap) ElementType() reflect.Type

func (HttpFarmServerMap) ToHttpFarmServerMapOutput

func (i HttpFarmServerMap) ToHttpFarmServerMapOutput() HttpFarmServerMapOutput

func (HttpFarmServerMap) ToHttpFarmServerMapOutputWithContext

func (i HttpFarmServerMap) ToHttpFarmServerMapOutputWithContext(ctx context.Context) HttpFarmServerMapOutput

type HttpFarmServerMapInput

type HttpFarmServerMapInput interface {
	pulumi.Input

	ToHttpFarmServerMapOutput() HttpFarmServerMapOutput
	ToHttpFarmServerMapOutputWithContext(context.Context) HttpFarmServerMapOutput
}

HttpFarmServerMapInput is an input type that accepts HttpFarmServerMap and HttpFarmServerMapOutput values. You can construct a concrete instance of `HttpFarmServerMapInput` via:

HttpFarmServerMap{ "key": HttpFarmServerArgs{...} }

type HttpFarmServerMapOutput

type HttpFarmServerMapOutput struct{ *pulumi.OutputState }

func (HttpFarmServerMapOutput) ElementType

func (HttpFarmServerMapOutput) ElementType() reflect.Type

func (HttpFarmServerMapOutput) MapIndex

func (HttpFarmServerMapOutput) ToHttpFarmServerMapOutput

func (o HttpFarmServerMapOutput) ToHttpFarmServerMapOutput() HttpFarmServerMapOutput

func (HttpFarmServerMapOutput) ToHttpFarmServerMapOutputWithContext

func (o HttpFarmServerMapOutput) ToHttpFarmServerMapOutputWithContext(ctx context.Context) HttpFarmServerMapOutput

type HttpFarmServerOutput

type HttpFarmServerOutput struct{ *pulumi.OutputState }

func (HttpFarmServerOutput) Address

Address of the backend server (IP from either internal or OVHcloud network)

func (HttpFarmServerOutput) Backup

is it a backup server used in case of failure of all the non-backup backends

func (HttpFarmServerOutput) Chain

func (HttpFarmServerOutput) Cookie

Value of the stickiness cookie used for this backend.

func (HttpFarmServerOutput) DisplayName

Label for the server

func (HttpFarmServerOutput) ElementType

func (HttpFarmServerOutput) ElementType() reflect.Type

func (HttpFarmServerOutput) FarmId

ID of the farm this server is attached to

func (HttpFarmServerOutput) OnMarkedDown

func (o HttpFarmServerOutput) OnMarkedDown() pulumi.StringPtrOutput

enable action when backend marked down. (`shutdown-sessions`)

func (HttpFarmServerOutput) Port

Port that backend will respond on

func (HttpFarmServerOutput) Probe

defines if backend will be probed to determine health and keep as active in farm if healthy

func (HttpFarmServerOutput) ProxyProtocolVersion

func (o HttpFarmServerOutput) ProxyProtocolVersion() pulumi.StringPtrOutput

version of the PROXY protocol used to pass origin connection information from loadbalancer to receiving service (`v1`, `v2`, `v2-ssl`, `v2-ssl-cn`)

func (HttpFarmServerOutput) ServiceName

func (o HttpFarmServerOutput) ServiceName() pulumi.StringOutput

The internal name of your IP load balancing

func (HttpFarmServerOutput) Ssl

is the connection ciphered with SSL (TLS)

func (HttpFarmServerOutput) Status

backend status - `active` or `inactive`

func (HttpFarmServerOutput) ToHttpFarmServerOutput

func (o HttpFarmServerOutput) ToHttpFarmServerOutput() HttpFarmServerOutput

func (HttpFarmServerOutput) ToHttpFarmServerOutputWithContext

func (o HttpFarmServerOutput) ToHttpFarmServerOutputWithContext(ctx context.Context) HttpFarmServerOutput

func (HttpFarmServerOutput) Weight

used in loadbalancing algorithm

type HttpFarmServerState

type HttpFarmServerState struct {
	// Address of the backend server (IP from either internal or OVHcloud network)
	Address pulumi.StringPtrInput
	// is it a backup server used in case of failure of all the non-backup backends
	Backup pulumi.BoolPtrInput
	Chain  pulumi.StringPtrInput
	// Value of the stickiness cookie used for this backend.
	Cookie pulumi.StringPtrInput
	// Label for the server
	DisplayName pulumi.StringPtrInput
	// ID of the farm this server is attached to
	FarmId pulumi.IntPtrInput
	// enable action when backend marked down. (`shutdown-sessions`)
	OnMarkedDown pulumi.StringPtrInput
	// Port that backend will respond on
	Port pulumi.IntPtrInput
	// defines if backend will be probed to determine health and keep as active in farm if healthy
	Probe pulumi.BoolPtrInput
	// version of the PROXY protocol used to pass origin connection information from loadbalancer to receiving service (`v1`, `v2`, `v2-ssl`, `v2-ssl-cn`)
	ProxyProtocolVersion pulumi.StringPtrInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringPtrInput
	// is the connection ciphered with SSL (TLS)
	Ssl pulumi.BoolPtrInput
	// backend status - `active` or `inactive`
	Status pulumi.StringPtrInput
	// used in loadbalancing algorithm
	Weight pulumi.IntPtrInput
}

func (HttpFarmServerState) ElementType

func (HttpFarmServerState) ElementType() reflect.Type

type HttpFarmState

type HttpFarmState struct {
	// Load balancing algorithm. `roundrobin` if null (`first`, `leastconn`, `roundrobin`, `source`)
	Balance pulumi.StringPtrInput
	// Readable label for loadbalancer farm
	DisplayName pulumi.StringPtrInput
	// Port for backends to receive traffic on.
	Port pulumi.IntPtrInput
	// define a backend healthcheck probe
	Probe HttpFarmProbePtrInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringPtrInput
	// Stickiness type. No stickiness if null (`sourceIp`, `cookie`)
	Stickiness pulumi.StringPtrInput
	// Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack
	VrackNetworkId pulumi.IntPtrInput
	// Zone where the farm will be defined (ie. `GRA`, `BHS` also supports `ALL`)
	Zone pulumi.StringPtrInput
}

func (HttpFarmState) ElementType

func (HttpFarmState) ElementType() reflect.Type

type HttpFrontend

type HttpFrontend struct {
	pulumi.CustomResourceState

	// Restrict IP Load Balancing access to these ip block. No restriction if null. List of IP blocks.
	AllowedSources pulumi.StringArrayOutput `pulumi:"allowedSources"`
	// Only attach frontend on these ip. No restriction if null. List of Ip blocks.
	DedicatedIpfos pulumi.StringArrayOutput `pulumi:"dedicatedIpfos"`
	// Default TCP Farm of your frontend
	DefaultFarmId pulumi.IntOutput `pulumi:"defaultFarmId"`
	// Default ssl served to your customer
	DefaultSslId pulumi.IntOutput `pulumi:"defaultSslId"`
	// Disable your frontend. Default: 'false'
	Disabled pulumi.BoolPtrOutput `pulumi:"disabled"`
	// Human readable name for your frontend, this field is for you
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// HTTP Strict Transport Security. Default: 'false'
	Hsts pulumi.BoolPtrOutput `pulumi:"hsts"`
	// HTTP headers to add to the frontend. List of string.
	HttpHeaders pulumi.StringArrayOutput `pulumi:"httpHeaders"`
	// Port(s) attached to your frontend. Supports single port (numerical value),
	// range (2 dash-delimited increasing ports) and comma-separated list of 'single port'
	// and/or 'range'. Each port must be in the [1;49151] range
	Port pulumi.StringOutput `pulumi:"port"`
	// Redirection HTTP'
	RedirectLocation pulumi.StringPtrOutput `pulumi:"redirectLocation"`
	// The internal name of your IP load balancing
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
	// SSL deciphering. Default: 'false'
	Ssl pulumi.BoolPtrOutput `pulumi:"ssl"`
	// Zone where the frontend will be defined (ie. `gra`, `bhs` also supports `all`)
	Zone pulumi.StringOutput `pulumi:"zone"`
}

Creates a backend HTTP server group (frontend) to be used by loadbalancing frontend(s)

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		lb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, &iploadbalancing.GetIpLoadBalancingArgs{
			ServiceName: pulumi.StringRef("ip-1.2.3.4"),
			State:       pulumi.StringRef("ok"),
		}, nil)
		if err != nil {
			return err
		}
		farm80, err := IpLoadBalancing.NewHttpFarm(ctx, "farm80", &IpLoadBalancing.HttpFarmArgs{
			DisplayName: pulumi.String("ingress-8080-gra"),
			Port:        pulumi.Int(80),
			ServiceName: pulumi.String(lb.ServiceName),
			Zone:        pulumi.String("all"),
		})
		if err != nil {
			return err
		}
		_, err = IpLoadBalancing.NewHttpFrontend(ctx, "testfrontend", &IpLoadBalancing.HttpFrontendArgs{
			DefaultFarmId: farm80.ID(),
			DisplayName:   pulumi.String("ingress-8080-gra"),
			Port:          pulumi.String("80,443"),
			ServiceName:   pulumi.String(lb.ServiceName),
			Zone:          pulumi.String("all"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

### With HTTP Header

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		lb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, &iploadbalancing.GetIpLoadBalancingArgs{
			ServiceName: pulumi.StringRef("ip-1.2.3.4"),
			State:       pulumi.StringRef("ok"),
		}, nil)
		if err != nil {
			return err
		}
		farm80, err := IpLoadBalancing.NewHttpFarm(ctx, "farm80", &IpLoadBalancing.HttpFarmArgs{
			DisplayName: pulumi.String("ingress-8080-gra"),
			Port:        pulumi.Int(80),
			ServiceName: pulumi.String(lb.ServiceName),
			Zone:        pulumi.String("all"),
		})
		if err != nil {
			return err
		}
		_, err = IpLoadBalancing.NewHttpFrontend(ctx, "testfrontend", &IpLoadBalancing.HttpFrontendArgs{
			DefaultFarmId: farm80.ID(),
			DisplayName:   pulumi.String("ingress-8080-gra"),
			HttpHeaders: pulumi.StringArray{
				pulumi.String("X-Ip-Header %%ci"),
				pulumi.String("X-Port-Header %%cp"),
			},
			Port:        pulumi.String("80,443"),
			ServiceName: pulumi.String(lb.ServiceName),
			Zone:        pulumi.String("all"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

HTTP frontend can be imported using the following format `serviceName` and the `id` of the frontend separated by "/" e.g.

func GetHttpFrontend

func GetHttpFrontend(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *HttpFrontendState, opts ...pulumi.ResourceOption) (*HttpFrontend, error)

GetHttpFrontend gets an existing HttpFrontend resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewHttpFrontend

func NewHttpFrontend(ctx *pulumi.Context,
	name string, args *HttpFrontendArgs, opts ...pulumi.ResourceOption) (*HttpFrontend, error)

NewHttpFrontend registers a new resource with the given unique name, arguments, and options.

func (*HttpFrontend) ElementType

func (*HttpFrontend) ElementType() reflect.Type

func (*HttpFrontend) ToHttpFrontendOutput

func (i *HttpFrontend) ToHttpFrontendOutput() HttpFrontendOutput

func (*HttpFrontend) ToHttpFrontendOutputWithContext

func (i *HttpFrontend) ToHttpFrontendOutputWithContext(ctx context.Context) HttpFrontendOutput

type HttpFrontendArgs

type HttpFrontendArgs struct {
	// Restrict IP Load Balancing access to these ip block. No restriction if null. List of IP blocks.
	AllowedSources pulumi.StringArrayInput
	// Only attach frontend on these ip. No restriction if null. List of Ip blocks.
	DedicatedIpfos pulumi.StringArrayInput
	// Default TCP Farm of your frontend
	DefaultFarmId pulumi.IntPtrInput
	// Default ssl served to your customer
	DefaultSslId pulumi.IntPtrInput
	// Disable your frontend. Default: 'false'
	Disabled pulumi.BoolPtrInput
	// Human readable name for your frontend, this field is for you
	DisplayName pulumi.StringPtrInput
	// HTTP Strict Transport Security. Default: 'false'
	Hsts pulumi.BoolPtrInput
	// HTTP headers to add to the frontend. List of string.
	HttpHeaders pulumi.StringArrayInput
	// Port(s) attached to your frontend. Supports single port (numerical value),
	// range (2 dash-delimited increasing ports) and comma-separated list of 'single port'
	// and/or 'range'. Each port must be in the [1;49151] range
	Port pulumi.StringInput
	// Redirection HTTP'
	RedirectLocation pulumi.StringPtrInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringInput
	// SSL deciphering. Default: 'false'
	Ssl pulumi.BoolPtrInput
	// Zone where the frontend will be defined (ie. `gra`, `bhs` also supports `all`)
	Zone pulumi.StringInput
}

The set of arguments for constructing a HttpFrontend resource.

func (HttpFrontendArgs) ElementType

func (HttpFrontendArgs) ElementType() reflect.Type

type HttpFrontendArray

type HttpFrontendArray []HttpFrontendInput

func (HttpFrontendArray) ElementType

func (HttpFrontendArray) ElementType() reflect.Type

func (HttpFrontendArray) ToHttpFrontendArrayOutput

func (i HttpFrontendArray) ToHttpFrontendArrayOutput() HttpFrontendArrayOutput

func (HttpFrontendArray) ToHttpFrontendArrayOutputWithContext

func (i HttpFrontendArray) ToHttpFrontendArrayOutputWithContext(ctx context.Context) HttpFrontendArrayOutput

type HttpFrontendArrayInput

type HttpFrontendArrayInput interface {
	pulumi.Input

	ToHttpFrontendArrayOutput() HttpFrontendArrayOutput
	ToHttpFrontendArrayOutputWithContext(context.Context) HttpFrontendArrayOutput
}

HttpFrontendArrayInput is an input type that accepts HttpFrontendArray and HttpFrontendArrayOutput values. You can construct a concrete instance of `HttpFrontendArrayInput` via:

HttpFrontendArray{ HttpFrontendArgs{...} }

type HttpFrontendArrayOutput

type HttpFrontendArrayOutput struct{ *pulumi.OutputState }

func (HttpFrontendArrayOutput) ElementType

func (HttpFrontendArrayOutput) ElementType() reflect.Type

func (HttpFrontendArrayOutput) Index

func (HttpFrontendArrayOutput) ToHttpFrontendArrayOutput

func (o HttpFrontendArrayOutput) ToHttpFrontendArrayOutput() HttpFrontendArrayOutput

func (HttpFrontendArrayOutput) ToHttpFrontendArrayOutputWithContext

func (o HttpFrontendArrayOutput) ToHttpFrontendArrayOutputWithContext(ctx context.Context) HttpFrontendArrayOutput

type HttpFrontendInput

type HttpFrontendInput interface {
	pulumi.Input

	ToHttpFrontendOutput() HttpFrontendOutput
	ToHttpFrontendOutputWithContext(ctx context.Context) HttpFrontendOutput
}

type HttpFrontendMap

type HttpFrontendMap map[string]HttpFrontendInput

func (HttpFrontendMap) ElementType

func (HttpFrontendMap) ElementType() reflect.Type

func (HttpFrontendMap) ToHttpFrontendMapOutput

func (i HttpFrontendMap) ToHttpFrontendMapOutput() HttpFrontendMapOutput

func (HttpFrontendMap) ToHttpFrontendMapOutputWithContext

func (i HttpFrontendMap) ToHttpFrontendMapOutputWithContext(ctx context.Context) HttpFrontendMapOutput

type HttpFrontendMapInput

type HttpFrontendMapInput interface {
	pulumi.Input

	ToHttpFrontendMapOutput() HttpFrontendMapOutput
	ToHttpFrontendMapOutputWithContext(context.Context) HttpFrontendMapOutput
}

HttpFrontendMapInput is an input type that accepts HttpFrontendMap and HttpFrontendMapOutput values. You can construct a concrete instance of `HttpFrontendMapInput` via:

HttpFrontendMap{ "key": HttpFrontendArgs{...} }

type HttpFrontendMapOutput

type HttpFrontendMapOutput struct{ *pulumi.OutputState }

func (HttpFrontendMapOutput) ElementType

func (HttpFrontendMapOutput) ElementType() reflect.Type

func (HttpFrontendMapOutput) MapIndex

func (HttpFrontendMapOutput) ToHttpFrontendMapOutput

func (o HttpFrontendMapOutput) ToHttpFrontendMapOutput() HttpFrontendMapOutput

func (HttpFrontendMapOutput) ToHttpFrontendMapOutputWithContext

func (o HttpFrontendMapOutput) ToHttpFrontendMapOutputWithContext(ctx context.Context) HttpFrontendMapOutput

type HttpFrontendOutput

type HttpFrontendOutput struct{ *pulumi.OutputState }

func (HttpFrontendOutput) AllowedSources

func (o HttpFrontendOutput) AllowedSources() pulumi.StringArrayOutput

Restrict IP Load Balancing access to these ip block. No restriction if null. List of IP blocks.

func (HttpFrontendOutput) DedicatedIpfos

func (o HttpFrontendOutput) DedicatedIpfos() pulumi.StringArrayOutput

Only attach frontend on these ip. No restriction if null. List of Ip blocks.

func (HttpFrontendOutput) DefaultFarmId

func (o HttpFrontendOutput) DefaultFarmId() pulumi.IntOutput

Default TCP Farm of your frontend

func (HttpFrontendOutput) DefaultSslId

func (o HttpFrontendOutput) DefaultSslId() pulumi.IntOutput

Default ssl served to your customer

func (HttpFrontendOutput) Disabled

Disable your frontend. Default: 'false'

func (HttpFrontendOutput) DisplayName

func (o HttpFrontendOutput) DisplayName() pulumi.StringPtrOutput

Human readable name for your frontend, this field is for you

func (HttpFrontendOutput) ElementType

func (HttpFrontendOutput) ElementType() reflect.Type

func (HttpFrontendOutput) Hsts

HTTP Strict Transport Security. Default: 'false'

func (HttpFrontendOutput) HttpHeaders

HTTP headers to add to the frontend. List of string.

func (HttpFrontendOutput) Port

Port(s) attached to your frontend. Supports single port (numerical value), range (2 dash-delimited increasing ports) and comma-separated list of 'single port' and/or 'range'. Each port must be in the [1;49151] range

func (HttpFrontendOutput) RedirectLocation

func (o HttpFrontendOutput) RedirectLocation() pulumi.StringPtrOutput

Redirection HTTP'

func (HttpFrontendOutput) ServiceName

func (o HttpFrontendOutput) ServiceName() pulumi.StringOutput

The internal name of your IP load balancing

func (HttpFrontendOutput) Ssl

SSL deciphering. Default: 'false'

func (HttpFrontendOutput) ToHttpFrontendOutput

func (o HttpFrontendOutput) ToHttpFrontendOutput() HttpFrontendOutput

func (HttpFrontendOutput) ToHttpFrontendOutputWithContext

func (o HttpFrontendOutput) ToHttpFrontendOutputWithContext(ctx context.Context) HttpFrontendOutput

func (HttpFrontendOutput) Zone

Zone where the frontend will be defined (ie. `gra`, `bhs` also supports `all`)

type HttpFrontendState

type HttpFrontendState struct {
	// Restrict IP Load Balancing access to these ip block. No restriction if null. List of IP blocks.
	AllowedSources pulumi.StringArrayInput
	// Only attach frontend on these ip. No restriction if null. List of Ip blocks.
	DedicatedIpfos pulumi.StringArrayInput
	// Default TCP Farm of your frontend
	DefaultFarmId pulumi.IntPtrInput
	// Default ssl served to your customer
	DefaultSslId pulumi.IntPtrInput
	// Disable your frontend. Default: 'false'
	Disabled pulumi.BoolPtrInput
	// Human readable name for your frontend, this field is for you
	DisplayName pulumi.StringPtrInput
	// HTTP Strict Transport Security. Default: 'false'
	Hsts pulumi.BoolPtrInput
	// HTTP headers to add to the frontend. List of string.
	HttpHeaders pulumi.StringArrayInput
	// Port(s) attached to your frontend. Supports single port (numerical value),
	// range (2 dash-delimited increasing ports) and comma-separated list of 'single port'
	// and/or 'range'. Each port must be in the [1;49151] range
	Port pulumi.StringPtrInput
	// Redirection HTTP'
	RedirectLocation pulumi.StringPtrInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringPtrInput
	// SSL deciphering. Default: 'false'
	Ssl pulumi.BoolPtrInput
	// Zone where the frontend will be defined (ie. `gra`, `bhs` also supports `all`)
	Zone pulumi.StringPtrInput
}

func (HttpFrontendState) ElementType

func (HttpFrontendState) ElementType() reflect.Type

type HttpRoute

type HttpRoute struct {
	pulumi.CustomResourceState

	// Action triggered when all rules match
	Action HttpRouteActionOutput `pulumi:"action"`
	// Human readable name for your route, this field is for you
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// Route traffic for this frontend
	FrontendId pulumi.IntOutput `pulumi:"frontendId"`
	// List of rules to match to trigger action
	Rules HttpRouteRuleTypeArrayOutput `pulumi:"rules"`
	// The internal name of your IP load balancing
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
	// HTTP status code for "redirect" and "reject" actions
	Status pulumi.StringOutput `pulumi:"status"`
	// Route priority ([0..255]). 0 if null. Highest priority routes are evaluated first. Only the first matching route will trigger an action
	Weight pulumi.IntOutput `pulumi:"weight"`
}

Manage HTTP route for a loadbalancer service

## Example Usage

Route which redirect all url to https.

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := IpLoadBalancing.NewHttpRoute(ctx, "httpsredirect", &IpLoadBalancing.HttpRouteArgs{
			Action: &iploadbalancing.HttpRouteActionArgs{
				Status: pulumi.Int(302),
				Target: pulumi.String("https://${host}${path}${arguments}"),
				Type:   pulumi.String("redirect"),
			},
			DisplayName: pulumi.String("Redirect to HTTPS"),
			ServiceName: pulumi.String("loadbalancer-xxxxxxxxxxxxxxxxxx"),
			Weight:      pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

HTTP route can be imported using the following format `serviceName` and the `id` of the route separated by "/" e.g.

func GetHttpRoute

func GetHttpRoute(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *HttpRouteState, opts ...pulumi.ResourceOption) (*HttpRoute, error)

GetHttpRoute gets an existing HttpRoute resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewHttpRoute

func NewHttpRoute(ctx *pulumi.Context,
	name string, args *HttpRouteArgs, opts ...pulumi.ResourceOption) (*HttpRoute, error)

NewHttpRoute registers a new resource with the given unique name, arguments, and options.

func (*HttpRoute) ElementType

func (*HttpRoute) ElementType() reflect.Type

func (*HttpRoute) ToHttpRouteOutput

func (i *HttpRoute) ToHttpRouteOutput() HttpRouteOutput

func (*HttpRoute) ToHttpRouteOutputWithContext

func (i *HttpRoute) ToHttpRouteOutputWithContext(ctx context.Context) HttpRouteOutput

type HttpRouteAction

type HttpRouteAction struct {
	// HTTP status code for "redirect" and "reject" actions
	Status *int `pulumi:"status"`
	// Farm ID for "farm" action type or URL template for "redirect" action. You may use ${uri}, ${protocol}, ${host}, ${port} and ${path} variables in redirect target
	Target *string `pulumi:"target"`
	// Action to trigger if all the rules of this route matches
	Type string `pulumi:"type"`
}

type HttpRouteActionArgs

type HttpRouteActionArgs struct {
	// HTTP status code for "redirect" and "reject" actions
	Status pulumi.IntPtrInput `pulumi:"status"`
	// Farm ID for "farm" action type or URL template for "redirect" action. You may use ${uri}, ${protocol}, ${host}, ${port} and ${path} variables in redirect target
	Target pulumi.StringPtrInput `pulumi:"target"`
	// Action to trigger if all the rules of this route matches
	Type pulumi.StringInput `pulumi:"type"`
}

func (HttpRouteActionArgs) ElementType

func (HttpRouteActionArgs) ElementType() reflect.Type

func (HttpRouteActionArgs) ToHttpRouteActionOutput

func (i HttpRouteActionArgs) ToHttpRouteActionOutput() HttpRouteActionOutput

func (HttpRouteActionArgs) ToHttpRouteActionOutputWithContext

func (i HttpRouteActionArgs) ToHttpRouteActionOutputWithContext(ctx context.Context) HttpRouteActionOutput

func (HttpRouteActionArgs) ToHttpRouteActionPtrOutput

func (i HttpRouteActionArgs) ToHttpRouteActionPtrOutput() HttpRouteActionPtrOutput

func (HttpRouteActionArgs) ToHttpRouteActionPtrOutputWithContext

func (i HttpRouteActionArgs) ToHttpRouteActionPtrOutputWithContext(ctx context.Context) HttpRouteActionPtrOutput

type HttpRouteActionInput

type HttpRouteActionInput interface {
	pulumi.Input

	ToHttpRouteActionOutput() HttpRouteActionOutput
	ToHttpRouteActionOutputWithContext(context.Context) HttpRouteActionOutput
}

HttpRouteActionInput is an input type that accepts HttpRouteActionArgs and HttpRouteActionOutput values. You can construct a concrete instance of `HttpRouteActionInput` via:

HttpRouteActionArgs{...}

type HttpRouteActionOutput

type HttpRouteActionOutput struct{ *pulumi.OutputState }

func (HttpRouteActionOutput) ElementType

func (HttpRouteActionOutput) ElementType() reflect.Type

func (HttpRouteActionOutput) Status

HTTP status code for "redirect" and "reject" actions

func (HttpRouteActionOutput) Target

Farm ID for "farm" action type or URL template for "redirect" action. You may use ${uri}, ${protocol}, ${host}, ${port} and ${path} variables in redirect target

func (HttpRouteActionOutput) ToHttpRouteActionOutput

func (o HttpRouteActionOutput) ToHttpRouteActionOutput() HttpRouteActionOutput

func (HttpRouteActionOutput) ToHttpRouteActionOutputWithContext

func (o HttpRouteActionOutput) ToHttpRouteActionOutputWithContext(ctx context.Context) HttpRouteActionOutput

func (HttpRouteActionOutput) ToHttpRouteActionPtrOutput

func (o HttpRouteActionOutput) ToHttpRouteActionPtrOutput() HttpRouteActionPtrOutput

func (HttpRouteActionOutput) ToHttpRouteActionPtrOutputWithContext

func (o HttpRouteActionOutput) ToHttpRouteActionPtrOutputWithContext(ctx context.Context) HttpRouteActionPtrOutput

func (HttpRouteActionOutput) Type

Action to trigger if all the rules of this route matches

type HttpRouteActionPtrInput

type HttpRouteActionPtrInput interface {
	pulumi.Input

	ToHttpRouteActionPtrOutput() HttpRouteActionPtrOutput
	ToHttpRouteActionPtrOutputWithContext(context.Context) HttpRouteActionPtrOutput
}

HttpRouteActionPtrInput is an input type that accepts HttpRouteActionArgs, HttpRouteActionPtr and HttpRouteActionPtrOutput values. You can construct a concrete instance of `HttpRouteActionPtrInput` via:

        HttpRouteActionArgs{...}

or:

        nil

type HttpRouteActionPtrOutput

type HttpRouteActionPtrOutput struct{ *pulumi.OutputState }

func (HttpRouteActionPtrOutput) Elem

func (HttpRouteActionPtrOutput) ElementType

func (HttpRouteActionPtrOutput) ElementType() reflect.Type

func (HttpRouteActionPtrOutput) Status

HTTP status code for "redirect" and "reject" actions

func (HttpRouteActionPtrOutput) Target

Farm ID for "farm" action type or URL template for "redirect" action. You may use ${uri}, ${protocol}, ${host}, ${port} and ${path} variables in redirect target

func (HttpRouteActionPtrOutput) ToHttpRouteActionPtrOutput

func (o HttpRouteActionPtrOutput) ToHttpRouteActionPtrOutput() HttpRouteActionPtrOutput

func (HttpRouteActionPtrOutput) ToHttpRouteActionPtrOutputWithContext

func (o HttpRouteActionPtrOutput) ToHttpRouteActionPtrOutputWithContext(ctx context.Context) HttpRouteActionPtrOutput

func (HttpRouteActionPtrOutput) Type

Action to trigger if all the rules of this route matches

type HttpRouteArgs

type HttpRouteArgs struct {
	// Action triggered when all rules match
	Action HttpRouteActionInput
	// Human readable name for your route, this field is for you
	DisplayName pulumi.StringPtrInput
	// Route traffic for this frontend
	FrontendId pulumi.IntPtrInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringInput
	// Route priority ([0..255]). 0 if null. Highest priority routes are evaluated first. Only the first matching route will trigger an action
	Weight pulumi.IntPtrInput
}

The set of arguments for constructing a HttpRoute resource.

func (HttpRouteArgs) ElementType

func (HttpRouteArgs) ElementType() reflect.Type

type HttpRouteArray

type HttpRouteArray []HttpRouteInput

func (HttpRouteArray) ElementType

func (HttpRouteArray) ElementType() reflect.Type

func (HttpRouteArray) ToHttpRouteArrayOutput

func (i HttpRouteArray) ToHttpRouteArrayOutput() HttpRouteArrayOutput

func (HttpRouteArray) ToHttpRouteArrayOutputWithContext

func (i HttpRouteArray) ToHttpRouteArrayOutputWithContext(ctx context.Context) HttpRouteArrayOutput

type HttpRouteArrayInput

type HttpRouteArrayInput interface {
	pulumi.Input

	ToHttpRouteArrayOutput() HttpRouteArrayOutput
	ToHttpRouteArrayOutputWithContext(context.Context) HttpRouteArrayOutput
}

HttpRouteArrayInput is an input type that accepts HttpRouteArray and HttpRouteArrayOutput values. You can construct a concrete instance of `HttpRouteArrayInput` via:

HttpRouteArray{ HttpRouteArgs{...} }

type HttpRouteArrayOutput

type HttpRouteArrayOutput struct{ *pulumi.OutputState }

func (HttpRouteArrayOutput) ElementType

func (HttpRouteArrayOutput) ElementType() reflect.Type

func (HttpRouteArrayOutput) Index

func (HttpRouteArrayOutput) ToHttpRouteArrayOutput

func (o HttpRouteArrayOutput) ToHttpRouteArrayOutput() HttpRouteArrayOutput

func (HttpRouteArrayOutput) ToHttpRouteArrayOutputWithContext

func (o HttpRouteArrayOutput) ToHttpRouteArrayOutputWithContext(ctx context.Context) HttpRouteArrayOutput

type HttpRouteInput

type HttpRouteInput interface {
	pulumi.Input

	ToHttpRouteOutput() HttpRouteOutput
	ToHttpRouteOutputWithContext(ctx context.Context) HttpRouteOutput
}

type HttpRouteMap

type HttpRouteMap map[string]HttpRouteInput

func (HttpRouteMap) ElementType

func (HttpRouteMap) ElementType() reflect.Type

func (HttpRouteMap) ToHttpRouteMapOutput

func (i HttpRouteMap) ToHttpRouteMapOutput() HttpRouteMapOutput

func (HttpRouteMap) ToHttpRouteMapOutputWithContext

func (i HttpRouteMap) ToHttpRouteMapOutputWithContext(ctx context.Context) HttpRouteMapOutput

type HttpRouteMapInput

type HttpRouteMapInput interface {
	pulumi.Input

	ToHttpRouteMapOutput() HttpRouteMapOutput
	ToHttpRouteMapOutputWithContext(context.Context) HttpRouteMapOutput
}

HttpRouteMapInput is an input type that accepts HttpRouteMap and HttpRouteMapOutput values. You can construct a concrete instance of `HttpRouteMapInput` via:

HttpRouteMap{ "key": HttpRouteArgs{...} }

type HttpRouteMapOutput

type HttpRouteMapOutput struct{ *pulumi.OutputState }

func (HttpRouteMapOutput) ElementType

func (HttpRouteMapOutput) ElementType() reflect.Type

func (HttpRouteMapOutput) MapIndex

func (HttpRouteMapOutput) ToHttpRouteMapOutput

func (o HttpRouteMapOutput) ToHttpRouteMapOutput() HttpRouteMapOutput

func (HttpRouteMapOutput) ToHttpRouteMapOutputWithContext

func (o HttpRouteMapOutput) ToHttpRouteMapOutputWithContext(ctx context.Context) HttpRouteMapOutput

type HttpRouteOutput

type HttpRouteOutput struct{ *pulumi.OutputState }

func (HttpRouteOutput) Action

Action triggered when all rules match

func (HttpRouteOutput) DisplayName

func (o HttpRouteOutput) DisplayName() pulumi.StringPtrOutput

Human readable name for your route, this field is for you

func (HttpRouteOutput) ElementType

func (HttpRouteOutput) ElementType() reflect.Type

func (HttpRouteOutput) FrontendId

func (o HttpRouteOutput) FrontendId() pulumi.IntOutput

Route traffic for this frontend

func (HttpRouteOutput) Rules

List of rules to match to trigger action

func (HttpRouteOutput) ServiceName

func (o HttpRouteOutput) ServiceName() pulumi.StringOutput

The internal name of your IP load balancing

func (HttpRouteOutput) Status

func (o HttpRouteOutput) Status() pulumi.StringOutput

HTTP status code for "redirect" and "reject" actions

func (HttpRouteOutput) ToHttpRouteOutput

func (o HttpRouteOutput) ToHttpRouteOutput() HttpRouteOutput

func (HttpRouteOutput) ToHttpRouteOutputWithContext

func (o HttpRouteOutput) ToHttpRouteOutputWithContext(ctx context.Context) HttpRouteOutput

func (HttpRouteOutput) Weight

func (o HttpRouteOutput) Weight() pulumi.IntOutput

Route priority ([0..255]). 0 if null. Highest priority routes are evaluated first. Only the first matching route will trigger an action

type HttpRouteRule

type HttpRouteRule struct {
	pulumi.CustomResourceState

	// Human readable name for your rule, this field is for you
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// Name of the field to match like "protocol" or "host". See "/ipLoadbalancing/{serviceName}/availableRouteRules" for a list of available rules
	Field pulumi.StringOutput `pulumi:"field"`
	// Matching operator. Not all operators are available for all fields. See "/ipLoadbalancing/{serviceName}/availableRouteRules"
	Match pulumi.StringOutput `pulumi:"match"`
	// Invert the matching operator effect
	Negate pulumi.BoolOutput `pulumi:"negate"`
	// Value to match against this match. Interpretation if this field depends on the match and field
	Pattern pulumi.StringPtrOutput `pulumi:"pattern"`
	// The route to apply this rule
	RouteId pulumi.StringOutput `pulumi:"routeId"`
	// The internal name of your IP load balancing
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
	// Name of sub-field, if applicable. This may be a Cookie or Header name for instance
	SubField pulumi.StringPtrOutput `pulumi:"subField"`
}

Manage rules for HTTP route.

## Example Usage

Route which redirect all URL to HTTPs for example.com (Vhost).

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		httpsredirect, err := IpLoadBalancing.NewHttpRoute(ctx, "httpsredirect", &IpLoadBalancing.HttpRouteArgs{
			Action: &iploadbalancing.HttpRouteActionArgs{
				Status: pulumi.Int(302),
				Target: pulumi.String("https://${host}${path}${arguments}"),
				Type:   pulumi.String("redirect"),
			},
			DisplayName: pulumi.String("Redirect to HTTPS"),
			FrontendId:  pulumi.Int(11111),
			ServiceName: pulumi.String("loadbalancer-xxxxxxxxxxxxxxxxxx"),
			Weight:      pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		_, err = IpLoadBalancing.NewHttpRouteRule(ctx, "examplerule", &IpLoadBalancing.HttpRouteRuleArgs{
			DisplayName: pulumi.String("Match example.com host"),
			Field:       pulumi.String("host"),
			Match:       pulumi.String("is"),
			Negate:      pulumi.Bool(false),
			Pattern:     pulumi.String("example.com"),
			RouteId:     httpsredirect.ID(),
			ServiceName: pulumi.String("loadbalancer-xxxxxxxxxxxxxxxxxx"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

Rule which match a specific header (same effect as the host match above).

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := IpLoadBalancing.NewHttpRouteRule(ctx, "examplerule", &IpLoadBalancing.HttpRouteRuleArgs{
			DisplayName: pulumi.String("Match example.com Host header"),
			Field:       pulumi.String("headers"),
			Match:       pulumi.String("is"),
			Negate:      pulumi.Bool(false),
			Pattern:     pulumi.String("example.com"),
			RouteId:     pulumi.Any(ovh_iploadbalancing_http_route.Httpsredirect.Id),
			ServiceName: pulumi.String("loadbalancer-xxxxxxxxxxxxxxxxxx"),
			SubField:    pulumi.String("Host"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

HTTP route rule can be imported using the following format `serviceName`, the `id` of the route and the `id` of the rule separated by "/" e.g.

func GetHttpRouteRule

func GetHttpRouteRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *HttpRouteRuleState, opts ...pulumi.ResourceOption) (*HttpRouteRule, error)

GetHttpRouteRule gets an existing HttpRouteRule resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewHttpRouteRule

func NewHttpRouteRule(ctx *pulumi.Context,
	name string, args *HttpRouteRuleArgs, opts ...pulumi.ResourceOption) (*HttpRouteRule, error)

NewHttpRouteRule registers a new resource with the given unique name, arguments, and options.

func (*HttpRouteRule) ElementType

func (*HttpRouteRule) ElementType() reflect.Type

func (*HttpRouteRule) ToHttpRouteRuleOutput

func (i *HttpRouteRule) ToHttpRouteRuleOutput() HttpRouteRuleOutput

func (*HttpRouteRule) ToHttpRouteRuleOutputWithContext

func (i *HttpRouteRule) ToHttpRouteRuleOutputWithContext(ctx context.Context) HttpRouteRuleOutput

type HttpRouteRuleArgs

type HttpRouteRuleArgs struct {
	// Human readable name for your rule, this field is for you
	DisplayName pulumi.StringPtrInput
	// Name of the field to match like "protocol" or "host". See "/ipLoadbalancing/{serviceName}/availableRouteRules" for a list of available rules
	Field pulumi.StringInput
	// Matching operator. Not all operators are available for all fields. See "/ipLoadbalancing/{serviceName}/availableRouteRules"
	Match pulumi.StringInput
	// Invert the matching operator effect
	Negate pulumi.BoolPtrInput
	// Value to match against this match. Interpretation if this field depends on the match and field
	Pattern pulumi.StringPtrInput
	// The route to apply this rule
	RouteId pulumi.StringInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringInput
	// Name of sub-field, if applicable. This may be a Cookie or Header name for instance
	SubField pulumi.StringPtrInput
}

The set of arguments for constructing a HttpRouteRule resource.

func (HttpRouteRuleArgs) ElementType

func (HttpRouteRuleArgs) ElementType() reflect.Type

type HttpRouteRuleArray

type HttpRouteRuleArray []HttpRouteRuleInput

func (HttpRouteRuleArray) ElementType

func (HttpRouteRuleArray) ElementType() reflect.Type

func (HttpRouteRuleArray) ToHttpRouteRuleArrayOutput

func (i HttpRouteRuleArray) ToHttpRouteRuleArrayOutput() HttpRouteRuleArrayOutput

func (HttpRouteRuleArray) ToHttpRouteRuleArrayOutputWithContext

func (i HttpRouteRuleArray) ToHttpRouteRuleArrayOutputWithContext(ctx context.Context) HttpRouteRuleArrayOutput

type HttpRouteRuleArrayInput

type HttpRouteRuleArrayInput interface {
	pulumi.Input

	ToHttpRouteRuleArrayOutput() HttpRouteRuleArrayOutput
	ToHttpRouteRuleArrayOutputWithContext(context.Context) HttpRouteRuleArrayOutput
}

HttpRouteRuleArrayInput is an input type that accepts HttpRouteRuleArray and HttpRouteRuleArrayOutput values. You can construct a concrete instance of `HttpRouteRuleArrayInput` via:

HttpRouteRuleArray{ HttpRouteRuleArgs{...} }

type HttpRouteRuleArrayOutput

type HttpRouteRuleArrayOutput struct{ *pulumi.OutputState }

func (HttpRouteRuleArrayOutput) ElementType

func (HttpRouteRuleArrayOutput) ElementType() reflect.Type

func (HttpRouteRuleArrayOutput) Index

func (HttpRouteRuleArrayOutput) ToHttpRouteRuleArrayOutput

func (o HttpRouteRuleArrayOutput) ToHttpRouteRuleArrayOutput() HttpRouteRuleArrayOutput

func (HttpRouteRuleArrayOutput) ToHttpRouteRuleArrayOutputWithContext

func (o HttpRouteRuleArrayOutput) ToHttpRouteRuleArrayOutputWithContext(ctx context.Context) HttpRouteRuleArrayOutput

type HttpRouteRuleInput

type HttpRouteRuleInput interface {
	pulumi.Input

	ToHttpRouteRuleOutput() HttpRouteRuleOutput
	ToHttpRouteRuleOutputWithContext(ctx context.Context) HttpRouteRuleOutput
}

type HttpRouteRuleMap

type HttpRouteRuleMap map[string]HttpRouteRuleInput

func (HttpRouteRuleMap) ElementType

func (HttpRouteRuleMap) ElementType() reflect.Type

func (HttpRouteRuleMap) ToHttpRouteRuleMapOutput

func (i HttpRouteRuleMap) ToHttpRouteRuleMapOutput() HttpRouteRuleMapOutput

func (HttpRouteRuleMap) ToHttpRouteRuleMapOutputWithContext

func (i HttpRouteRuleMap) ToHttpRouteRuleMapOutputWithContext(ctx context.Context) HttpRouteRuleMapOutput

type HttpRouteRuleMapInput

type HttpRouteRuleMapInput interface {
	pulumi.Input

	ToHttpRouteRuleMapOutput() HttpRouteRuleMapOutput
	ToHttpRouteRuleMapOutputWithContext(context.Context) HttpRouteRuleMapOutput
}

HttpRouteRuleMapInput is an input type that accepts HttpRouteRuleMap and HttpRouteRuleMapOutput values. You can construct a concrete instance of `HttpRouteRuleMapInput` via:

HttpRouteRuleMap{ "key": HttpRouteRuleArgs{...} }

type HttpRouteRuleMapOutput

type HttpRouteRuleMapOutput struct{ *pulumi.OutputState }

func (HttpRouteRuleMapOutput) ElementType

func (HttpRouteRuleMapOutput) ElementType() reflect.Type

func (HttpRouteRuleMapOutput) MapIndex

func (HttpRouteRuleMapOutput) ToHttpRouteRuleMapOutput

func (o HttpRouteRuleMapOutput) ToHttpRouteRuleMapOutput() HttpRouteRuleMapOutput

func (HttpRouteRuleMapOutput) ToHttpRouteRuleMapOutputWithContext

func (o HttpRouteRuleMapOutput) ToHttpRouteRuleMapOutputWithContext(ctx context.Context) HttpRouteRuleMapOutput

type HttpRouteRuleOutput

type HttpRouteRuleOutput struct{ *pulumi.OutputState }

func (HttpRouteRuleOutput) DisplayName

func (o HttpRouteRuleOutput) DisplayName() pulumi.StringPtrOutput

Human readable name for your rule, this field is for you

func (HttpRouteRuleOutput) ElementType

func (HttpRouteRuleOutput) ElementType() reflect.Type

func (HttpRouteRuleOutput) Field

Name of the field to match like "protocol" or "host". See "/ipLoadbalancing/{serviceName}/availableRouteRules" for a list of available rules

func (HttpRouteRuleOutput) Match

Matching operator. Not all operators are available for all fields. See "/ipLoadbalancing/{serviceName}/availableRouteRules"

func (HttpRouteRuleOutput) Negate

Invert the matching operator effect

func (HttpRouteRuleOutput) Pattern

Value to match against this match. Interpretation if this field depends on the match and field

func (HttpRouteRuleOutput) RouteId

The route to apply this rule

func (HttpRouteRuleOutput) ServiceName

func (o HttpRouteRuleOutput) ServiceName() pulumi.StringOutput

The internal name of your IP load balancing

func (HttpRouteRuleOutput) SubField

Name of sub-field, if applicable. This may be a Cookie or Header name for instance

func (HttpRouteRuleOutput) ToHttpRouteRuleOutput

func (o HttpRouteRuleOutput) ToHttpRouteRuleOutput() HttpRouteRuleOutput

func (HttpRouteRuleOutput) ToHttpRouteRuleOutputWithContext

func (o HttpRouteRuleOutput) ToHttpRouteRuleOutputWithContext(ctx context.Context) HttpRouteRuleOutput

type HttpRouteRuleState

type HttpRouteRuleState struct {
	// Human readable name for your rule, this field is for you
	DisplayName pulumi.StringPtrInput
	// Name of the field to match like "protocol" or "host". See "/ipLoadbalancing/{serviceName}/availableRouteRules" for a list of available rules
	Field pulumi.StringPtrInput
	// Matching operator. Not all operators are available for all fields. See "/ipLoadbalancing/{serviceName}/availableRouteRules"
	Match pulumi.StringPtrInput
	// Invert the matching operator effect
	Negate pulumi.BoolPtrInput
	// Value to match against this match. Interpretation if this field depends on the match and field
	Pattern pulumi.StringPtrInput
	// The route to apply this rule
	RouteId pulumi.StringPtrInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringPtrInput
	// Name of sub-field, if applicable. This may be a Cookie or Header name for instance
	SubField pulumi.StringPtrInput
}

func (HttpRouteRuleState) ElementType

func (HttpRouteRuleState) ElementType() reflect.Type

type HttpRouteRuleType

type HttpRouteRuleType struct {
	// Name of the field to match like "protocol" or "host" "/ipLoadbalancing/{serviceName}/route/availableRules" for a list of available rules
	Field *string `pulumi:"field"`
	// Matching operator. Not all operators are available for all fields. See "availableRules"
	Match *string `pulumi:"match"`
	// Invert the matching operator effect
	Negate *bool `pulumi:"negate"`
	// Value to match against this match. Interpretation if this field depends on the match and field
	Pattern *string `pulumi:"pattern"`
	// Id of your rule
	RuleId *int `pulumi:"ruleId"`
	// Name of sub-field, if applicable. This may be a Cookie or Header name for instance
	SubField *string `pulumi:"subField"`
}

type HttpRouteRuleTypeArgs

type HttpRouteRuleTypeArgs struct {
	// Name of the field to match like "protocol" or "host" "/ipLoadbalancing/{serviceName}/route/availableRules" for a list of available rules
	Field pulumi.StringPtrInput `pulumi:"field"`
	// Matching operator. Not all operators are available for all fields. See "availableRules"
	Match pulumi.StringPtrInput `pulumi:"match"`
	// Invert the matching operator effect
	Negate pulumi.BoolPtrInput `pulumi:"negate"`
	// Value to match against this match. Interpretation if this field depends on the match and field
	Pattern pulumi.StringPtrInput `pulumi:"pattern"`
	// Id of your rule
	RuleId pulumi.IntPtrInput `pulumi:"ruleId"`
	// Name of sub-field, if applicable. This may be a Cookie or Header name for instance
	SubField pulumi.StringPtrInput `pulumi:"subField"`
}

func (HttpRouteRuleTypeArgs) ElementType

func (HttpRouteRuleTypeArgs) ElementType() reflect.Type

func (HttpRouteRuleTypeArgs) ToHttpRouteRuleTypeOutput

func (i HttpRouteRuleTypeArgs) ToHttpRouteRuleTypeOutput() HttpRouteRuleTypeOutput

func (HttpRouteRuleTypeArgs) ToHttpRouteRuleTypeOutputWithContext

func (i HttpRouteRuleTypeArgs) ToHttpRouteRuleTypeOutputWithContext(ctx context.Context) HttpRouteRuleTypeOutput

type HttpRouteRuleTypeArray

type HttpRouteRuleTypeArray []HttpRouteRuleTypeInput

func (HttpRouteRuleTypeArray) ElementType

func (HttpRouteRuleTypeArray) ElementType() reflect.Type

func (HttpRouteRuleTypeArray) ToHttpRouteRuleTypeArrayOutput

func (i HttpRouteRuleTypeArray) ToHttpRouteRuleTypeArrayOutput() HttpRouteRuleTypeArrayOutput

func (HttpRouteRuleTypeArray) ToHttpRouteRuleTypeArrayOutputWithContext

func (i HttpRouteRuleTypeArray) ToHttpRouteRuleTypeArrayOutputWithContext(ctx context.Context) HttpRouteRuleTypeArrayOutput

type HttpRouteRuleTypeArrayInput

type HttpRouteRuleTypeArrayInput interface {
	pulumi.Input

	ToHttpRouteRuleTypeArrayOutput() HttpRouteRuleTypeArrayOutput
	ToHttpRouteRuleTypeArrayOutputWithContext(context.Context) HttpRouteRuleTypeArrayOutput
}

HttpRouteRuleTypeArrayInput is an input type that accepts HttpRouteRuleTypeArray and HttpRouteRuleTypeArrayOutput values. You can construct a concrete instance of `HttpRouteRuleTypeArrayInput` via:

HttpRouteRuleTypeArray{ HttpRouteRuleTypeArgs{...} }

type HttpRouteRuleTypeArrayOutput

type HttpRouteRuleTypeArrayOutput struct{ *pulumi.OutputState }

func (HttpRouteRuleTypeArrayOutput) ElementType

func (HttpRouteRuleTypeArrayOutput) Index

func (HttpRouteRuleTypeArrayOutput) ToHttpRouteRuleTypeArrayOutput

func (o HttpRouteRuleTypeArrayOutput) ToHttpRouteRuleTypeArrayOutput() HttpRouteRuleTypeArrayOutput

func (HttpRouteRuleTypeArrayOutput) ToHttpRouteRuleTypeArrayOutputWithContext

func (o HttpRouteRuleTypeArrayOutput) ToHttpRouteRuleTypeArrayOutputWithContext(ctx context.Context) HttpRouteRuleTypeArrayOutput

type HttpRouteRuleTypeInput

type HttpRouteRuleTypeInput interface {
	pulumi.Input

	ToHttpRouteRuleTypeOutput() HttpRouteRuleTypeOutput
	ToHttpRouteRuleTypeOutputWithContext(context.Context) HttpRouteRuleTypeOutput
}

HttpRouteRuleTypeInput is an input type that accepts HttpRouteRuleTypeArgs and HttpRouteRuleTypeOutput values. You can construct a concrete instance of `HttpRouteRuleTypeInput` via:

HttpRouteRuleTypeArgs{...}

type HttpRouteRuleTypeOutput

type HttpRouteRuleTypeOutput struct{ *pulumi.OutputState }

func (HttpRouteRuleTypeOutput) ElementType

func (HttpRouteRuleTypeOutput) ElementType() reflect.Type

func (HttpRouteRuleTypeOutput) Field

Name of the field to match like "protocol" or "host" "/ipLoadbalancing/{serviceName}/route/availableRules" for a list of available rules

func (HttpRouteRuleTypeOutput) Match

Matching operator. Not all operators are available for all fields. See "availableRules"

func (HttpRouteRuleTypeOutput) Negate

Invert the matching operator effect

func (HttpRouteRuleTypeOutput) Pattern

Value to match against this match. Interpretation if this field depends on the match and field

func (HttpRouteRuleTypeOutput) RuleId

Id of your rule

func (HttpRouteRuleTypeOutput) SubField

Name of sub-field, if applicable. This may be a Cookie or Header name for instance

func (HttpRouteRuleTypeOutput) ToHttpRouteRuleTypeOutput

func (o HttpRouteRuleTypeOutput) ToHttpRouteRuleTypeOutput() HttpRouteRuleTypeOutput

func (HttpRouteRuleTypeOutput) ToHttpRouteRuleTypeOutputWithContext

func (o HttpRouteRuleTypeOutput) ToHttpRouteRuleTypeOutputWithContext(ctx context.Context) HttpRouteRuleTypeOutput

type HttpRouteState

type HttpRouteState struct {
	// Action triggered when all rules match
	Action HttpRouteActionPtrInput
	// Human readable name for your route, this field is for you
	DisplayName pulumi.StringPtrInput
	// Route traffic for this frontend
	FrontendId pulumi.IntPtrInput
	// List of rules to match to trigger action
	Rules HttpRouteRuleTypeArrayInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringPtrInput
	// HTTP status code for "redirect" and "reject" actions
	Status pulumi.StringPtrInput
	// Route priority ([0..255]). 0 if null. Highest priority routes are evaluated first. Only the first matching route will trigger an action
	Weight pulumi.IntPtrInput
}

func (HttpRouteState) ElementType

func (HttpRouteState) ElementType() reflect.Type

type LoadBalancer

type LoadBalancer struct {
	pulumi.CustomResourceState

	// URN of the load balancer, used when writing IAM policies
	LoadBalancerURN pulumi.StringOutput `pulumi:"LoadBalancerURN"`
	// Set the name displayed in ManagerV6 for your iplb (max 50 chars)
	DisplayName pulumi.StringOutput `pulumi:"displayName"`
	// Your IP load balancing
	IpLoadbalancing pulumi.StringOutput `pulumi:"ipLoadbalancing"`
	// The IPV4 associated to your IP load balancing
	Ipv4 pulumi.StringOutput `pulumi:"ipv4"`
	// The IPV6 associated to your IP load balancing. DEPRECATED.
	Ipv6 pulumi.StringOutput `pulumi:"ipv6"`
	// The metrics token associated with your IP load balancing
	MetricsToken pulumi.StringOutput `pulumi:"metricsToken"`
	// The offer of your IP load balancing
	Offer pulumi.StringOutput `pulumi:"offer"`
	// Available additional zone for your Load Balancer
	OrderableZones LoadBalancerOrderableZoneArrayOutput `pulumi:"orderableZones"`
	// Details about an Order
	Orders LoadBalancerOrderArrayOutput `pulumi:"orders"`
	// OVHcloud Subsidiary. Country of OVHcloud legal entity you'll be billed by. List of supported subsidiaries available on API at [/1.0/me.json under `models.nichandle.OvhSubsidiaryEnum`](https://eu.api.ovh.com/1.0/me.json)
	OvhSubsidiary pulumi.StringOutput `pulumi:"ovhSubsidiary"`
	// Ovh payment mode
	//
	// Deprecated: This field is not anymore used since the API has been deprecated in favor of /payment/mean. Now, the default payment mean is used.
	PaymentMean pulumi.StringPtrOutput `pulumi:"paymentMean"`
	// Product Plan to order
	Plan LoadBalancerPlanOutput `pulumi:"plan"`
	// Product Plan to order
	PlanOptions LoadBalancerPlanOptionArrayOutput `pulumi:"planOptions"`
	// The internal name of your IP load balancing
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
	// Modern oldest compatible clients : Firefox 27, Chrome 30, IE 11 on Windows 7, Edge, Opera 17, Safari 9, Android 5.0, and Java 8. Intermediate oldest compatible clients : Firefox 1, Chrome 1, IE 7, Opera 5, Safari 1, Windows XP IE8, Android 2.3, Java 7. Intermediate if null. one of "intermediate", "modern".
	SslConfiguration pulumi.StringOutput `pulumi:"sslConfiguration"`
	// Current state of your IP
	State pulumi.StringOutput `pulumi:"state"`
	// Vrack eligibility
	VrackEligibility pulumi.BoolOutput `pulumi:"vrackEligibility"`
	// Name of the vRack on which the current Load Balancer is attached to, as it is named on vRack product
	VrackName pulumi.StringOutput `pulumi:"vrackName"`
	// Location where your service is
	Zones pulumi.StringArrayOutput `pulumi:"zones"`
}

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing"
"github.com/ovh/pulumi-ovh/sdk/go/ovh/Me"
"github.com/ovh/pulumi-ovh/sdk/go/ovh/Order"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		myaccount, err := Me.GetMe(ctx, nil, nil)
		if err != nil {
			return err
		}
		mycart, err := Order.GetCart(ctx, &order.GetCartArgs{
			OvhSubsidiary: myaccount.OvhSubsidiary,
		}, nil)
		if err != nil {
			return err
		}
		iplb, err := Order.GetCartProductPlan(ctx, &order.GetCartProductPlanArgs{
			CartId:        mycart.Id,
			PriceCapacity: "renew",
			Product:       "ipLoadbalancing",
			PlanCode:      "iplb-lb1",
		}, nil)
		if err != nil {
			return err
		}
		bhs, err := Order.GetCartProductOptionsPlan(ctx, &order.GetCartProductOptionsPlanArgs{
			CartId:          iplb.CartId,
			PriceCapacity:   iplb.PriceCapacity,
			Product:         iplb.Product,
			PlanCode:        iplb.PlanCode,
			OptionsPlanCode: "iplb-zone-lb1-rbx",
		}, nil)
		if err != nil {
			return err
		}
		_, err = IpLoadBalancing.NewLoadBalancer(ctx, "iplb-lb1", &IpLoadBalancing.LoadBalancerArgs{
			OvhSubsidiary: pulumi.String(mycart.OvhSubsidiary),
			DisplayName:   pulumi.String("my ip loadbalancing"),
			Plan: &iploadbalancing.LoadBalancerPlanArgs{
				Duration:    pulumi.String(iplb.SelectedPrices[0].Duration),
				PlanCode:    pulumi.String(iplb.PlanCode),
				PricingMode: pulumi.String(iplb.SelectedPrices[0].PricingMode),
			},
			PlanOptions: iploadbalancing.LoadBalancerPlanOptionArray{
				&iploadbalancing.LoadBalancerPlanOptionArgs{
					Duration:    pulumi.String(bhs.SelectedPrices[0].Duration),
					PlanCode:    pulumi.String(bhs.PlanCode),
					PricingMode: pulumi.String(bhs.SelectedPrices[0].PricingMode),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

func GetLoadBalancer

func GetLoadBalancer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LoadBalancerState, opts ...pulumi.ResourceOption) (*LoadBalancer, error)

GetLoadBalancer gets an existing LoadBalancer resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewLoadBalancer

func NewLoadBalancer(ctx *pulumi.Context,
	name string, args *LoadBalancerArgs, opts ...pulumi.ResourceOption) (*LoadBalancer, error)

NewLoadBalancer registers a new resource with the given unique name, arguments, and options.

func (*LoadBalancer) ElementType

func (*LoadBalancer) ElementType() reflect.Type

func (*LoadBalancer) ToLoadBalancerOutput

func (i *LoadBalancer) ToLoadBalancerOutput() LoadBalancerOutput

func (*LoadBalancer) ToLoadBalancerOutputWithContext

func (i *LoadBalancer) ToLoadBalancerOutputWithContext(ctx context.Context) LoadBalancerOutput

type LoadBalancerArgs

type LoadBalancerArgs struct {
	// Set the name displayed in ManagerV6 for your iplb (max 50 chars)
	DisplayName pulumi.StringPtrInput
	// OVHcloud Subsidiary. Country of OVHcloud legal entity you'll be billed by. List of supported subsidiaries available on API at [/1.0/me.json under `models.nichandle.OvhSubsidiaryEnum`](https://eu.api.ovh.com/1.0/me.json)
	OvhSubsidiary pulumi.StringInput
	// Ovh payment mode
	//
	// Deprecated: This field is not anymore used since the API has been deprecated in favor of /payment/mean. Now, the default payment mean is used.
	PaymentMean pulumi.StringPtrInput
	// Product Plan to order
	Plan LoadBalancerPlanInput
	// Product Plan to order
	PlanOptions LoadBalancerPlanOptionArrayInput
	// Modern oldest compatible clients : Firefox 27, Chrome 30, IE 11 on Windows 7, Edge, Opera 17, Safari 9, Android 5.0, and Java 8. Intermediate oldest compatible clients : Firefox 1, Chrome 1, IE 7, Opera 5, Safari 1, Windows XP IE8, Android 2.3, Java 7. Intermediate if null. one of "intermediate", "modern".
	SslConfiguration pulumi.StringPtrInput
}

The set of arguments for constructing a LoadBalancer resource.

func (LoadBalancerArgs) ElementType

func (LoadBalancerArgs) ElementType() reflect.Type

type LoadBalancerArray

type LoadBalancerArray []LoadBalancerInput

func (LoadBalancerArray) ElementType

func (LoadBalancerArray) ElementType() reflect.Type

func (LoadBalancerArray) ToLoadBalancerArrayOutput

func (i LoadBalancerArray) ToLoadBalancerArrayOutput() LoadBalancerArrayOutput

func (LoadBalancerArray) ToLoadBalancerArrayOutputWithContext

func (i LoadBalancerArray) ToLoadBalancerArrayOutputWithContext(ctx context.Context) LoadBalancerArrayOutput

type LoadBalancerArrayInput

type LoadBalancerArrayInput interface {
	pulumi.Input

	ToLoadBalancerArrayOutput() LoadBalancerArrayOutput
	ToLoadBalancerArrayOutputWithContext(context.Context) LoadBalancerArrayOutput
}

LoadBalancerArrayInput is an input type that accepts LoadBalancerArray and LoadBalancerArrayOutput values. You can construct a concrete instance of `LoadBalancerArrayInput` via:

LoadBalancerArray{ LoadBalancerArgs{...} }

type LoadBalancerArrayOutput

type LoadBalancerArrayOutput struct{ *pulumi.OutputState }

func (LoadBalancerArrayOutput) ElementType

func (LoadBalancerArrayOutput) ElementType() reflect.Type

func (LoadBalancerArrayOutput) Index

func (LoadBalancerArrayOutput) ToLoadBalancerArrayOutput

func (o LoadBalancerArrayOutput) ToLoadBalancerArrayOutput() LoadBalancerArrayOutput

func (LoadBalancerArrayOutput) ToLoadBalancerArrayOutputWithContext

func (o LoadBalancerArrayOutput) ToLoadBalancerArrayOutputWithContext(ctx context.Context) LoadBalancerArrayOutput

type LoadBalancerInput

type LoadBalancerInput interface {
	pulumi.Input

	ToLoadBalancerOutput() LoadBalancerOutput
	ToLoadBalancerOutputWithContext(ctx context.Context) LoadBalancerOutput
}

type LoadBalancerMap

type LoadBalancerMap map[string]LoadBalancerInput

func (LoadBalancerMap) ElementType

func (LoadBalancerMap) ElementType() reflect.Type

func (LoadBalancerMap) ToLoadBalancerMapOutput

func (i LoadBalancerMap) ToLoadBalancerMapOutput() LoadBalancerMapOutput

func (LoadBalancerMap) ToLoadBalancerMapOutputWithContext

func (i LoadBalancerMap) ToLoadBalancerMapOutputWithContext(ctx context.Context) LoadBalancerMapOutput

type LoadBalancerMapInput

type LoadBalancerMapInput interface {
	pulumi.Input

	ToLoadBalancerMapOutput() LoadBalancerMapOutput
	ToLoadBalancerMapOutputWithContext(context.Context) LoadBalancerMapOutput
}

LoadBalancerMapInput is an input type that accepts LoadBalancerMap and LoadBalancerMapOutput values. You can construct a concrete instance of `LoadBalancerMapInput` via:

LoadBalancerMap{ "key": LoadBalancerArgs{...} }

type LoadBalancerMapOutput

type LoadBalancerMapOutput struct{ *pulumi.OutputState }

func (LoadBalancerMapOutput) ElementType

func (LoadBalancerMapOutput) ElementType() reflect.Type

func (LoadBalancerMapOutput) MapIndex

func (LoadBalancerMapOutput) ToLoadBalancerMapOutput

func (o LoadBalancerMapOutput) ToLoadBalancerMapOutput() LoadBalancerMapOutput

func (LoadBalancerMapOutput) ToLoadBalancerMapOutputWithContext

func (o LoadBalancerMapOutput) ToLoadBalancerMapOutputWithContext(ctx context.Context) LoadBalancerMapOutput

type LoadBalancerOrder

type LoadBalancerOrder struct {
	// date
	Date *string `pulumi:"date"`
	// Information about a Bill entry
	Details []LoadBalancerOrderDetail `pulumi:"details"`
	// expiration date
	ExpirationDate *string `pulumi:"expirationDate"`
	// order id
	OrderId *int `pulumi:"orderId"`
}

type LoadBalancerOrderArgs

type LoadBalancerOrderArgs struct {
	// date
	Date pulumi.StringPtrInput `pulumi:"date"`
	// Information about a Bill entry
	Details LoadBalancerOrderDetailArrayInput `pulumi:"details"`
	// expiration date
	ExpirationDate pulumi.StringPtrInput `pulumi:"expirationDate"`
	// order id
	OrderId pulumi.IntPtrInput `pulumi:"orderId"`
}

func (LoadBalancerOrderArgs) ElementType

func (LoadBalancerOrderArgs) ElementType() reflect.Type

func (LoadBalancerOrderArgs) ToLoadBalancerOrderOutput

func (i LoadBalancerOrderArgs) ToLoadBalancerOrderOutput() LoadBalancerOrderOutput

func (LoadBalancerOrderArgs) ToLoadBalancerOrderOutputWithContext

func (i LoadBalancerOrderArgs) ToLoadBalancerOrderOutputWithContext(ctx context.Context) LoadBalancerOrderOutput

type LoadBalancerOrderArray

type LoadBalancerOrderArray []LoadBalancerOrderInput

func (LoadBalancerOrderArray) ElementType

func (LoadBalancerOrderArray) ElementType() reflect.Type

func (LoadBalancerOrderArray) ToLoadBalancerOrderArrayOutput

func (i LoadBalancerOrderArray) ToLoadBalancerOrderArrayOutput() LoadBalancerOrderArrayOutput

func (LoadBalancerOrderArray) ToLoadBalancerOrderArrayOutputWithContext

func (i LoadBalancerOrderArray) ToLoadBalancerOrderArrayOutputWithContext(ctx context.Context) LoadBalancerOrderArrayOutput

type LoadBalancerOrderArrayInput

type LoadBalancerOrderArrayInput interface {
	pulumi.Input

	ToLoadBalancerOrderArrayOutput() LoadBalancerOrderArrayOutput
	ToLoadBalancerOrderArrayOutputWithContext(context.Context) LoadBalancerOrderArrayOutput
}

LoadBalancerOrderArrayInput is an input type that accepts LoadBalancerOrderArray and LoadBalancerOrderArrayOutput values. You can construct a concrete instance of `LoadBalancerOrderArrayInput` via:

LoadBalancerOrderArray{ LoadBalancerOrderArgs{...} }

type LoadBalancerOrderArrayOutput

type LoadBalancerOrderArrayOutput struct{ *pulumi.OutputState }

func (LoadBalancerOrderArrayOutput) ElementType

func (LoadBalancerOrderArrayOutput) Index

func (LoadBalancerOrderArrayOutput) ToLoadBalancerOrderArrayOutput

func (o LoadBalancerOrderArrayOutput) ToLoadBalancerOrderArrayOutput() LoadBalancerOrderArrayOutput

func (LoadBalancerOrderArrayOutput) ToLoadBalancerOrderArrayOutputWithContext

func (o LoadBalancerOrderArrayOutput) ToLoadBalancerOrderArrayOutputWithContext(ctx context.Context) LoadBalancerOrderArrayOutput

type LoadBalancerOrderDetail

type LoadBalancerOrderDetail struct {
	// description
	Description *string `pulumi:"description"`
	// expiration date
	Domain *string `pulumi:"domain"`
	// order detail id
	OrderDetailId *int `pulumi:"orderDetailId"`
	// quantity
	Quantity *string `pulumi:"quantity"`
}

type LoadBalancerOrderDetailArgs

type LoadBalancerOrderDetailArgs struct {
	// description
	Description pulumi.StringPtrInput `pulumi:"description"`
	// expiration date
	Domain pulumi.StringPtrInput `pulumi:"domain"`
	// order detail id
	OrderDetailId pulumi.IntPtrInput `pulumi:"orderDetailId"`
	// quantity
	Quantity pulumi.StringPtrInput `pulumi:"quantity"`
}

func (LoadBalancerOrderDetailArgs) ElementType

func (LoadBalancerOrderDetailArgs) ToLoadBalancerOrderDetailOutput

func (i LoadBalancerOrderDetailArgs) ToLoadBalancerOrderDetailOutput() LoadBalancerOrderDetailOutput

func (LoadBalancerOrderDetailArgs) ToLoadBalancerOrderDetailOutputWithContext

func (i LoadBalancerOrderDetailArgs) ToLoadBalancerOrderDetailOutputWithContext(ctx context.Context) LoadBalancerOrderDetailOutput

type LoadBalancerOrderDetailArray

type LoadBalancerOrderDetailArray []LoadBalancerOrderDetailInput

func (LoadBalancerOrderDetailArray) ElementType

func (LoadBalancerOrderDetailArray) ToLoadBalancerOrderDetailArrayOutput

func (i LoadBalancerOrderDetailArray) ToLoadBalancerOrderDetailArrayOutput() LoadBalancerOrderDetailArrayOutput

func (LoadBalancerOrderDetailArray) ToLoadBalancerOrderDetailArrayOutputWithContext

func (i LoadBalancerOrderDetailArray) ToLoadBalancerOrderDetailArrayOutputWithContext(ctx context.Context) LoadBalancerOrderDetailArrayOutput

type LoadBalancerOrderDetailArrayInput

type LoadBalancerOrderDetailArrayInput interface {
	pulumi.Input

	ToLoadBalancerOrderDetailArrayOutput() LoadBalancerOrderDetailArrayOutput
	ToLoadBalancerOrderDetailArrayOutputWithContext(context.Context) LoadBalancerOrderDetailArrayOutput
}

LoadBalancerOrderDetailArrayInput is an input type that accepts LoadBalancerOrderDetailArray and LoadBalancerOrderDetailArrayOutput values. You can construct a concrete instance of `LoadBalancerOrderDetailArrayInput` via:

LoadBalancerOrderDetailArray{ LoadBalancerOrderDetailArgs{...} }

type LoadBalancerOrderDetailArrayOutput

type LoadBalancerOrderDetailArrayOutput struct{ *pulumi.OutputState }

func (LoadBalancerOrderDetailArrayOutput) ElementType

func (LoadBalancerOrderDetailArrayOutput) Index

func (LoadBalancerOrderDetailArrayOutput) ToLoadBalancerOrderDetailArrayOutput

func (o LoadBalancerOrderDetailArrayOutput) ToLoadBalancerOrderDetailArrayOutput() LoadBalancerOrderDetailArrayOutput

func (LoadBalancerOrderDetailArrayOutput) ToLoadBalancerOrderDetailArrayOutputWithContext

func (o LoadBalancerOrderDetailArrayOutput) ToLoadBalancerOrderDetailArrayOutputWithContext(ctx context.Context) LoadBalancerOrderDetailArrayOutput

type LoadBalancerOrderDetailInput

type LoadBalancerOrderDetailInput interface {
	pulumi.Input

	ToLoadBalancerOrderDetailOutput() LoadBalancerOrderDetailOutput
	ToLoadBalancerOrderDetailOutputWithContext(context.Context) LoadBalancerOrderDetailOutput
}

LoadBalancerOrderDetailInput is an input type that accepts LoadBalancerOrderDetailArgs and LoadBalancerOrderDetailOutput values. You can construct a concrete instance of `LoadBalancerOrderDetailInput` via:

LoadBalancerOrderDetailArgs{...}

type LoadBalancerOrderDetailOutput

type LoadBalancerOrderDetailOutput struct{ *pulumi.OutputState }

func (LoadBalancerOrderDetailOutput) Description

description

func (LoadBalancerOrderDetailOutput) Domain

expiration date

func (LoadBalancerOrderDetailOutput) ElementType

func (LoadBalancerOrderDetailOutput) OrderDetailId

order detail id

func (LoadBalancerOrderDetailOutput) Quantity

quantity

func (LoadBalancerOrderDetailOutput) ToLoadBalancerOrderDetailOutput

func (o LoadBalancerOrderDetailOutput) ToLoadBalancerOrderDetailOutput() LoadBalancerOrderDetailOutput

func (LoadBalancerOrderDetailOutput) ToLoadBalancerOrderDetailOutputWithContext

func (o LoadBalancerOrderDetailOutput) ToLoadBalancerOrderDetailOutputWithContext(ctx context.Context) LoadBalancerOrderDetailOutput

type LoadBalancerOrderInput

type LoadBalancerOrderInput interface {
	pulumi.Input

	ToLoadBalancerOrderOutput() LoadBalancerOrderOutput
	ToLoadBalancerOrderOutputWithContext(context.Context) LoadBalancerOrderOutput
}

LoadBalancerOrderInput is an input type that accepts LoadBalancerOrderArgs and LoadBalancerOrderOutput values. You can construct a concrete instance of `LoadBalancerOrderInput` via:

LoadBalancerOrderArgs{...}

type LoadBalancerOrderOutput

type LoadBalancerOrderOutput struct{ *pulumi.OutputState }

func (LoadBalancerOrderOutput) Date

date

func (LoadBalancerOrderOutput) Details

Information about a Bill entry

func (LoadBalancerOrderOutput) ElementType

func (LoadBalancerOrderOutput) ElementType() reflect.Type

func (LoadBalancerOrderOutput) ExpirationDate

func (o LoadBalancerOrderOutput) ExpirationDate() pulumi.StringPtrOutput

expiration date

func (LoadBalancerOrderOutput) OrderId

order id

func (LoadBalancerOrderOutput) ToLoadBalancerOrderOutput

func (o LoadBalancerOrderOutput) ToLoadBalancerOrderOutput() LoadBalancerOrderOutput

func (LoadBalancerOrderOutput) ToLoadBalancerOrderOutputWithContext

func (o LoadBalancerOrderOutput) ToLoadBalancerOrderOutputWithContext(ctx context.Context) LoadBalancerOrderOutput

type LoadBalancerOrderableZone

type LoadBalancerOrderableZone struct {
	// The zone three letter code
	Name *string `pulumi:"name"`
	// Plan code
	PlanCode *string `pulumi:"planCode"`
}

type LoadBalancerOrderableZoneArgs

type LoadBalancerOrderableZoneArgs struct {
	// The zone three letter code
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Plan code
	PlanCode pulumi.StringPtrInput `pulumi:"planCode"`
}

func (LoadBalancerOrderableZoneArgs) ElementType

func (LoadBalancerOrderableZoneArgs) ToLoadBalancerOrderableZoneOutput

func (i LoadBalancerOrderableZoneArgs) ToLoadBalancerOrderableZoneOutput() LoadBalancerOrderableZoneOutput

func (LoadBalancerOrderableZoneArgs) ToLoadBalancerOrderableZoneOutputWithContext

func (i LoadBalancerOrderableZoneArgs) ToLoadBalancerOrderableZoneOutputWithContext(ctx context.Context) LoadBalancerOrderableZoneOutput

type LoadBalancerOrderableZoneArray

type LoadBalancerOrderableZoneArray []LoadBalancerOrderableZoneInput

func (LoadBalancerOrderableZoneArray) ElementType

func (LoadBalancerOrderableZoneArray) ToLoadBalancerOrderableZoneArrayOutput

func (i LoadBalancerOrderableZoneArray) ToLoadBalancerOrderableZoneArrayOutput() LoadBalancerOrderableZoneArrayOutput

func (LoadBalancerOrderableZoneArray) ToLoadBalancerOrderableZoneArrayOutputWithContext

func (i LoadBalancerOrderableZoneArray) ToLoadBalancerOrderableZoneArrayOutputWithContext(ctx context.Context) LoadBalancerOrderableZoneArrayOutput

type LoadBalancerOrderableZoneArrayInput

type LoadBalancerOrderableZoneArrayInput interface {
	pulumi.Input

	ToLoadBalancerOrderableZoneArrayOutput() LoadBalancerOrderableZoneArrayOutput
	ToLoadBalancerOrderableZoneArrayOutputWithContext(context.Context) LoadBalancerOrderableZoneArrayOutput
}

LoadBalancerOrderableZoneArrayInput is an input type that accepts LoadBalancerOrderableZoneArray and LoadBalancerOrderableZoneArrayOutput values. You can construct a concrete instance of `LoadBalancerOrderableZoneArrayInput` via:

LoadBalancerOrderableZoneArray{ LoadBalancerOrderableZoneArgs{...} }

type LoadBalancerOrderableZoneArrayOutput

type LoadBalancerOrderableZoneArrayOutput struct{ *pulumi.OutputState }

func (LoadBalancerOrderableZoneArrayOutput) ElementType

func (LoadBalancerOrderableZoneArrayOutput) Index

func (LoadBalancerOrderableZoneArrayOutput) ToLoadBalancerOrderableZoneArrayOutput

func (o LoadBalancerOrderableZoneArrayOutput) ToLoadBalancerOrderableZoneArrayOutput() LoadBalancerOrderableZoneArrayOutput

func (LoadBalancerOrderableZoneArrayOutput) ToLoadBalancerOrderableZoneArrayOutputWithContext

func (o LoadBalancerOrderableZoneArrayOutput) ToLoadBalancerOrderableZoneArrayOutputWithContext(ctx context.Context) LoadBalancerOrderableZoneArrayOutput

type LoadBalancerOrderableZoneInput

type LoadBalancerOrderableZoneInput interface {
	pulumi.Input

	ToLoadBalancerOrderableZoneOutput() LoadBalancerOrderableZoneOutput
	ToLoadBalancerOrderableZoneOutputWithContext(context.Context) LoadBalancerOrderableZoneOutput
}

LoadBalancerOrderableZoneInput is an input type that accepts LoadBalancerOrderableZoneArgs and LoadBalancerOrderableZoneOutput values. You can construct a concrete instance of `LoadBalancerOrderableZoneInput` via:

LoadBalancerOrderableZoneArgs{...}

type LoadBalancerOrderableZoneOutput

type LoadBalancerOrderableZoneOutput struct{ *pulumi.OutputState }

func (LoadBalancerOrderableZoneOutput) ElementType

func (LoadBalancerOrderableZoneOutput) Name

The zone three letter code

func (LoadBalancerOrderableZoneOutput) PlanCode

Plan code

func (LoadBalancerOrderableZoneOutput) ToLoadBalancerOrderableZoneOutput

func (o LoadBalancerOrderableZoneOutput) ToLoadBalancerOrderableZoneOutput() LoadBalancerOrderableZoneOutput

func (LoadBalancerOrderableZoneOutput) ToLoadBalancerOrderableZoneOutputWithContext

func (o LoadBalancerOrderableZoneOutput) ToLoadBalancerOrderableZoneOutputWithContext(ctx context.Context) LoadBalancerOrderableZoneOutput

type LoadBalancerOutput

type LoadBalancerOutput struct{ *pulumi.OutputState }

func (LoadBalancerOutput) DisplayName

func (o LoadBalancerOutput) DisplayName() pulumi.StringOutput

Set the name displayed in ManagerV6 for your iplb (max 50 chars)

func (LoadBalancerOutput) ElementType

func (LoadBalancerOutput) ElementType() reflect.Type

func (LoadBalancerOutput) IpLoadbalancing

func (o LoadBalancerOutput) IpLoadbalancing() pulumi.StringOutput

Your IP load balancing

func (LoadBalancerOutput) Ipv4

The IPV4 associated to your IP load balancing

func (LoadBalancerOutput) Ipv6

The IPV6 associated to your IP load balancing. DEPRECATED.

func (LoadBalancerOutput) LoadBalancerURN added in v0.34.3

func (o LoadBalancerOutput) LoadBalancerURN() pulumi.StringOutput

URN of the load balancer, used when writing IAM policies

func (LoadBalancerOutput) MetricsToken

func (o LoadBalancerOutput) MetricsToken() pulumi.StringOutput

The metrics token associated with your IP load balancing

func (LoadBalancerOutput) Offer

The offer of your IP load balancing

func (LoadBalancerOutput) OrderableZones

Available additional zone for your Load Balancer

func (LoadBalancerOutput) Orders

Details about an Order

func (LoadBalancerOutput) OvhSubsidiary

func (o LoadBalancerOutput) OvhSubsidiary() pulumi.StringOutput

OVHcloud Subsidiary. Country of OVHcloud legal entity you'll be billed by. List of supported subsidiaries available on API at [/1.0/me.json under `models.nichandle.OvhSubsidiaryEnum`](https://eu.api.ovh.com/1.0/me.json)

func (LoadBalancerOutput) PaymentMean deprecated

func (o LoadBalancerOutput) PaymentMean() pulumi.StringPtrOutput

Ovh payment mode

Deprecated: This field is not anymore used since the API has been deprecated in favor of /payment/mean. Now, the default payment mean is used.

func (LoadBalancerOutput) Plan

Product Plan to order

func (LoadBalancerOutput) PlanOptions

Product Plan to order

func (LoadBalancerOutput) ServiceName

func (o LoadBalancerOutput) ServiceName() pulumi.StringOutput

The internal name of your IP load balancing

func (LoadBalancerOutput) SslConfiguration

func (o LoadBalancerOutput) SslConfiguration() pulumi.StringOutput

Modern oldest compatible clients : Firefox 27, Chrome 30, IE 11 on Windows 7, Edge, Opera 17, Safari 9, Android 5.0, and Java 8. Intermediate oldest compatible clients : Firefox 1, Chrome 1, IE 7, Opera 5, Safari 1, Windows XP IE8, Android 2.3, Java 7. Intermediate if null. one of "intermediate", "modern".

func (LoadBalancerOutput) State

Current state of your IP

func (LoadBalancerOutput) ToLoadBalancerOutput

func (o LoadBalancerOutput) ToLoadBalancerOutput() LoadBalancerOutput

func (LoadBalancerOutput) ToLoadBalancerOutputWithContext

func (o LoadBalancerOutput) ToLoadBalancerOutputWithContext(ctx context.Context) LoadBalancerOutput

func (LoadBalancerOutput) VrackEligibility

func (o LoadBalancerOutput) VrackEligibility() pulumi.BoolOutput

Vrack eligibility

func (LoadBalancerOutput) VrackName

func (o LoadBalancerOutput) VrackName() pulumi.StringOutput

Name of the vRack on which the current Load Balancer is attached to, as it is named on vRack product

func (LoadBalancerOutput) Zones

Location where your service is

type LoadBalancerPlan

type LoadBalancerPlan struct {
	// Catalog name
	CatalogName *string `pulumi:"catalogName"`
	// Representation of a configuration item for personalizing product
	Configurations []LoadBalancerPlanConfiguration `pulumi:"configurations"`
	// duration
	Duration string `pulumi:"duration"`
	// Plan code
	PlanCode string `pulumi:"planCode"`
	// Pricing model identifier
	PricingMode string `pulumi:"pricingMode"`
}

type LoadBalancerPlanArgs

type LoadBalancerPlanArgs struct {
	// Catalog name
	CatalogName pulumi.StringPtrInput `pulumi:"catalogName"`
	// Representation of a configuration item for personalizing product
	Configurations LoadBalancerPlanConfigurationArrayInput `pulumi:"configurations"`
	// duration
	Duration pulumi.StringInput `pulumi:"duration"`
	// Plan code
	PlanCode pulumi.StringInput `pulumi:"planCode"`
	// Pricing model identifier
	PricingMode pulumi.StringInput `pulumi:"pricingMode"`
}

func (LoadBalancerPlanArgs) ElementType

func (LoadBalancerPlanArgs) ElementType() reflect.Type

func (LoadBalancerPlanArgs) ToLoadBalancerPlanOutput

func (i LoadBalancerPlanArgs) ToLoadBalancerPlanOutput() LoadBalancerPlanOutput

func (LoadBalancerPlanArgs) ToLoadBalancerPlanOutputWithContext

func (i LoadBalancerPlanArgs) ToLoadBalancerPlanOutputWithContext(ctx context.Context) LoadBalancerPlanOutput

func (LoadBalancerPlanArgs) ToLoadBalancerPlanPtrOutput

func (i LoadBalancerPlanArgs) ToLoadBalancerPlanPtrOutput() LoadBalancerPlanPtrOutput

func (LoadBalancerPlanArgs) ToLoadBalancerPlanPtrOutputWithContext

func (i LoadBalancerPlanArgs) ToLoadBalancerPlanPtrOutputWithContext(ctx context.Context) LoadBalancerPlanPtrOutput

type LoadBalancerPlanConfiguration

type LoadBalancerPlanConfiguration struct {
	// Identifier of the resource
	Label string `pulumi:"label"`
	// Path to the resource in API.OVH.COM
	Value string `pulumi:"value"`
}

type LoadBalancerPlanConfigurationArgs

type LoadBalancerPlanConfigurationArgs struct {
	// Identifier of the resource
	Label pulumi.StringInput `pulumi:"label"`
	// Path to the resource in API.OVH.COM
	Value pulumi.StringInput `pulumi:"value"`
}

func (LoadBalancerPlanConfigurationArgs) ElementType

func (LoadBalancerPlanConfigurationArgs) ToLoadBalancerPlanConfigurationOutput

func (i LoadBalancerPlanConfigurationArgs) ToLoadBalancerPlanConfigurationOutput() LoadBalancerPlanConfigurationOutput

func (LoadBalancerPlanConfigurationArgs) ToLoadBalancerPlanConfigurationOutputWithContext

func (i LoadBalancerPlanConfigurationArgs) ToLoadBalancerPlanConfigurationOutputWithContext(ctx context.Context) LoadBalancerPlanConfigurationOutput

type LoadBalancerPlanConfigurationArray

type LoadBalancerPlanConfigurationArray []LoadBalancerPlanConfigurationInput

func (LoadBalancerPlanConfigurationArray) ElementType

func (LoadBalancerPlanConfigurationArray) ToLoadBalancerPlanConfigurationArrayOutput

func (i LoadBalancerPlanConfigurationArray) ToLoadBalancerPlanConfigurationArrayOutput() LoadBalancerPlanConfigurationArrayOutput

func (LoadBalancerPlanConfigurationArray) ToLoadBalancerPlanConfigurationArrayOutputWithContext

func (i LoadBalancerPlanConfigurationArray) ToLoadBalancerPlanConfigurationArrayOutputWithContext(ctx context.Context) LoadBalancerPlanConfigurationArrayOutput

type LoadBalancerPlanConfigurationArrayInput

type LoadBalancerPlanConfigurationArrayInput interface {
	pulumi.Input

	ToLoadBalancerPlanConfigurationArrayOutput() LoadBalancerPlanConfigurationArrayOutput
	ToLoadBalancerPlanConfigurationArrayOutputWithContext(context.Context) LoadBalancerPlanConfigurationArrayOutput
}

LoadBalancerPlanConfigurationArrayInput is an input type that accepts LoadBalancerPlanConfigurationArray and LoadBalancerPlanConfigurationArrayOutput values. You can construct a concrete instance of `LoadBalancerPlanConfigurationArrayInput` via:

LoadBalancerPlanConfigurationArray{ LoadBalancerPlanConfigurationArgs{...} }

type LoadBalancerPlanConfigurationArrayOutput

type LoadBalancerPlanConfigurationArrayOutput struct{ *pulumi.OutputState }

func (LoadBalancerPlanConfigurationArrayOutput) ElementType

func (LoadBalancerPlanConfigurationArrayOutput) Index

func (LoadBalancerPlanConfigurationArrayOutput) ToLoadBalancerPlanConfigurationArrayOutput

func (o LoadBalancerPlanConfigurationArrayOutput) ToLoadBalancerPlanConfigurationArrayOutput() LoadBalancerPlanConfigurationArrayOutput

func (LoadBalancerPlanConfigurationArrayOutput) ToLoadBalancerPlanConfigurationArrayOutputWithContext

func (o LoadBalancerPlanConfigurationArrayOutput) ToLoadBalancerPlanConfigurationArrayOutputWithContext(ctx context.Context) LoadBalancerPlanConfigurationArrayOutput

type LoadBalancerPlanConfigurationInput

type LoadBalancerPlanConfigurationInput interface {
	pulumi.Input

	ToLoadBalancerPlanConfigurationOutput() LoadBalancerPlanConfigurationOutput
	ToLoadBalancerPlanConfigurationOutputWithContext(context.Context) LoadBalancerPlanConfigurationOutput
}

LoadBalancerPlanConfigurationInput is an input type that accepts LoadBalancerPlanConfigurationArgs and LoadBalancerPlanConfigurationOutput values. You can construct a concrete instance of `LoadBalancerPlanConfigurationInput` via:

LoadBalancerPlanConfigurationArgs{...}

type LoadBalancerPlanConfigurationOutput

type LoadBalancerPlanConfigurationOutput struct{ *pulumi.OutputState }

func (LoadBalancerPlanConfigurationOutput) ElementType

func (LoadBalancerPlanConfigurationOutput) Label

Identifier of the resource

func (LoadBalancerPlanConfigurationOutput) ToLoadBalancerPlanConfigurationOutput

func (o LoadBalancerPlanConfigurationOutput) ToLoadBalancerPlanConfigurationOutput() LoadBalancerPlanConfigurationOutput

func (LoadBalancerPlanConfigurationOutput) ToLoadBalancerPlanConfigurationOutputWithContext

func (o LoadBalancerPlanConfigurationOutput) ToLoadBalancerPlanConfigurationOutputWithContext(ctx context.Context) LoadBalancerPlanConfigurationOutput

func (LoadBalancerPlanConfigurationOutput) Value

Path to the resource in API.OVH.COM

type LoadBalancerPlanInput

type LoadBalancerPlanInput interface {
	pulumi.Input

	ToLoadBalancerPlanOutput() LoadBalancerPlanOutput
	ToLoadBalancerPlanOutputWithContext(context.Context) LoadBalancerPlanOutput
}

LoadBalancerPlanInput is an input type that accepts LoadBalancerPlanArgs and LoadBalancerPlanOutput values. You can construct a concrete instance of `LoadBalancerPlanInput` via:

LoadBalancerPlanArgs{...}

type LoadBalancerPlanOption

type LoadBalancerPlanOption struct {
	// Catalog name
	CatalogName *string `pulumi:"catalogName"`
	// Representation of a configuration item for personalizing product
	Configurations []LoadBalancerPlanOptionConfiguration `pulumi:"configurations"`
	// duration
	Duration string `pulumi:"duration"`
	// Plan code
	PlanCode string `pulumi:"planCode"`
	// Pricing model identifier
	PricingMode string `pulumi:"pricingMode"`
}

type LoadBalancerPlanOptionArgs

type LoadBalancerPlanOptionArgs struct {
	// Catalog name
	CatalogName pulumi.StringPtrInput `pulumi:"catalogName"`
	// Representation of a configuration item for personalizing product
	Configurations LoadBalancerPlanOptionConfigurationArrayInput `pulumi:"configurations"`
	// duration
	Duration pulumi.StringInput `pulumi:"duration"`
	// Plan code
	PlanCode pulumi.StringInput `pulumi:"planCode"`
	// Pricing model identifier
	PricingMode pulumi.StringInput `pulumi:"pricingMode"`
}

func (LoadBalancerPlanOptionArgs) ElementType

func (LoadBalancerPlanOptionArgs) ElementType() reflect.Type

func (LoadBalancerPlanOptionArgs) ToLoadBalancerPlanOptionOutput

func (i LoadBalancerPlanOptionArgs) ToLoadBalancerPlanOptionOutput() LoadBalancerPlanOptionOutput

func (LoadBalancerPlanOptionArgs) ToLoadBalancerPlanOptionOutputWithContext

func (i LoadBalancerPlanOptionArgs) ToLoadBalancerPlanOptionOutputWithContext(ctx context.Context) LoadBalancerPlanOptionOutput

type LoadBalancerPlanOptionArray

type LoadBalancerPlanOptionArray []LoadBalancerPlanOptionInput

func (LoadBalancerPlanOptionArray) ElementType

func (LoadBalancerPlanOptionArray) ToLoadBalancerPlanOptionArrayOutput

func (i LoadBalancerPlanOptionArray) ToLoadBalancerPlanOptionArrayOutput() LoadBalancerPlanOptionArrayOutput

func (LoadBalancerPlanOptionArray) ToLoadBalancerPlanOptionArrayOutputWithContext

func (i LoadBalancerPlanOptionArray) ToLoadBalancerPlanOptionArrayOutputWithContext(ctx context.Context) LoadBalancerPlanOptionArrayOutput

type LoadBalancerPlanOptionArrayInput

type LoadBalancerPlanOptionArrayInput interface {
	pulumi.Input

	ToLoadBalancerPlanOptionArrayOutput() LoadBalancerPlanOptionArrayOutput
	ToLoadBalancerPlanOptionArrayOutputWithContext(context.Context) LoadBalancerPlanOptionArrayOutput
}

LoadBalancerPlanOptionArrayInput is an input type that accepts LoadBalancerPlanOptionArray and LoadBalancerPlanOptionArrayOutput values. You can construct a concrete instance of `LoadBalancerPlanOptionArrayInput` via:

LoadBalancerPlanOptionArray{ LoadBalancerPlanOptionArgs{...} }

type LoadBalancerPlanOptionArrayOutput

type LoadBalancerPlanOptionArrayOutput struct{ *pulumi.OutputState }

func (LoadBalancerPlanOptionArrayOutput) ElementType

func (LoadBalancerPlanOptionArrayOutput) Index

func (LoadBalancerPlanOptionArrayOutput) ToLoadBalancerPlanOptionArrayOutput

func (o LoadBalancerPlanOptionArrayOutput) ToLoadBalancerPlanOptionArrayOutput() LoadBalancerPlanOptionArrayOutput

func (LoadBalancerPlanOptionArrayOutput) ToLoadBalancerPlanOptionArrayOutputWithContext

func (o LoadBalancerPlanOptionArrayOutput) ToLoadBalancerPlanOptionArrayOutputWithContext(ctx context.Context) LoadBalancerPlanOptionArrayOutput

type LoadBalancerPlanOptionConfiguration

type LoadBalancerPlanOptionConfiguration struct {
	// Identifier of the resource
	Label string `pulumi:"label"`
	// Path to the resource in API.OVH.COM
	Value string `pulumi:"value"`
}

type LoadBalancerPlanOptionConfigurationArgs

type LoadBalancerPlanOptionConfigurationArgs struct {
	// Identifier of the resource
	Label pulumi.StringInput `pulumi:"label"`
	// Path to the resource in API.OVH.COM
	Value pulumi.StringInput `pulumi:"value"`
}

func (LoadBalancerPlanOptionConfigurationArgs) ElementType

func (LoadBalancerPlanOptionConfigurationArgs) ToLoadBalancerPlanOptionConfigurationOutput

func (i LoadBalancerPlanOptionConfigurationArgs) ToLoadBalancerPlanOptionConfigurationOutput() LoadBalancerPlanOptionConfigurationOutput

func (LoadBalancerPlanOptionConfigurationArgs) ToLoadBalancerPlanOptionConfigurationOutputWithContext

func (i LoadBalancerPlanOptionConfigurationArgs) ToLoadBalancerPlanOptionConfigurationOutputWithContext(ctx context.Context) LoadBalancerPlanOptionConfigurationOutput

type LoadBalancerPlanOptionConfigurationArray

type LoadBalancerPlanOptionConfigurationArray []LoadBalancerPlanOptionConfigurationInput

func (LoadBalancerPlanOptionConfigurationArray) ElementType

func (LoadBalancerPlanOptionConfigurationArray) ToLoadBalancerPlanOptionConfigurationArrayOutput

func (i LoadBalancerPlanOptionConfigurationArray) ToLoadBalancerPlanOptionConfigurationArrayOutput() LoadBalancerPlanOptionConfigurationArrayOutput

func (LoadBalancerPlanOptionConfigurationArray) ToLoadBalancerPlanOptionConfigurationArrayOutputWithContext

func (i LoadBalancerPlanOptionConfigurationArray) ToLoadBalancerPlanOptionConfigurationArrayOutputWithContext(ctx context.Context) LoadBalancerPlanOptionConfigurationArrayOutput

type LoadBalancerPlanOptionConfigurationArrayInput

type LoadBalancerPlanOptionConfigurationArrayInput interface {
	pulumi.Input

	ToLoadBalancerPlanOptionConfigurationArrayOutput() LoadBalancerPlanOptionConfigurationArrayOutput
	ToLoadBalancerPlanOptionConfigurationArrayOutputWithContext(context.Context) LoadBalancerPlanOptionConfigurationArrayOutput
}

LoadBalancerPlanOptionConfigurationArrayInput is an input type that accepts LoadBalancerPlanOptionConfigurationArray and LoadBalancerPlanOptionConfigurationArrayOutput values. You can construct a concrete instance of `LoadBalancerPlanOptionConfigurationArrayInput` via:

LoadBalancerPlanOptionConfigurationArray{ LoadBalancerPlanOptionConfigurationArgs{...} }

type LoadBalancerPlanOptionConfigurationArrayOutput

type LoadBalancerPlanOptionConfigurationArrayOutput struct{ *pulumi.OutputState }

func (LoadBalancerPlanOptionConfigurationArrayOutput) ElementType

func (LoadBalancerPlanOptionConfigurationArrayOutput) Index

func (LoadBalancerPlanOptionConfigurationArrayOutput) ToLoadBalancerPlanOptionConfigurationArrayOutput

func (o LoadBalancerPlanOptionConfigurationArrayOutput) ToLoadBalancerPlanOptionConfigurationArrayOutput() LoadBalancerPlanOptionConfigurationArrayOutput

func (LoadBalancerPlanOptionConfigurationArrayOutput) ToLoadBalancerPlanOptionConfigurationArrayOutputWithContext

func (o LoadBalancerPlanOptionConfigurationArrayOutput) ToLoadBalancerPlanOptionConfigurationArrayOutputWithContext(ctx context.Context) LoadBalancerPlanOptionConfigurationArrayOutput

type LoadBalancerPlanOptionConfigurationInput

type LoadBalancerPlanOptionConfigurationInput interface {
	pulumi.Input

	ToLoadBalancerPlanOptionConfigurationOutput() LoadBalancerPlanOptionConfigurationOutput
	ToLoadBalancerPlanOptionConfigurationOutputWithContext(context.Context) LoadBalancerPlanOptionConfigurationOutput
}

LoadBalancerPlanOptionConfigurationInput is an input type that accepts LoadBalancerPlanOptionConfigurationArgs and LoadBalancerPlanOptionConfigurationOutput values. You can construct a concrete instance of `LoadBalancerPlanOptionConfigurationInput` via:

LoadBalancerPlanOptionConfigurationArgs{...}

type LoadBalancerPlanOptionConfigurationOutput

type LoadBalancerPlanOptionConfigurationOutput struct{ *pulumi.OutputState }

func (LoadBalancerPlanOptionConfigurationOutput) ElementType

func (LoadBalancerPlanOptionConfigurationOutput) Label

Identifier of the resource

func (LoadBalancerPlanOptionConfigurationOutput) ToLoadBalancerPlanOptionConfigurationOutput

func (o LoadBalancerPlanOptionConfigurationOutput) ToLoadBalancerPlanOptionConfigurationOutput() LoadBalancerPlanOptionConfigurationOutput

func (LoadBalancerPlanOptionConfigurationOutput) ToLoadBalancerPlanOptionConfigurationOutputWithContext

func (o LoadBalancerPlanOptionConfigurationOutput) ToLoadBalancerPlanOptionConfigurationOutputWithContext(ctx context.Context) LoadBalancerPlanOptionConfigurationOutput

func (LoadBalancerPlanOptionConfigurationOutput) Value

Path to the resource in API.OVH.COM

type LoadBalancerPlanOptionInput

type LoadBalancerPlanOptionInput interface {
	pulumi.Input

	ToLoadBalancerPlanOptionOutput() LoadBalancerPlanOptionOutput
	ToLoadBalancerPlanOptionOutputWithContext(context.Context) LoadBalancerPlanOptionOutput
}

LoadBalancerPlanOptionInput is an input type that accepts LoadBalancerPlanOptionArgs and LoadBalancerPlanOptionOutput values. You can construct a concrete instance of `LoadBalancerPlanOptionInput` via:

LoadBalancerPlanOptionArgs{...}

type LoadBalancerPlanOptionOutput

type LoadBalancerPlanOptionOutput struct{ *pulumi.OutputState }

func (LoadBalancerPlanOptionOutput) CatalogName

Catalog name

func (LoadBalancerPlanOptionOutput) Configurations

Representation of a configuration item for personalizing product

func (LoadBalancerPlanOptionOutput) Duration

duration

func (LoadBalancerPlanOptionOutput) ElementType

func (LoadBalancerPlanOptionOutput) PlanCode

Plan code

func (LoadBalancerPlanOptionOutput) PricingMode

Pricing model identifier

func (LoadBalancerPlanOptionOutput) ToLoadBalancerPlanOptionOutput

func (o LoadBalancerPlanOptionOutput) ToLoadBalancerPlanOptionOutput() LoadBalancerPlanOptionOutput

func (LoadBalancerPlanOptionOutput) ToLoadBalancerPlanOptionOutputWithContext

func (o LoadBalancerPlanOptionOutput) ToLoadBalancerPlanOptionOutputWithContext(ctx context.Context) LoadBalancerPlanOptionOutput

type LoadBalancerPlanOutput

type LoadBalancerPlanOutput struct{ *pulumi.OutputState }

func (LoadBalancerPlanOutput) CatalogName

Catalog name

func (LoadBalancerPlanOutput) Configurations

Representation of a configuration item for personalizing product

func (LoadBalancerPlanOutput) Duration

duration

func (LoadBalancerPlanOutput) ElementType

func (LoadBalancerPlanOutput) ElementType() reflect.Type

func (LoadBalancerPlanOutput) PlanCode

Plan code

func (LoadBalancerPlanOutput) PricingMode

func (o LoadBalancerPlanOutput) PricingMode() pulumi.StringOutput

Pricing model identifier

func (LoadBalancerPlanOutput) ToLoadBalancerPlanOutput

func (o LoadBalancerPlanOutput) ToLoadBalancerPlanOutput() LoadBalancerPlanOutput

func (LoadBalancerPlanOutput) ToLoadBalancerPlanOutputWithContext

func (o LoadBalancerPlanOutput) ToLoadBalancerPlanOutputWithContext(ctx context.Context) LoadBalancerPlanOutput

func (LoadBalancerPlanOutput) ToLoadBalancerPlanPtrOutput

func (o LoadBalancerPlanOutput) ToLoadBalancerPlanPtrOutput() LoadBalancerPlanPtrOutput

func (LoadBalancerPlanOutput) ToLoadBalancerPlanPtrOutputWithContext

func (o LoadBalancerPlanOutput) ToLoadBalancerPlanPtrOutputWithContext(ctx context.Context) LoadBalancerPlanPtrOutput

type LoadBalancerPlanPtrInput

type LoadBalancerPlanPtrInput interface {
	pulumi.Input

	ToLoadBalancerPlanPtrOutput() LoadBalancerPlanPtrOutput
	ToLoadBalancerPlanPtrOutputWithContext(context.Context) LoadBalancerPlanPtrOutput
}

LoadBalancerPlanPtrInput is an input type that accepts LoadBalancerPlanArgs, LoadBalancerPlanPtr and LoadBalancerPlanPtrOutput values. You can construct a concrete instance of `LoadBalancerPlanPtrInput` via:

        LoadBalancerPlanArgs{...}

or:

        nil

type LoadBalancerPlanPtrOutput

type LoadBalancerPlanPtrOutput struct{ *pulumi.OutputState }

func (LoadBalancerPlanPtrOutput) CatalogName

Catalog name

func (LoadBalancerPlanPtrOutput) Configurations

Representation of a configuration item for personalizing product

func (LoadBalancerPlanPtrOutput) Duration

duration

func (LoadBalancerPlanPtrOutput) Elem

func (LoadBalancerPlanPtrOutput) ElementType

func (LoadBalancerPlanPtrOutput) ElementType() reflect.Type

func (LoadBalancerPlanPtrOutput) PlanCode

Plan code

func (LoadBalancerPlanPtrOutput) PricingMode

Pricing model identifier

func (LoadBalancerPlanPtrOutput) ToLoadBalancerPlanPtrOutput

func (o LoadBalancerPlanPtrOutput) ToLoadBalancerPlanPtrOutput() LoadBalancerPlanPtrOutput

func (LoadBalancerPlanPtrOutput) ToLoadBalancerPlanPtrOutputWithContext

func (o LoadBalancerPlanPtrOutput) ToLoadBalancerPlanPtrOutputWithContext(ctx context.Context) LoadBalancerPlanPtrOutput

type LoadBalancerState

type LoadBalancerState struct {
	// URN of the load balancer, used when writing IAM policies
	LoadBalancerURN pulumi.StringPtrInput
	// Set the name displayed in ManagerV6 for your iplb (max 50 chars)
	DisplayName pulumi.StringPtrInput
	// Your IP load balancing
	IpLoadbalancing pulumi.StringPtrInput
	// The IPV4 associated to your IP load balancing
	Ipv4 pulumi.StringPtrInput
	// The IPV6 associated to your IP load balancing. DEPRECATED.
	Ipv6 pulumi.StringPtrInput
	// The metrics token associated with your IP load balancing
	MetricsToken pulumi.StringPtrInput
	// The offer of your IP load balancing
	Offer pulumi.StringPtrInput
	// Available additional zone for your Load Balancer
	OrderableZones LoadBalancerOrderableZoneArrayInput
	// Details about an Order
	Orders LoadBalancerOrderArrayInput
	// OVHcloud Subsidiary. Country of OVHcloud legal entity you'll be billed by. List of supported subsidiaries available on API at [/1.0/me.json under `models.nichandle.OvhSubsidiaryEnum`](https://eu.api.ovh.com/1.0/me.json)
	OvhSubsidiary pulumi.StringPtrInput
	// Ovh payment mode
	//
	// Deprecated: This field is not anymore used since the API has been deprecated in favor of /payment/mean. Now, the default payment mean is used.
	PaymentMean pulumi.StringPtrInput
	// Product Plan to order
	Plan LoadBalancerPlanPtrInput
	// Product Plan to order
	PlanOptions LoadBalancerPlanOptionArrayInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringPtrInput
	// Modern oldest compatible clients : Firefox 27, Chrome 30, IE 11 on Windows 7, Edge, Opera 17, Safari 9, Android 5.0, and Java 8. Intermediate oldest compatible clients : Firefox 1, Chrome 1, IE 7, Opera 5, Safari 1, Windows XP IE8, Android 2.3, Java 7. Intermediate if null. one of "intermediate", "modern".
	SslConfiguration pulumi.StringPtrInput
	// Current state of your IP
	State pulumi.StringPtrInput
	// Vrack eligibility
	VrackEligibility pulumi.BoolPtrInput
	// Name of the vRack on which the current Load Balancer is attached to, as it is named on vRack product
	VrackName pulumi.StringPtrInput
	// Location where your service is
	Zones pulumi.StringArrayInput
}

func (LoadBalancerState) ElementType

func (LoadBalancerState) ElementType() reflect.Type

type LookupVrackNetworkArgs

type LookupVrackNetworkArgs struct {
	// The internal name of your IP load balancing
	ServiceName string `pulumi:"serviceName"`
	// Internal Load Balancer identifier of the vRack private network
	VrackNetworkId int `pulumi:"vrackNetworkId"`
}

A collection of arguments for invoking getVrackNetwork.

type LookupVrackNetworkOutputArgs

type LookupVrackNetworkOutputArgs struct {
	// The internal name of your IP load balancing
	ServiceName pulumi.StringInput `pulumi:"serviceName"`
	// Internal Load Balancer identifier of the vRack private network
	VrackNetworkId pulumi.IntInput `pulumi:"vrackNetworkId"`
}

A collection of arguments for invoking getVrackNetwork.

func (LookupVrackNetworkOutputArgs) ElementType

type LookupVrackNetworkResult

type LookupVrackNetworkResult struct {
	// Human readable name for your vrack network
	DisplayName string `pulumi:"displayName"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// An IP block used as a pool of IPs by this Load Balancer to connect to the servers in this private network. The blck must be in the private network and reserved for the Load Balancer
	NatIp       string `pulumi:"natIp"`
	ServiceName string `pulumi:"serviceName"`
	// IP block of the private network in the vRack
	Subnet string `pulumi:"subnet"`
	// VLAN of the private network in the vRack. 0 if the private network is not in a VLAN
	Vlan           int `pulumi:"vlan"`
	VrackNetworkId int `pulumi:"vrackNetworkId"`
}

A collection of values returned by getVrackNetwork.

func LookupVrackNetwork

func LookupVrackNetwork(ctx *pulumi.Context, args *LookupVrackNetworkArgs, opts ...pulumi.InvokeOption) (*LookupVrackNetworkResult, error)

Use this data source to get the details of Vrack network available for your IPLoadbalancer associated with your OVHcloud account.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := IpLoadBalancing.GetVrackNetwork(ctx, &iploadbalancing.GetVrackNetworkArgs{
			ServiceName:    "XXXXXX",
			VrackNetworkId: "yyy",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type LookupVrackNetworkResultOutput

type LookupVrackNetworkResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getVrackNetwork.

func (LookupVrackNetworkResultOutput) DisplayName

Human readable name for your vrack network

func (LookupVrackNetworkResultOutput) ElementType

func (LookupVrackNetworkResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupVrackNetworkResultOutput) NatIp

An IP block used as a pool of IPs by this Load Balancer to connect to the servers in this private network. The blck must be in the private network and reserved for the Load Balancer

func (LookupVrackNetworkResultOutput) ServiceName

func (LookupVrackNetworkResultOutput) Subnet

IP block of the private network in the vRack

func (LookupVrackNetworkResultOutput) ToLookupVrackNetworkResultOutput

func (o LookupVrackNetworkResultOutput) ToLookupVrackNetworkResultOutput() LookupVrackNetworkResultOutput

func (LookupVrackNetworkResultOutput) ToLookupVrackNetworkResultOutputWithContext

func (o LookupVrackNetworkResultOutput) ToLookupVrackNetworkResultOutputWithContext(ctx context.Context) LookupVrackNetworkResultOutput

func (LookupVrackNetworkResultOutput) Vlan

VLAN of the private network in the vRack. 0 if the private network is not in a VLAN

func (LookupVrackNetworkResultOutput) VrackNetworkId

func (o LookupVrackNetworkResultOutput) VrackNetworkId() pulumi.IntOutput

type Refresh

type Refresh struct {
	pulumi.CustomResourceState

	// List of values tracked to trigger refresh, used also to form implicit dependencies
	Keepers pulumi.StringArrayOutput `pulumi:"keepers"`
	// The internal name of your IP load balancing
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
}

Applies changes from other `ovh_iploadbalancing_*` resources to the production configuration of loadbalancers.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

) func main() { pulumi.Run(func(ctx *pulumi.Context) error { lb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, &iploadbalancing.GetIpLoadBalancingArgs{ ServiceName: pulumi.StringRef("ip-1.2.3.4"), State: pulumi.StringRef("ok"), }, nil); if err != nil { return err } farmname, err := IpLoadBalancing.NewTcpFarm(ctx, "farmname", &IpLoadBalancing.TcpFarmArgs{ Port: pulumi.Int(8080), ServiceName: pulumi.String(lb.ServiceName), Zone: pulumi.String("all"), }) if err != nil { return err } backend, err := IpLoadBalancing.NewTcpFarmServer(ctx, "backend", &IpLoadBalancing.TcpFarmServerArgs{ Address: pulumi.String("4.5.6.7"), Backup: pulumi.Bool(true), DisplayName: pulumi.String("mybackend"), FarmId: farmname.ID(), Port: pulumi.Int(80), Probe: pulumi.Bool(true), ProxyProtocolVersion: pulumi.String("v2"), ServiceName: pulumi.String(lb.ServiceName), Ssl: pulumi.Bool(false), Status: pulumi.String("active"), Weight: pulumi.Int(2), }) if err != nil { return err } _, err = IpLoadBalancing.NewRefresh(ctx, "mylb", &IpLoadBalancing.RefreshArgs{ Keepers: pulumi.StringArray{ %!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ #-resources-ovh:IpLoadBalancing-refresh:Refresh.pp:23,16-35), }, ServiceName: pulumi.String(lb.ServiceName), }) if err != nil { return err } return nil }) } ``` <!--End PulumiCodeChooser -->

func GetRefresh

func GetRefresh(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RefreshState, opts ...pulumi.ResourceOption) (*Refresh, error)

GetRefresh gets an existing Refresh resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRefresh

func NewRefresh(ctx *pulumi.Context,
	name string, args *RefreshArgs, opts ...pulumi.ResourceOption) (*Refresh, error)

NewRefresh registers a new resource with the given unique name, arguments, and options.

func (*Refresh) ElementType

func (*Refresh) ElementType() reflect.Type

func (*Refresh) ToRefreshOutput

func (i *Refresh) ToRefreshOutput() RefreshOutput

func (*Refresh) ToRefreshOutputWithContext

func (i *Refresh) ToRefreshOutputWithContext(ctx context.Context) RefreshOutput

type RefreshArgs

type RefreshArgs struct {
	// List of values tracked to trigger refresh, used also to form implicit dependencies
	Keepers pulumi.StringArrayInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringInput
}

The set of arguments for constructing a Refresh resource.

func (RefreshArgs) ElementType

func (RefreshArgs) ElementType() reflect.Type

type RefreshArray

type RefreshArray []RefreshInput

func (RefreshArray) ElementType

func (RefreshArray) ElementType() reflect.Type

func (RefreshArray) ToRefreshArrayOutput

func (i RefreshArray) ToRefreshArrayOutput() RefreshArrayOutput

func (RefreshArray) ToRefreshArrayOutputWithContext

func (i RefreshArray) ToRefreshArrayOutputWithContext(ctx context.Context) RefreshArrayOutput

type RefreshArrayInput

type RefreshArrayInput interface {
	pulumi.Input

	ToRefreshArrayOutput() RefreshArrayOutput
	ToRefreshArrayOutputWithContext(context.Context) RefreshArrayOutput
}

RefreshArrayInput is an input type that accepts RefreshArray and RefreshArrayOutput values. You can construct a concrete instance of `RefreshArrayInput` via:

RefreshArray{ RefreshArgs{...} }

type RefreshArrayOutput

type RefreshArrayOutput struct{ *pulumi.OutputState }

func (RefreshArrayOutput) ElementType

func (RefreshArrayOutput) ElementType() reflect.Type

func (RefreshArrayOutput) Index

func (RefreshArrayOutput) ToRefreshArrayOutput

func (o RefreshArrayOutput) ToRefreshArrayOutput() RefreshArrayOutput

func (RefreshArrayOutput) ToRefreshArrayOutputWithContext

func (o RefreshArrayOutput) ToRefreshArrayOutputWithContext(ctx context.Context) RefreshArrayOutput

type RefreshInput

type RefreshInput interface {
	pulumi.Input

	ToRefreshOutput() RefreshOutput
	ToRefreshOutputWithContext(ctx context.Context) RefreshOutput
}

type RefreshMap

type RefreshMap map[string]RefreshInput

func (RefreshMap) ElementType

func (RefreshMap) ElementType() reflect.Type

func (RefreshMap) ToRefreshMapOutput

func (i RefreshMap) ToRefreshMapOutput() RefreshMapOutput

func (RefreshMap) ToRefreshMapOutputWithContext

func (i RefreshMap) ToRefreshMapOutputWithContext(ctx context.Context) RefreshMapOutput

type RefreshMapInput

type RefreshMapInput interface {
	pulumi.Input

	ToRefreshMapOutput() RefreshMapOutput
	ToRefreshMapOutputWithContext(context.Context) RefreshMapOutput
}

RefreshMapInput is an input type that accepts RefreshMap and RefreshMapOutput values. You can construct a concrete instance of `RefreshMapInput` via:

RefreshMap{ "key": RefreshArgs{...} }

type RefreshMapOutput

type RefreshMapOutput struct{ *pulumi.OutputState }

func (RefreshMapOutput) ElementType

func (RefreshMapOutput) ElementType() reflect.Type

func (RefreshMapOutput) MapIndex

func (RefreshMapOutput) ToRefreshMapOutput

func (o RefreshMapOutput) ToRefreshMapOutput() RefreshMapOutput

func (RefreshMapOutput) ToRefreshMapOutputWithContext

func (o RefreshMapOutput) ToRefreshMapOutputWithContext(ctx context.Context) RefreshMapOutput

type RefreshOutput

type RefreshOutput struct{ *pulumi.OutputState }

func (RefreshOutput) ElementType

func (RefreshOutput) ElementType() reflect.Type

func (RefreshOutput) Keepers

List of values tracked to trigger refresh, used also to form implicit dependencies

func (RefreshOutput) ServiceName

func (o RefreshOutput) ServiceName() pulumi.StringOutput

The internal name of your IP load balancing

func (RefreshOutput) ToRefreshOutput

func (o RefreshOutput) ToRefreshOutput() RefreshOutput

func (RefreshOutput) ToRefreshOutputWithContext

func (o RefreshOutput) ToRefreshOutputWithContext(ctx context.Context) RefreshOutput

type RefreshState

type RefreshState struct {
	// List of values tracked to trigger refresh, used also to form implicit dependencies
	Keepers pulumi.StringArrayInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringPtrInput
}

func (RefreshState) ElementType

func (RefreshState) ElementType() reflect.Type

type TcpFarm

type TcpFarm struct {
	pulumi.CustomResourceState

	// Load balancing algorithm. `roundrobin` if null (`first`, `leastconn`, `roundrobin`, `source`)
	Balance pulumi.StringPtrOutput `pulumi:"balance"`
	// Readable label for loadbalancer farm
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// Port for backends to receive traffic on.
	Port pulumi.IntPtrOutput `pulumi:"port"`
	// define a backend healthcheck probe
	Probe TcpFarmProbePtrOutput `pulumi:"probe"`
	// The internal name of your IP load balancing
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
	// Stickiness type. No stickiness if null (`sourceIp`)
	Stickiness pulumi.StringPtrOutput `pulumi:"stickiness"`
	// Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack
	VrackNetworkId pulumi.IntPtrOutput `pulumi:"vrackNetworkId"`
	// Zone where the farm will be defined (ie. `GRA`, `BHS` also supports `ALL`)
	Zone pulumi.StringOutput `pulumi:"zone"`
}

Creates a backend server group (farm) to be used by loadbalancing frontend(s)

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		lb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, &iploadbalancing.GetIpLoadBalancingArgs{
			ServiceName: pulumi.StringRef("ip-1.2.3.4"),
			State:       pulumi.StringRef("ok"),
		}, nil)
		if err != nil {
			return err
		}
		_, err = IpLoadBalancing.NewTcpFarm(ctx, "farmname", &IpLoadBalancing.TcpFarmArgs{
			DisplayName: pulumi.String("ingress-8080-gra"),
			ServiceName: pulumi.String(lb.ServiceName),
			Zone:        pulumi.String("GRA"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

TCP Farm can be imported using the following format `serviceName` and the `id` of the farm, separated by "/" e.g.

func GetTcpFarm

func GetTcpFarm(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TcpFarmState, opts ...pulumi.ResourceOption) (*TcpFarm, error)

GetTcpFarm gets an existing TcpFarm resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTcpFarm

func NewTcpFarm(ctx *pulumi.Context,
	name string, args *TcpFarmArgs, opts ...pulumi.ResourceOption) (*TcpFarm, error)

NewTcpFarm registers a new resource with the given unique name, arguments, and options.

func (*TcpFarm) ElementType

func (*TcpFarm) ElementType() reflect.Type

func (*TcpFarm) ToTcpFarmOutput

func (i *TcpFarm) ToTcpFarmOutput() TcpFarmOutput

func (*TcpFarm) ToTcpFarmOutputWithContext

func (i *TcpFarm) ToTcpFarmOutputWithContext(ctx context.Context) TcpFarmOutput

type TcpFarmArgs

type TcpFarmArgs struct {
	// Load balancing algorithm. `roundrobin` if null (`first`, `leastconn`, `roundrobin`, `source`)
	Balance pulumi.StringPtrInput
	// Readable label for loadbalancer farm
	DisplayName pulumi.StringPtrInput
	// Port for backends to receive traffic on.
	Port pulumi.IntPtrInput
	// define a backend healthcheck probe
	Probe TcpFarmProbePtrInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringInput
	// Stickiness type. No stickiness if null (`sourceIp`)
	Stickiness pulumi.StringPtrInput
	// Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack
	VrackNetworkId pulumi.IntPtrInput
	// Zone where the farm will be defined (ie. `GRA`, `BHS` also supports `ALL`)
	Zone pulumi.StringInput
}

The set of arguments for constructing a TcpFarm resource.

func (TcpFarmArgs) ElementType

func (TcpFarmArgs) ElementType() reflect.Type

type TcpFarmArray

type TcpFarmArray []TcpFarmInput

func (TcpFarmArray) ElementType

func (TcpFarmArray) ElementType() reflect.Type

func (TcpFarmArray) ToTcpFarmArrayOutput

func (i TcpFarmArray) ToTcpFarmArrayOutput() TcpFarmArrayOutput

func (TcpFarmArray) ToTcpFarmArrayOutputWithContext

func (i TcpFarmArray) ToTcpFarmArrayOutputWithContext(ctx context.Context) TcpFarmArrayOutput

type TcpFarmArrayInput

type TcpFarmArrayInput interface {
	pulumi.Input

	ToTcpFarmArrayOutput() TcpFarmArrayOutput
	ToTcpFarmArrayOutputWithContext(context.Context) TcpFarmArrayOutput
}

TcpFarmArrayInput is an input type that accepts TcpFarmArray and TcpFarmArrayOutput values. You can construct a concrete instance of `TcpFarmArrayInput` via:

TcpFarmArray{ TcpFarmArgs{...} }

type TcpFarmArrayOutput

type TcpFarmArrayOutput struct{ *pulumi.OutputState }

func (TcpFarmArrayOutput) ElementType

func (TcpFarmArrayOutput) ElementType() reflect.Type

func (TcpFarmArrayOutput) Index

func (TcpFarmArrayOutput) ToTcpFarmArrayOutput

func (o TcpFarmArrayOutput) ToTcpFarmArrayOutput() TcpFarmArrayOutput

func (TcpFarmArrayOutput) ToTcpFarmArrayOutputWithContext

func (o TcpFarmArrayOutput) ToTcpFarmArrayOutputWithContext(ctx context.Context) TcpFarmArrayOutput

type TcpFarmInput

type TcpFarmInput interface {
	pulumi.Input

	ToTcpFarmOutput() TcpFarmOutput
	ToTcpFarmOutputWithContext(ctx context.Context) TcpFarmOutput
}

type TcpFarmMap

type TcpFarmMap map[string]TcpFarmInput

func (TcpFarmMap) ElementType

func (TcpFarmMap) ElementType() reflect.Type

func (TcpFarmMap) ToTcpFarmMapOutput

func (i TcpFarmMap) ToTcpFarmMapOutput() TcpFarmMapOutput

func (TcpFarmMap) ToTcpFarmMapOutputWithContext

func (i TcpFarmMap) ToTcpFarmMapOutputWithContext(ctx context.Context) TcpFarmMapOutput

type TcpFarmMapInput

type TcpFarmMapInput interface {
	pulumi.Input

	ToTcpFarmMapOutput() TcpFarmMapOutput
	ToTcpFarmMapOutputWithContext(context.Context) TcpFarmMapOutput
}

TcpFarmMapInput is an input type that accepts TcpFarmMap and TcpFarmMapOutput values. You can construct a concrete instance of `TcpFarmMapInput` via:

TcpFarmMap{ "key": TcpFarmArgs{...} }

type TcpFarmMapOutput

type TcpFarmMapOutput struct{ *pulumi.OutputState }

func (TcpFarmMapOutput) ElementType

func (TcpFarmMapOutput) ElementType() reflect.Type

func (TcpFarmMapOutput) MapIndex

func (TcpFarmMapOutput) ToTcpFarmMapOutput

func (o TcpFarmMapOutput) ToTcpFarmMapOutput() TcpFarmMapOutput

func (TcpFarmMapOutput) ToTcpFarmMapOutputWithContext

func (o TcpFarmMapOutput) ToTcpFarmMapOutputWithContext(ctx context.Context) TcpFarmMapOutput

type TcpFarmOutput

type TcpFarmOutput struct{ *pulumi.OutputState }

func (TcpFarmOutput) Balance

func (o TcpFarmOutput) Balance() pulumi.StringPtrOutput

Load balancing algorithm. `roundrobin` if null (`first`, `leastconn`, `roundrobin`, `source`)

func (TcpFarmOutput) DisplayName

func (o TcpFarmOutput) DisplayName() pulumi.StringPtrOutput

Readable label for loadbalancer farm

func (TcpFarmOutput) ElementType

func (TcpFarmOutput) ElementType() reflect.Type

func (TcpFarmOutput) Port

Port for backends to receive traffic on.

func (TcpFarmOutput) Probe

define a backend healthcheck probe

func (TcpFarmOutput) ServiceName

func (o TcpFarmOutput) ServiceName() pulumi.StringOutput

The internal name of your IP load balancing

func (TcpFarmOutput) Stickiness

func (o TcpFarmOutput) Stickiness() pulumi.StringPtrOutput

Stickiness type. No stickiness if null (`sourceIp`)

func (TcpFarmOutput) ToTcpFarmOutput

func (o TcpFarmOutput) ToTcpFarmOutput() TcpFarmOutput

func (TcpFarmOutput) ToTcpFarmOutputWithContext

func (o TcpFarmOutput) ToTcpFarmOutputWithContext(ctx context.Context) TcpFarmOutput

func (TcpFarmOutput) VrackNetworkId

func (o TcpFarmOutput) VrackNetworkId() pulumi.IntPtrOutput

Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack

func (TcpFarmOutput) Zone

Zone where the farm will be defined (ie. `GRA`, `BHS` also supports `ALL`)

type TcpFarmProbe

type TcpFarmProbe struct {
	// Force use of SSL (TLS)
	ForceSsl *bool `pulumi:"forceSsl"`
	// probe interval, Value between 30 and 3600 seconds, default 30
	Interval *int `pulumi:"interval"`
	// What to match `pattern` against (`contains`, `default`, `internal`, `matches`, `status`)
	Match *string `pulumi:"match"`
	// HTTP probe method (`GET`, `HEAD`, `OPTIONS`, `internal`)
	Method *string `pulumi:"method"`
	// Negate probe result
	Negate *bool `pulumi:"negate"`
	// Pattern to match against `match`
	Pattern *string `pulumi:"pattern"`
	// Port for backends to receive traffic on.
	Port *int `pulumi:"port"`
	// Valid values : `http`, `internal`, `mysql`, `oco`, `pgsql`, `smtp`, `tcp`
	Type string `pulumi:"type"`
	// URL for HTTP probe type.
	Url *string `pulumi:"url"`
}

type TcpFarmProbeArgs

type TcpFarmProbeArgs struct {
	// Force use of SSL (TLS)
	ForceSsl pulumi.BoolPtrInput `pulumi:"forceSsl"`
	// probe interval, Value between 30 and 3600 seconds, default 30
	Interval pulumi.IntPtrInput `pulumi:"interval"`
	// What to match `pattern` against (`contains`, `default`, `internal`, `matches`, `status`)
	Match pulumi.StringPtrInput `pulumi:"match"`
	// HTTP probe method (`GET`, `HEAD`, `OPTIONS`, `internal`)
	Method pulumi.StringPtrInput `pulumi:"method"`
	// Negate probe result
	Negate pulumi.BoolPtrInput `pulumi:"negate"`
	// Pattern to match against `match`
	Pattern pulumi.StringPtrInput `pulumi:"pattern"`
	// Port for backends to receive traffic on.
	Port pulumi.IntPtrInput `pulumi:"port"`
	// Valid values : `http`, `internal`, `mysql`, `oco`, `pgsql`, `smtp`, `tcp`
	Type pulumi.StringInput `pulumi:"type"`
	// URL for HTTP probe type.
	Url pulumi.StringPtrInput `pulumi:"url"`
}

func (TcpFarmProbeArgs) ElementType

func (TcpFarmProbeArgs) ElementType() reflect.Type

func (TcpFarmProbeArgs) ToTcpFarmProbeOutput

func (i TcpFarmProbeArgs) ToTcpFarmProbeOutput() TcpFarmProbeOutput

func (TcpFarmProbeArgs) ToTcpFarmProbeOutputWithContext

func (i TcpFarmProbeArgs) ToTcpFarmProbeOutputWithContext(ctx context.Context) TcpFarmProbeOutput

func (TcpFarmProbeArgs) ToTcpFarmProbePtrOutput

func (i TcpFarmProbeArgs) ToTcpFarmProbePtrOutput() TcpFarmProbePtrOutput

func (TcpFarmProbeArgs) ToTcpFarmProbePtrOutputWithContext

func (i TcpFarmProbeArgs) ToTcpFarmProbePtrOutputWithContext(ctx context.Context) TcpFarmProbePtrOutput

type TcpFarmProbeInput

type TcpFarmProbeInput interface {
	pulumi.Input

	ToTcpFarmProbeOutput() TcpFarmProbeOutput
	ToTcpFarmProbeOutputWithContext(context.Context) TcpFarmProbeOutput
}

TcpFarmProbeInput is an input type that accepts TcpFarmProbeArgs and TcpFarmProbeOutput values. You can construct a concrete instance of `TcpFarmProbeInput` via:

TcpFarmProbeArgs{...}

type TcpFarmProbeOutput

type TcpFarmProbeOutput struct{ *pulumi.OutputState }

func (TcpFarmProbeOutput) ElementType

func (TcpFarmProbeOutput) ElementType() reflect.Type

func (TcpFarmProbeOutput) ForceSsl

Force use of SSL (TLS)

func (TcpFarmProbeOutput) Interval

func (o TcpFarmProbeOutput) Interval() pulumi.IntPtrOutput

probe interval, Value between 30 and 3600 seconds, default 30

func (TcpFarmProbeOutput) Match

What to match `pattern` against (`contains`, `default`, `internal`, `matches`, `status`)

func (TcpFarmProbeOutput) Method

HTTP probe method (`GET`, `HEAD`, `OPTIONS`, `internal`)

func (TcpFarmProbeOutput) Negate

Negate probe result

func (TcpFarmProbeOutput) Pattern

Pattern to match against `match`

func (TcpFarmProbeOutput) Port

Port for backends to receive traffic on.

func (TcpFarmProbeOutput) ToTcpFarmProbeOutput

func (o TcpFarmProbeOutput) ToTcpFarmProbeOutput() TcpFarmProbeOutput

func (TcpFarmProbeOutput) ToTcpFarmProbeOutputWithContext

func (o TcpFarmProbeOutput) ToTcpFarmProbeOutputWithContext(ctx context.Context) TcpFarmProbeOutput

func (TcpFarmProbeOutput) ToTcpFarmProbePtrOutput

func (o TcpFarmProbeOutput) ToTcpFarmProbePtrOutput() TcpFarmProbePtrOutput

func (TcpFarmProbeOutput) ToTcpFarmProbePtrOutputWithContext

func (o TcpFarmProbeOutput) ToTcpFarmProbePtrOutputWithContext(ctx context.Context) TcpFarmProbePtrOutput

func (TcpFarmProbeOutput) Type

Valid values : `http`, `internal`, `mysql`, `oco`, `pgsql`, `smtp`, `tcp`

func (TcpFarmProbeOutput) Url

URL for HTTP probe type.

type TcpFarmProbePtrInput

type TcpFarmProbePtrInput interface {
	pulumi.Input

	ToTcpFarmProbePtrOutput() TcpFarmProbePtrOutput
	ToTcpFarmProbePtrOutputWithContext(context.Context) TcpFarmProbePtrOutput
}

TcpFarmProbePtrInput is an input type that accepts TcpFarmProbeArgs, TcpFarmProbePtr and TcpFarmProbePtrOutput values. You can construct a concrete instance of `TcpFarmProbePtrInput` via:

        TcpFarmProbeArgs{...}

or:

        nil

type TcpFarmProbePtrOutput

type TcpFarmProbePtrOutput struct{ *pulumi.OutputState }

func (TcpFarmProbePtrOutput) Elem

func (TcpFarmProbePtrOutput) ElementType

func (TcpFarmProbePtrOutput) ElementType() reflect.Type

func (TcpFarmProbePtrOutput) ForceSsl

Force use of SSL (TLS)

func (TcpFarmProbePtrOutput) Interval

probe interval, Value between 30 and 3600 seconds, default 30

func (TcpFarmProbePtrOutput) Match

What to match `pattern` against (`contains`, `default`, `internal`, `matches`, `status`)

func (TcpFarmProbePtrOutput) Method

HTTP probe method (`GET`, `HEAD`, `OPTIONS`, `internal`)

func (TcpFarmProbePtrOutput) Negate

Negate probe result

func (TcpFarmProbePtrOutput) Pattern

Pattern to match against `match`

func (TcpFarmProbePtrOutput) Port

Port for backends to receive traffic on.

func (TcpFarmProbePtrOutput) ToTcpFarmProbePtrOutput

func (o TcpFarmProbePtrOutput) ToTcpFarmProbePtrOutput() TcpFarmProbePtrOutput

func (TcpFarmProbePtrOutput) ToTcpFarmProbePtrOutputWithContext

func (o TcpFarmProbePtrOutput) ToTcpFarmProbePtrOutputWithContext(ctx context.Context) TcpFarmProbePtrOutput

func (TcpFarmProbePtrOutput) Type

Valid values : `http`, `internal`, `mysql`, `oco`, `pgsql`, `smtp`, `tcp`

func (TcpFarmProbePtrOutput) Url

URL for HTTP probe type.

type TcpFarmServer

type TcpFarmServer struct {
	pulumi.CustomResourceState

	// Address of the backend server (IP from either internal or OVHcloud network)
	Address pulumi.StringOutput `pulumi:"address"`
	// is it a backup server used in case of failure of all the non-backup backends
	Backup pulumi.BoolPtrOutput   `pulumi:"backup"`
	Chain  pulumi.StringPtrOutput `pulumi:"chain"`
	// Label for the server
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// ID of the farm this server is attached to
	FarmId pulumi.IntOutput `pulumi:"farmId"`
	// enable action when backend marked down. (`shutdown-sessions`)
	OnMarkedDown pulumi.StringPtrOutput `pulumi:"onMarkedDown"`
	// Port that backend will respond on
	Port pulumi.IntPtrOutput `pulumi:"port"`
	// defines if backend will be probed to determine health and keep as active in farm if healthy
	Probe pulumi.BoolPtrOutput `pulumi:"probe"`
	// version of the PROXY protocol used to pass origin connection information from loadbalancer to receiving service (`v1`, `v2`, `v2-ssl`, `v2-ssl-cn`)
	ProxyProtocolVersion pulumi.StringPtrOutput `pulumi:"proxyProtocolVersion"`
	// The internal name of your IP load balancing
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
	// is the connection ciphered with SSL (TLS)
	Ssl pulumi.BoolPtrOutput `pulumi:"ssl"`
	// backend status - `active` or `inactive`
	Status pulumi.StringOutput `pulumi:"status"`
	// used in loadbalancing algorithm
	Weight pulumi.IntPtrOutput `pulumi:"weight"`
}

Creates a backend server entry linked to loadbalancing group (farm)

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		lb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, &iploadbalancing.GetIpLoadBalancingArgs{
			ServiceName: pulumi.StringRef("ip-1.2.3.4"),
			State:       pulumi.StringRef("ok"),
		}, nil)
		if err != nil {
			return err
		}
		farmname, err := IpLoadBalancing.NewTcpFarm(ctx, "farmname", &IpLoadBalancing.TcpFarmArgs{
			Port:        pulumi.Int(8080),
			ServiceName: pulumi.String(lb.ServiceName),
			Zone:        pulumi.String("all"),
		})
		if err != nil {
			return err
		}
		_, err = IpLoadBalancing.NewTcpFarmServer(ctx, "backend", &IpLoadBalancing.TcpFarmServerArgs{
			Address:              pulumi.String("4.5.6.7"),
			Backup:               pulumi.Bool(true),
			DisplayName:          pulumi.String("mybackend"),
			FarmId:               farmname.ID(),
			Port:                 pulumi.Int(80),
			Probe:                pulumi.Bool(true),
			ProxyProtocolVersion: pulumi.String("v2"),
			ServiceName:          pulumi.String(lb.ServiceName),
			Ssl:                  pulumi.Bool(false),
			Status:               pulumi.String("active"),
			Weight:               pulumi.Int(2),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

TCP farm server can be imported using the following format `serviceName`, the `id` of the farm and the `id` of the server separated by "/" e.g.

func GetTcpFarmServer

func GetTcpFarmServer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TcpFarmServerState, opts ...pulumi.ResourceOption) (*TcpFarmServer, error)

GetTcpFarmServer gets an existing TcpFarmServer resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTcpFarmServer

func NewTcpFarmServer(ctx *pulumi.Context,
	name string, args *TcpFarmServerArgs, opts ...pulumi.ResourceOption) (*TcpFarmServer, error)

NewTcpFarmServer registers a new resource with the given unique name, arguments, and options.

func (*TcpFarmServer) ElementType

func (*TcpFarmServer) ElementType() reflect.Type

func (*TcpFarmServer) ToTcpFarmServerOutput

func (i *TcpFarmServer) ToTcpFarmServerOutput() TcpFarmServerOutput

func (*TcpFarmServer) ToTcpFarmServerOutputWithContext

func (i *TcpFarmServer) ToTcpFarmServerOutputWithContext(ctx context.Context) TcpFarmServerOutput

type TcpFarmServerArgs

type TcpFarmServerArgs struct {
	// Address of the backend server (IP from either internal or OVHcloud network)
	Address pulumi.StringInput
	// is it a backup server used in case of failure of all the non-backup backends
	Backup pulumi.BoolPtrInput
	Chain  pulumi.StringPtrInput
	// Label for the server
	DisplayName pulumi.StringPtrInput
	// ID of the farm this server is attached to
	FarmId pulumi.IntInput
	// enable action when backend marked down. (`shutdown-sessions`)
	OnMarkedDown pulumi.StringPtrInput
	// Port that backend will respond on
	Port pulumi.IntPtrInput
	// defines if backend will be probed to determine health and keep as active in farm if healthy
	Probe pulumi.BoolPtrInput
	// version of the PROXY protocol used to pass origin connection information from loadbalancer to receiving service (`v1`, `v2`, `v2-ssl`, `v2-ssl-cn`)
	ProxyProtocolVersion pulumi.StringPtrInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringInput
	// is the connection ciphered with SSL (TLS)
	Ssl pulumi.BoolPtrInput
	// backend status - `active` or `inactive`
	Status pulumi.StringInput
	// used in loadbalancing algorithm
	Weight pulumi.IntPtrInput
}

The set of arguments for constructing a TcpFarmServer resource.

func (TcpFarmServerArgs) ElementType

func (TcpFarmServerArgs) ElementType() reflect.Type

type TcpFarmServerArray

type TcpFarmServerArray []TcpFarmServerInput

func (TcpFarmServerArray) ElementType

func (TcpFarmServerArray) ElementType() reflect.Type

func (TcpFarmServerArray) ToTcpFarmServerArrayOutput

func (i TcpFarmServerArray) ToTcpFarmServerArrayOutput() TcpFarmServerArrayOutput

func (TcpFarmServerArray) ToTcpFarmServerArrayOutputWithContext

func (i TcpFarmServerArray) ToTcpFarmServerArrayOutputWithContext(ctx context.Context) TcpFarmServerArrayOutput

type TcpFarmServerArrayInput

type TcpFarmServerArrayInput interface {
	pulumi.Input

	ToTcpFarmServerArrayOutput() TcpFarmServerArrayOutput
	ToTcpFarmServerArrayOutputWithContext(context.Context) TcpFarmServerArrayOutput
}

TcpFarmServerArrayInput is an input type that accepts TcpFarmServerArray and TcpFarmServerArrayOutput values. You can construct a concrete instance of `TcpFarmServerArrayInput` via:

TcpFarmServerArray{ TcpFarmServerArgs{...} }

type TcpFarmServerArrayOutput

type TcpFarmServerArrayOutput struct{ *pulumi.OutputState }

func (TcpFarmServerArrayOutput) ElementType

func (TcpFarmServerArrayOutput) ElementType() reflect.Type

func (TcpFarmServerArrayOutput) Index

func (TcpFarmServerArrayOutput) ToTcpFarmServerArrayOutput

func (o TcpFarmServerArrayOutput) ToTcpFarmServerArrayOutput() TcpFarmServerArrayOutput

func (TcpFarmServerArrayOutput) ToTcpFarmServerArrayOutputWithContext

func (o TcpFarmServerArrayOutput) ToTcpFarmServerArrayOutputWithContext(ctx context.Context) TcpFarmServerArrayOutput

type TcpFarmServerInput

type TcpFarmServerInput interface {
	pulumi.Input

	ToTcpFarmServerOutput() TcpFarmServerOutput
	ToTcpFarmServerOutputWithContext(ctx context.Context) TcpFarmServerOutput
}

type TcpFarmServerMap

type TcpFarmServerMap map[string]TcpFarmServerInput

func (TcpFarmServerMap) ElementType

func (TcpFarmServerMap) ElementType() reflect.Type

func (TcpFarmServerMap) ToTcpFarmServerMapOutput

func (i TcpFarmServerMap) ToTcpFarmServerMapOutput() TcpFarmServerMapOutput

func (TcpFarmServerMap) ToTcpFarmServerMapOutputWithContext

func (i TcpFarmServerMap) ToTcpFarmServerMapOutputWithContext(ctx context.Context) TcpFarmServerMapOutput

type TcpFarmServerMapInput

type TcpFarmServerMapInput interface {
	pulumi.Input

	ToTcpFarmServerMapOutput() TcpFarmServerMapOutput
	ToTcpFarmServerMapOutputWithContext(context.Context) TcpFarmServerMapOutput
}

TcpFarmServerMapInput is an input type that accepts TcpFarmServerMap and TcpFarmServerMapOutput values. You can construct a concrete instance of `TcpFarmServerMapInput` via:

TcpFarmServerMap{ "key": TcpFarmServerArgs{...} }

type TcpFarmServerMapOutput

type TcpFarmServerMapOutput struct{ *pulumi.OutputState }

func (TcpFarmServerMapOutput) ElementType

func (TcpFarmServerMapOutput) ElementType() reflect.Type

func (TcpFarmServerMapOutput) MapIndex

func (TcpFarmServerMapOutput) ToTcpFarmServerMapOutput

func (o TcpFarmServerMapOutput) ToTcpFarmServerMapOutput() TcpFarmServerMapOutput

func (TcpFarmServerMapOutput) ToTcpFarmServerMapOutputWithContext

func (o TcpFarmServerMapOutput) ToTcpFarmServerMapOutputWithContext(ctx context.Context) TcpFarmServerMapOutput

type TcpFarmServerOutput

type TcpFarmServerOutput struct{ *pulumi.OutputState }

func (TcpFarmServerOutput) Address

Address of the backend server (IP from either internal or OVHcloud network)

func (TcpFarmServerOutput) Backup

is it a backup server used in case of failure of all the non-backup backends

func (TcpFarmServerOutput) Chain

func (TcpFarmServerOutput) DisplayName

func (o TcpFarmServerOutput) DisplayName() pulumi.StringPtrOutput

Label for the server

func (TcpFarmServerOutput) ElementType

func (TcpFarmServerOutput) ElementType() reflect.Type

func (TcpFarmServerOutput) FarmId

ID of the farm this server is attached to

func (TcpFarmServerOutput) OnMarkedDown

func (o TcpFarmServerOutput) OnMarkedDown() pulumi.StringPtrOutput

enable action when backend marked down. (`shutdown-sessions`)

func (TcpFarmServerOutput) Port

Port that backend will respond on

func (TcpFarmServerOutput) Probe

defines if backend will be probed to determine health and keep as active in farm if healthy

func (TcpFarmServerOutput) ProxyProtocolVersion

func (o TcpFarmServerOutput) ProxyProtocolVersion() pulumi.StringPtrOutput

version of the PROXY protocol used to pass origin connection information from loadbalancer to receiving service (`v1`, `v2`, `v2-ssl`, `v2-ssl-cn`)

func (TcpFarmServerOutput) ServiceName

func (o TcpFarmServerOutput) ServiceName() pulumi.StringOutput

The internal name of your IP load balancing

func (TcpFarmServerOutput) Ssl

is the connection ciphered with SSL (TLS)

func (TcpFarmServerOutput) Status

backend status - `active` or `inactive`

func (TcpFarmServerOutput) ToTcpFarmServerOutput

func (o TcpFarmServerOutput) ToTcpFarmServerOutput() TcpFarmServerOutput

func (TcpFarmServerOutput) ToTcpFarmServerOutputWithContext

func (o TcpFarmServerOutput) ToTcpFarmServerOutputWithContext(ctx context.Context) TcpFarmServerOutput

func (TcpFarmServerOutput) Weight

used in loadbalancing algorithm

type TcpFarmServerState

type TcpFarmServerState struct {
	// Address of the backend server (IP from either internal or OVHcloud network)
	Address pulumi.StringPtrInput
	// is it a backup server used in case of failure of all the non-backup backends
	Backup pulumi.BoolPtrInput
	Chain  pulumi.StringPtrInput
	// Label for the server
	DisplayName pulumi.StringPtrInput
	// ID of the farm this server is attached to
	FarmId pulumi.IntPtrInput
	// enable action when backend marked down. (`shutdown-sessions`)
	OnMarkedDown pulumi.StringPtrInput
	// Port that backend will respond on
	Port pulumi.IntPtrInput
	// defines if backend will be probed to determine health and keep as active in farm if healthy
	Probe pulumi.BoolPtrInput
	// version of the PROXY protocol used to pass origin connection information from loadbalancer to receiving service (`v1`, `v2`, `v2-ssl`, `v2-ssl-cn`)
	ProxyProtocolVersion pulumi.StringPtrInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringPtrInput
	// is the connection ciphered with SSL (TLS)
	Ssl pulumi.BoolPtrInput
	// backend status - `active` or `inactive`
	Status pulumi.StringPtrInput
	// used in loadbalancing algorithm
	Weight pulumi.IntPtrInput
}

func (TcpFarmServerState) ElementType

func (TcpFarmServerState) ElementType() reflect.Type

type TcpFarmState

type TcpFarmState struct {
	// Load balancing algorithm. `roundrobin` if null (`first`, `leastconn`, `roundrobin`, `source`)
	Balance pulumi.StringPtrInput
	// Readable label for loadbalancer farm
	DisplayName pulumi.StringPtrInput
	// Port for backends to receive traffic on.
	Port pulumi.IntPtrInput
	// define a backend healthcheck probe
	Probe TcpFarmProbePtrInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringPtrInput
	// Stickiness type. No stickiness if null (`sourceIp`)
	Stickiness pulumi.StringPtrInput
	// Internal Load Balancer identifier of the vRack private network to attach to your farm, mandatory when your Load Balancer is attached to a vRack
	VrackNetworkId pulumi.IntPtrInput
	// Zone where the farm will be defined (ie. `GRA`, `BHS` also supports `ALL`)
	Zone pulumi.StringPtrInput
}

func (TcpFarmState) ElementType

func (TcpFarmState) ElementType() reflect.Type

type TcpFrontend

type TcpFrontend struct {
	pulumi.CustomResourceState

	// Restrict IP Load Balancing access to these ip block. No restriction if null. List of IP blocks.
	AllowedSources pulumi.StringArrayOutput `pulumi:"allowedSources"`
	// Only attach frontend on these ip. No restriction if null. List of Ip blocks.
	DedicatedIpfos pulumi.StringArrayOutput `pulumi:"dedicatedIpfos"`
	// Default TCP Farm of your frontend
	DefaultFarmId pulumi.IntOutput `pulumi:"defaultFarmId"`
	// Default ssl served to your customer
	DefaultSslId pulumi.IntOutput `pulumi:"defaultSslId"`
	// Disable your frontend. Default: 'false'
	Disabled pulumi.BoolPtrOutput `pulumi:"disabled"`
	// Human readable name for your frontend, this field is for you
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// Port(s) attached to your frontend. Supports single port (numerical value),
	// range (2 dash-delimited increasing ports) and comma-separated list of 'single port'
	// and/or 'range'. Each port must be in the [1;49151] range
	Port pulumi.StringOutput `pulumi:"port"`
	// The internal name of your IP load balancing
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
	// SSL deciphering. Default: 'false'
	Ssl pulumi.BoolPtrOutput `pulumi:"ssl"`
	// Zone where the frontend will be defined (ie. `gra`, `bhs` also supports `all`)
	Zone pulumi.StringOutput `pulumi:"zone"`
}

Creates a backend server group (frontend) to be used by loadbalancing frontend(s)

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		lb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, &iploadbalancing.GetIpLoadBalancingArgs{
			ServiceName: pulumi.StringRef("ip-1.2.3.4"),
			State:       pulumi.StringRef("ok"),
		}, nil)
		if err != nil {
			return err
		}
		farm80, err := IpLoadBalancing.NewTcpFarm(ctx, "farm80", &IpLoadBalancing.TcpFarmArgs{
			DisplayName: pulumi.String("ingress-8080-gra"),
			Port:        pulumi.Int(80),
			ServiceName: pulumi.String(lb.ServiceName),
			Zone:        pulumi.String("all"),
		})
		if err != nil {
			return err
		}
		_, err = IpLoadBalancing.NewTcpFrontend(ctx, "testfrontend", &IpLoadBalancing.TcpFrontendArgs{
			DefaultFarmId: farm80.ID(),
			DisplayName:   pulumi.String("ingress-8080-gra"),
			Port:          pulumi.String("80,443"),
			ServiceName:   pulumi.String(lb.ServiceName),
			Zone:          pulumi.String("all"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

TCP frontend can be imported using the following format `serviceName` and the `id` of the frontend separated by "/" e.g.

func GetTcpFrontend

func GetTcpFrontend(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TcpFrontendState, opts ...pulumi.ResourceOption) (*TcpFrontend, error)

GetTcpFrontend gets an existing TcpFrontend resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTcpFrontend

func NewTcpFrontend(ctx *pulumi.Context,
	name string, args *TcpFrontendArgs, opts ...pulumi.ResourceOption) (*TcpFrontend, error)

NewTcpFrontend registers a new resource with the given unique name, arguments, and options.

func (*TcpFrontend) ElementType

func (*TcpFrontend) ElementType() reflect.Type

func (*TcpFrontend) ToTcpFrontendOutput

func (i *TcpFrontend) ToTcpFrontendOutput() TcpFrontendOutput

func (*TcpFrontend) ToTcpFrontendOutputWithContext

func (i *TcpFrontend) ToTcpFrontendOutputWithContext(ctx context.Context) TcpFrontendOutput

type TcpFrontendArgs

type TcpFrontendArgs struct {
	// Restrict IP Load Balancing access to these ip block. No restriction if null. List of IP blocks.
	AllowedSources pulumi.StringArrayInput
	// Only attach frontend on these ip. No restriction if null. List of Ip blocks.
	DedicatedIpfos pulumi.StringArrayInput
	// Default TCP Farm of your frontend
	DefaultFarmId pulumi.IntPtrInput
	// Default ssl served to your customer
	DefaultSslId pulumi.IntPtrInput
	// Disable your frontend. Default: 'false'
	Disabled pulumi.BoolPtrInput
	// Human readable name for your frontend, this field is for you
	DisplayName pulumi.StringPtrInput
	// Port(s) attached to your frontend. Supports single port (numerical value),
	// range (2 dash-delimited increasing ports) and comma-separated list of 'single port'
	// and/or 'range'. Each port must be in the [1;49151] range
	Port pulumi.StringInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringInput
	// SSL deciphering. Default: 'false'
	Ssl pulumi.BoolPtrInput
	// Zone where the frontend will be defined (ie. `gra`, `bhs` also supports `all`)
	Zone pulumi.StringInput
}

The set of arguments for constructing a TcpFrontend resource.

func (TcpFrontendArgs) ElementType

func (TcpFrontendArgs) ElementType() reflect.Type

type TcpFrontendArray

type TcpFrontendArray []TcpFrontendInput

func (TcpFrontendArray) ElementType

func (TcpFrontendArray) ElementType() reflect.Type

func (TcpFrontendArray) ToTcpFrontendArrayOutput

func (i TcpFrontendArray) ToTcpFrontendArrayOutput() TcpFrontendArrayOutput

func (TcpFrontendArray) ToTcpFrontendArrayOutputWithContext

func (i TcpFrontendArray) ToTcpFrontendArrayOutputWithContext(ctx context.Context) TcpFrontendArrayOutput

type TcpFrontendArrayInput

type TcpFrontendArrayInput interface {
	pulumi.Input

	ToTcpFrontendArrayOutput() TcpFrontendArrayOutput
	ToTcpFrontendArrayOutputWithContext(context.Context) TcpFrontendArrayOutput
}

TcpFrontendArrayInput is an input type that accepts TcpFrontendArray and TcpFrontendArrayOutput values. You can construct a concrete instance of `TcpFrontendArrayInput` via:

TcpFrontendArray{ TcpFrontendArgs{...} }

type TcpFrontendArrayOutput

type TcpFrontendArrayOutput struct{ *pulumi.OutputState }

func (TcpFrontendArrayOutput) ElementType

func (TcpFrontendArrayOutput) ElementType() reflect.Type

func (TcpFrontendArrayOutput) Index

func (TcpFrontendArrayOutput) ToTcpFrontendArrayOutput

func (o TcpFrontendArrayOutput) ToTcpFrontendArrayOutput() TcpFrontendArrayOutput

func (TcpFrontendArrayOutput) ToTcpFrontendArrayOutputWithContext

func (o TcpFrontendArrayOutput) ToTcpFrontendArrayOutputWithContext(ctx context.Context) TcpFrontendArrayOutput

type TcpFrontendInput

type TcpFrontendInput interface {
	pulumi.Input

	ToTcpFrontendOutput() TcpFrontendOutput
	ToTcpFrontendOutputWithContext(ctx context.Context) TcpFrontendOutput
}

type TcpFrontendMap

type TcpFrontendMap map[string]TcpFrontendInput

func (TcpFrontendMap) ElementType

func (TcpFrontendMap) ElementType() reflect.Type

func (TcpFrontendMap) ToTcpFrontendMapOutput

func (i TcpFrontendMap) ToTcpFrontendMapOutput() TcpFrontendMapOutput

func (TcpFrontendMap) ToTcpFrontendMapOutputWithContext

func (i TcpFrontendMap) ToTcpFrontendMapOutputWithContext(ctx context.Context) TcpFrontendMapOutput

type TcpFrontendMapInput

type TcpFrontendMapInput interface {
	pulumi.Input

	ToTcpFrontendMapOutput() TcpFrontendMapOutput
	ToTcpFrontendMapOutputWithContext(context.Context) TcpFrontendMapOutput
}

TcpFrontendMapInput is an input type that accepts TcpFrontendMap and TcpFrontendMapOutput values. You can construct a concrete instance of `TcpFrontendMapInput` via:

TcpFrontendMap{ "key": TcpFrontendArgs{...} }

type TcpFrontendMapOutput

type TcpFrontendMapOutput struct{ *pulumi.OutputState }

func (TcpFrontendMapOutput) ElementType

func (TcpFrontendMapOutput) ElementType() reflect.Type

func (TcpFrontendMapOutput) MapIndex

func (TcpFrontendMapOutput) ToTcpFrontendMapOutput

func (o TcpFrontendMapOutput) ToTcpFrontendMapOutput() TcpFrontendMapOutput

func (TcpFrontendMapOutput) ToTcpFrontendMapOutputWithContext

func (o TcpFrontendMapOutput) ToTcpFrontendMapOutputWithContext(ctx context.Context) TcpFrontendMapOutput

type TcpFrontendOutput

type TcpFrontendOutput struct{ *pulumi.OutputState }

func (TcpFrontendOutput) AllowedSources

func (o TcpFrontendOutput) AllowedSources() pulumi.StringArrayOutput

Restrict IP Load Balancing access to these ip block. No restriction if null. List of IP blocks.

func (TcpFrontendOutput) DedicatedIpfos

func (o TcpFrontendOutput) DedicatedIpfos() pulumi.StringArrayOutput

Only attach frontend on these ip. No restriction if null. List of Ip blocks.

func (TcpFrontendOutput) DefaultFarmId

func (o TcpFrontendOutput) DefaultFarmId() pulumi.IntOutput

Default TCP Farm of your frontend

func (TcpFrontendOutput) DefaultSslId

func (o TcpFrontendOutput) DefaultSslId() pulumi.IntOutput

Default ssl served to your customer

func (TcpFrontendOutput) Disabled

func (o TcpFrontendOutput) Disabled() pulumi.BoolPtrOutput

Disable your frontend. Default: 'false'

func (TcpFrontendOutput) DisplayName

func (o TcpFrontendOutput) DisplayName() pulumi.StringPtrOutput

Human readable name for your frontend, this field is for you

func (TcpFrontendOutput) ElementType

func (TcpFrontendOutput) ElementType() reflect.Type

func (TcpFrontendOutput) Port

Port(s) attached to your frontend. Supports single port (numerical value), range (2 dash-delimited increasing ports) and comma-separated list of 'single port' and/or 'range'. Each port must be in the [1;49151] range

func (TcpFrontendOutput) ServiceName

func (o TcpFrontendOutput) ServiceName() pulumi.StringOutput

The internal name of your IP load balancing

func (TcpFrontendOutput) Ssl

SSL deciphering. Default: 'false'

func (TcpFrontendOutput) ToTcpFrontendOutput

func (o TcpFrontendOutput) ToTcpFrontendOutput() TcpFrontendOutput

func (TcpFrontendOutput) ToTcpFrontendOutputWithContext

func (o TcpFrontendOutput) ToTcpFrontendOutputWithContext(ctx context.Context) TcpFrontendOutput

func (TcpFrontendOutput) Zone

Zone where the frontend will be defined (ie. `gra`, `bhs` also supports `all`)

type TcpFrontendState

type TcpFrontendState struct {
	// Restrict IP Load Balancing access to these ip block. No restriction if null. List of IP blocks.
	AllowedSources pulumi.StringArrayInput
	// Only attach frontend on these ip. No restriction if null. List of Ip blocks.
	DedicatedIpfos pulumi.StringArrayInput
	// Default TCP Farm of your frontend
	DefaultFarmId pulumi.IntPtrInput
	// Default ssl served to your customer
	DefaultSslId pulumi.IntPtrInput
	// Disable your frontend. Default: 'false'
	Disabled pulumi.BoolPtrInput
	// Human readable name for your frontend, this field is for you
	DisplayName pulumi.StringPtrInput
	// Port(s) attached to your frontend. Supports single port (numerical value),
	// range (2 dash-delimited increasing ports) and comma-separated list of 'single port'
	// and/or 'range'. Each port must be in the [1;49151] range
	Port pulumi.StringPtrInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringPtrInput
	// SSL deciphering. Default: 'false'
	Ssl pulumi.BoolPtrInput
	// Zone where the frontend will be defined (ie. `gra`, `bhs` also supports `all`)
	Zone pulumi.StringPtrInput
}

func (TcpFrontendState) ElementType

func (TcpFrontendState) ElementType() reflect.Type

type TcpRoute

type TcpRoute struct {
	pulumi.CustomResourceState

	// Action triggered when all rules match
	Action TcpRouteActionOutput `pulumi:"action"`
	// Human readable name for your route, this field is for you
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// Route traffic for this frontend
	FrontendId pulumi.IntOutput `pulumi:"frontendId"`
	// List of rules to match to trigger action
	Rules TcpRouteRuleTypeArrayOutput `pulumi:"rules"`
	// The internal name of your IP load balancing
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
	// Route status. Routes in "ok" state are ready to operate
	Status pulumi.StringOutput `pulumi:"status"`
	// Route priority ([0..255]). 0 if null. Highest priority routes are evaluated first. Only the first matching route will trigger an action
	Weight pulumi.IntOutput `pulumi:"weight"`
}

Manage TCP route for a loadbalancer service

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := IpLoadBalancing.NewTcpRoute(ctx, "tcpreject", &IpLoadBalancing.TcpRouteArgs{
			Action: &iploadbalancing.TcpRouteActionArgs{
				Type: pulumi.String("reject"),
			},
			ServiceName: pulumi.String("loadbalancer-xxxxxxxxxxxxxxxxxx"),
			Weight:      pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

TCP route can be imported using the following format `serviceName` and the `id` of the route separated by "/" e.g.

func GetTcpRoute

func GetTcpRoute(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TcpRouteState, opts ...pulumi.ResourceOption) (*TcpRoute, error)

GetTcpRoute gets an existing TcpRoute resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTcpRoute

func NewTcpRoute(ctx *pulumi.Context,
	name string, args *TcpRouteArgs, opts ...pulumi.ResourceOption) (*TcpRoute, error)

NewTcpRoute registers a new resource with the given unique name, arguments, and options.

func (*TcpRoute) ElementType

func (*TcpRoute) ElementType() reflect.Type

func (*TcpRoute) ToTcpRouteOutput

func (i *TcpRoute) ToTcpRouteOutput() TcpRouteOutput

func (*TcpRoute) ToTcpRouteOutputWithContext

func (i *TcpRoute) ToTcpRouteOutputWithContext(ctx context.Context) TcpRouteOutput

type TcpRouteAction

type TcpRouteAction struct {
	// Farm ID for "farm" action type, empty for others.
	Target *string `pulumi:"target"`
	// Action to trigger if all the rules of this route matches
	Type string `pulumi:"type"`
}

type TcpRouteActionArgs

type TcpRouteActionArgs struct {
	// Farm ID for "farm" action type, empty for others.
	Target pulumi.StringPtrInput `pulumi:"target"`
	// Action to trigger if all the rules of this route matches
	Type pulumi.StringInput `pulumi:"type"`
}

func (TcpRouteActionArgs) ElementType

func (TcpRouteActionArgs) ElementType() reflect.Type

func (TcpRouteActionArgs) ToTcpRouteActionOutput

func (i TcpRouteActionArgs) ToTcpRouteActionOutput() TcpRouteActionOutput

func (TcpRouteActionArgs) ToTcpRouteActionOutputWithContext

func (i TcpRouteActionArgs) ToTcpRouteActionOutputWithContext(ctx context.Context) TcpRouteActionOutput

func (TcpRouteActionArgs) ToTcpRouteActionPtrOutput

func (i TcpRouteActionArgs) ToTcpRouteActionPtrOutput() TcpRouteActionPtrOutput

func (TcpRouteActionArgs) ToTcpRouteActionPtrOutputWithContext

func (i TcpRouteActionArgs) ToTcpRouteActionPtrOutputWithContext(ctx context.Context) TcpRouteActionPtrOutput

type TcpRouteActionInput

type TcpRouteActionInput interface {
	pulumi.Input

	ToTcpRouteActionOutput() TcpRouteActionOutput
	ToTcpRouteActionOutputWithContext(context.Context) TcpRouteActionOutput
}

TcpRouteActionInput is an input type that accepts TcpRouteActionArgs and TcpRouteActionOutput values. You can construct a concrete instance of `TcpRouteActionInput` via:

TcpRouteActionArgs{...}

type TcpRouteActionOutput

type TcpRouteActionOutput struct{ *pulumi.OutputState }

func (TcpRouteActionOutput) ElementType

func (TcpRouteActionOutput) ElementType() reflect.Type

func (TcpRouteActionOutput) Target

Farm ID for "farm" action type, empty for others.

func (TcpRouteActionOutput) ToTcpRouteActionOutput

func (o TcpRouteActionOutput) ToTcpRouteActionOutput() TcpRouteActionOutput

func (TcpRouteActionOutput) ToTcpRouteActionOutputWithContext

func (o TcpRouteActionOutput) ToTcpRouteActionOutputWithContext(ctx context.Context) TcpRouteActionOutput

func (TcpRouteActionOutput) ToTcpRouteActionPtrOutput

func (o TcpRouteActionOutput) ToTcpRouteActionPtrOutput() TcpRouteActionPtrOutput

func (TcpRouteActionOutput) ToTcpRouteActionPtrOutputWithContext

func (o TcpRouteActionOutput) ToTcpRouteActionPtrOutputWithContext(ctx context.Context) TcpRouteActionPtrOutput

func (TcpRouteActionOutput) Type

Action to trigger if all the rules of this route matches

type TcpRouteActionPtrInput

type TcpRouteActionPtrInput interface {
	pulumi.Input

	ToTcpRouteActionPtrOutput() TcpRouteActionPtrOutput
	ToTcpRouteActionPtrOutputWithContext(context.Context) TcpRouteActionPtrOutput
}

TcpRouteActionPtrInput is an input type that accepts TcpRouteActionArgs, TcpRouteActionPtr and TcpRouteActionPtrOutput values. You can construct a concrete instance of `TcpRouteActionPtrInput` via:

        TcpRouteActionArgs{...}

or:

        nil

type TcpRouteActionPtrOutput

type TcpRouteActionPtrOutput struct{ *pulumi.OutputState }

func (TcpRouteActionPtrOutput) Elem

func (TcpRouteActionPtrOutput) ElementType

func (TcpRouteActionPtrOutput) ElementType() reflect.Type

func (TcpRouteActionPtrOutput) Target

Farm ID for "farm" action type, empty for others.

func (TcpRouteActionPtrOutput) ToTcpRouteActionPtrOutput

func (o TcpRouteActionPtrOutput) ToTcpRouteActionPtrOutput() TcpRouteActionPtrOutput

func (TcpRouteActionPtrOutput) ToTcpRouteActionPtrOutputWithContext

func (o TcpRouteActionPtrOutput) ToTcpRouteActionPtrOutputWithContext(ctx context.Context) TcpRouteActionPtrOutput

func (TcpRouteActionPtrOutput) Type

Action to trigger if all the rules of this route matches

type TcpRouteArgs

type TcpRouteArgs struct {
	// Action triggered when all rules match
	Action TcpRouteActionInput
	// Human readable name for your route, this field is for you
	DisplayName pulumi.StringPtrInput
	// Route traffic for this frontend
	FrontendId pulumi.IntPtrInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringInput
	// Route priority ([0..255]). 0 if null. Highest priority routes are evaluated first. Only the first matching route will trigger an action
	Weight pulumi.IntPtrInput
}

The set of arguments for constructing a TcpRoute resource.

func (TcpRouteArgs) ElementType

func (TcpRouteArgs) ElementType() reflect.Type

type TcpRouteArray

type TcpRouteArray []TcpRouteInput

func (TcpRouteArray) ElementType

func (TcpRouteArray) ElementType() reflect.Type

func (TcpRouteArray) ToTcpRouteArrayOutput

func (i TcpRouteArray) ToTcpRouteArrayOutput() TcpRouteArrayOutput

func (TcpRouteArray) ToTcpRouteArrayOutputWithContext

func (i TcpRouteArray) ToTcpRouteArrayOutputWithContext(ctx context.Context) TcpRouteArrayOutput

type TcpRouteArrayInput

type TcpRouteArrayInput interface {
	pulumi.Input

	ToTcpRouteArrayOutput() TcpRouteArrayOutput
	ToTcpRouteArrayOutputWithContext(context.Context) TcpRouteArrayOutput
}

TcpRouteArrayInput is an input type that accepts TcpRouteArray and TcpRouteArrayOutput values. You can construct a concrete instance of `TcpRouteArrayInput` via:

TcpRouteArray{ TcpRouteArgs{...} }

type TcpRouteArrayOutput

type TcpRouteArrayOutput struct{ *pulumi.OutputState }

func (TcpRouteArrayOutput) ElementType

func (TcpRouteArrayOutput) ElementType() reflect.Type

func (TcpRouteArrayOutput) Index

func (TcpRouteArrayOutput) ToTcpRouteArrayOutput

func (o TcpRouteArrayOutput) ToTcpRouteArrayOutput() TcpRouteArrayOutput

func (TcpRouteArrayOutput) ToTcpRouteArrayOutputWithContext

func (o TcpRouteArrayOutput) ToTcpRouteArrayOutputWithContext(ctx context.Context) TcpRouteArrayOutput

type TcpRouteInput

type TcpRouteInput interface {
	pulumi.Input

	ToTcpRouteOutput() TcpRouteOutput
	ToTcpRouteOutputWithContext(ctx context.Context) TcpRouteOutput
}

type TcpRouteMap

type TcpRouteMap map[string]TcpRouteInput

func (TcpRouteMap) ElementType

func (TcpRouteMap) ElementType() reflect.Type

func (TcpRouteMap) ToTcpRouteMapOutput

func (i TcpRouteMap) ToTcpRouteMapOutput() TcpRouteMapOutput

func (TcpRouteMap) ToTcpRouteMapOutputWithContext

func (i TcpRouteMap) ToTcpRouteMapOutputWithContext(ctx context.Context) TcpRouteMapOutput

type TcpRouteMapInput

type TcpRouteMapInput interface {
	pulumi.Input

	ToTcpRouteMapOutput() TcpRouteMapOutput
	ToTcpRouteMapOutputWithContext(context.Context) TcpRouteMapOutput
}

TcpRouteMapInput is an input type that accepts TcpRouteMap and TcpRouteMapOutput values. You can construct a concrete instance of `TcpRouteMapInput` via:

TcpRouteMap{ "key": TcpRouteArgs{...} }

type TcpRouteMapOutput

type TcpRouteMapOutput struct{ *pulumi.OutputState }

func (TcpRouteMapOutput) ElementType

func (TcpRouteMapOutput) ElementType() reflect.Type

func (TcpRouteMapOutput) MapIndex

func (TcpRouteMapOutput) ToTcpRouteMapOutput

func (o TcpRouteMapOutput) ToTcpRouteMapOutput() TcpRouteMapOutput

func (TcpRouteMapOutput) ToTcpRouteMapOutputWithContext

func (o TcpRouteMapOutput) ToTcpRouteMapOutputWithContext(ctx context.Context) TcpRouteMapOutput

type TcpRouteOutput

type TcpRouteOutput struct{ *pulumi.OutputState }

func (TcpRouteOutput) Action

Action triggered when all rules match

func (TcpRouteOutput) DisplayName

func (o TcpRouteOutput) DisplayName() pulumi.StringPtrOutput

Human readable name for your route, this field is for you

func (TcpRouteOutput) ElementType

func (TcpRouteOutput) ElementType() reflect.Type

func (TcpRouteOutput) FrontendId

func (o TcpRouteOutput) FrontendId() pulumi.IntOutput

Route traffic for this frontend

func (TcpRouteOutput) Rules

List of rules to match to trigger action

func (TcpRouteOutput) ServiceName

func (o TcpRouteOutput) ServiceName() pulumi.StringOutput

The internal name of your IP load balancing

func (TcpRouteOutput) Status

func (o TcpRouteOutput) Status() pulumi.StringOutput

Route status. Routes in "ok" state are ready to operate

func (TcpRouteOutput) ToTcpRouteOutput

func (o TcpRouteOutput) ToTcpRouteOutput() TcpRouteOutput

func (TcpRouteOutput) ToTcpRouteOutputWithContext

func (o TcpRouteOutput) ToTcpRouteOutputWithContext(ctx context.Context) TcpRouteOutput

func (TcpRouteOutput) Weight

func (o TcpRouteOutput) Weight() pulumi.IntOutput

Route priority ([0..255]). 0 if null. Highest priority routes are evaluated first. Only the first matching route will trigger an action

type TcpRouteRule

type TcpRouteRule struct {
	pulumi.CustomResourceState

	// Human readable name for your rule, this field is for you
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// Name of the field to match like "protocol" or "host". See "/ipLoadbalancing/{serviceName}/availableRouteRules" for a list of available rules
	Field pulumi.StringOutput `pulumi:"field"`
	// Matching operator. Not all operators are available for all fields. See "/ipLoadbalancing/{serviceName}/availableRouteRules"
	Match pulumi.StringOutput `pulumi:"match"`
	// Invert the matching operator effect
	Negate pulumi.BoolOutput `pulumi:"negate"`
	// Value to match against this match. Interpretation if this field depends on the match and field
	Pattern pulumi.StringPtrOutput `pulumi:"pattern"`
	// The route to apply this rule
	RouteId pulumi.StringOutput `pulumi:"routeId"`
	// The internal name of your IP load balancing
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
	// Name of sub-field, if applicable. This may be a Cookie or Header name for instance
	SubField pulumi.StringPtrOutput `pulumi:"subField"`
}

Manage rules for TCP route.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		reject, err := IpLoadBalancing.NewTcpRoute(ctx, "reject", &IpLoadBalancing.TcpRouteArgs{
			ServiceName: pulumi.String("loadbalancer-xxxxxxxxxxxxxxxxxx"),
			Weight:      pulumi.Int(1),
			FrontendId:  pulumi.Int(11111),
			Action: &iploadbalancing.TcpRouteActionArgs{
				Type: pulumi.String("reject"),
			},
		})
		if err != nil {
			return err
		}
		_, err = IpLoadBalancing.NewTcpRouteRule(ctx, "examplerule", &IpLoadBalancing.TcpRouteRuleArgs{
			ServiceName: pulumi.String("loadbalancer-xxxxxxxxxxxxxxxxxx"),
			RouteId:     reject.ID(),
			DisplayName: pulumi.String("Match example.com host"),
			Field:       pulumi.String("sni"),
			Match:       pulumi.String("is"),
			Negate:      pulumi.Bool(false),
			Pattern:     pulumi.String("example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

TCP route rule can be imported using the following format `serviceName`, the `id` of the route and the `id` of the rule separated by "/" e.g.

func GetTcpRouteRule

func GetTcpRouteRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TcpRouteRuleState, opts ...pulumi.ResourceOption) (*TcpRouteRule, error)

GetTcpRouteRule gets an existing TcpRouteRule resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTcpRouteRule

func NewTcpRouteRule(ctx *pulumi.Context,
	name string, args *TcpRouteRuleArgs, opts ...pulumi.ResourceOption) (*TcpRouteRule, error)

NewTcpRouteRule registers a new resource with the given unique name, arguments, and options.

func (*TcpRouteRule) ElementType

func (*TcpRouteRule) ElementType() reflect.Type

func (*TcpRouteRule) ToTcpRouteRuleOutput

func (i *TcpRouteRule) ToTcpRouteRuleOutput() TcpRouteRuleOutput

func (*TcpRouteRule) ToTcpRouteRuleOutputWithContext

func (i *TcpRouteRule) ToTcpRouteRuleOutputWithContext(ctx context.Context) TcpRouteRuleOutput

type TcpRouteRuleArgs

type TcpRouteRuleArgs struct {
	// Human readable name for your rule, this field is for you
	DisplayName pulumi.StringPtrInput
	// Name of the field to match like "protocol" or "host". See "/ipLoadbalancing/{serviceName}/availableRouteRules" for a list of available rules
	Field pulumi.StringInput
	// Matching operator. Not all operators are available for all fields. See "/ipLoadbalancing/{serviceName}/availableRouteRules"
	Match pulumi.StringInput
	// Invert the matching operator effect
	Negate pulumi.BoolPtrInput
	// Value to match against this match. Interpretation if this field depends on the match and field
	Pattern pulumi.StringPtrInput
	// The route to apply this rule
	RouteId pulumi.StringInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringInput
	// Name of sub-field, if applicable. This may be a Cookie or Header name for instance
	SubField pulumi.StringPtrInput
}

The set of arguments for constructing a TcpRouteRule resource.

func (TcpRouteRuleArgs) ElementType

func (TcpRouteRuleArgs) ElementType() reflect.Type

type TcpRouteRuleArray

type TcpRouteRuleArray []TcpRouteRuleInput

func (TcpRouteRuleArray) ElementType

func (TcpRouteRuleArray) ElementType() reflect.Type

func (TcpRouteRuleArray) ToTcpRouteRuleArrayOutput

func (i TcpRouteRuleArray) ToTcpRouteRuleArrayOutput() TcpRouteRuleArrayOutput

func (TcpRouteRuleArray) ToTcpRouteRuleArrayOutputWithContext

func (i TcpRouteRuleArray) ToTcpRouteRuleArrayOutputWithContext(ctx context.Context) TcpRouteRuleArrayOutput

type TcpRouteRuleArrayInput

type TcpRouteRuleArrayInput interface {
	pulumi.Input

	ToTcpRouteRuleArrayOutput() TcpRouteRuleArrayOutput
	ToTcpRouteRuleArrayOutputWithContext(context.Context) TcpRouteRuleArrayOutput
}

TcpRouteRuleArrayInput is an input type that accepts TcpRouteRuleArray and TcpRouteRuleArrayOutput values. You can construct a concrete instance of `TcpRouteRuleArrayInput` via:

TcpRouteRuleArray{ TcpRouteRuleArgs{...} }

type TcpRouteRuleArrayOutput

type TcpRouteRuleArrayOutput struct{ *pulumi.OutputState }

func (TcpRouteRuleArrayOutput) ElementType

func (TcpRouteRuleArrayOutput) ElementType() reflect.Type

func (TcpRouteRuleArrayOutput) Index

func (TcpRouteRuleArrayOutput) ToTcpRouteRuleArrayOutput

func (o TcpRouteRuleArrayOutput) ToTcpRouteRuleArrayOutput() TcpRouteRuleArrayOutput

func (TcpRouteRuleArrayOutput) ToTcpRouteRuleArrayOutputWithContext

func (o TcpRouteRuleArrayOutput) ToTcpRouteRuleArrayOutputWithContext(ctx context.Context) TcpRouteRuleArrayOutput

type TcpRouteRuleInput

type TcpRouteRuleInput interface {
	pulumi.Input

	ToTcpRouteRuleOutput() TcpRouteRuleOutput
	ToTcpRouteRuleOutputWithContext(ctx context.Context) TcpRouteRuleOutput
}

type TcpRouteRuleMap

type TcpRouteRuleMap map[string]TcpRouteRuleInput

func (TcpRouteRuleMap) ElementType

func (TcpRouteRuleMap) ElementType() reflect.Type

func (TcpRouteRuleMap) ToTcpRouteRuleMapOutput

func (i TcpRouteRuleMap) ToTcpRouteRuleMapOutput() TcpRouteRuleMapOutput

func (TcpRouteRuleMap) ToTcpRouteRuleMapOutputWithContext

func (i TcpRouteRuleMap) ToTcpRouteRuleMapOutputWithContext(ctx context.Context) TcpRouteRuleMapOutput

type TcpRouteRuleMapInput

type TcpRouteRuleMapInput interface {
	pulumi.Input

	ToTcpRouteRuleMapOutput() TcpRouteRuleMapOutput
	ToTcpRouteRuleMapOutputWithContext(context.Context) TcpRouteRuleMapOutput
}

TcpRouteRuleMapInput is an input type that accepts TcpRouteRuleMap and TcpRouteRuleMapOutput values. You can construct a concrete instance of `TcpRouteRuleMapInput` via:

TcpRouteRuleMap{ "key": TcpRouteRuleArgs{...} }

type TcpRouteRuleMapOutput

type TcpRouteRuleMapOutput struct{ *pulumi.OutputState }

func (TcpRouteRuleMapOutput) ElementType

func (TcpRouteRuleMapOutput) ElementType() reflect.Type

func (TcpRouteRuleMapOutput) MapIndex

func (TcpRouteRuleMapOutput) ToTcpRouteRuleMapOutput

func (o TcpRouteRuleMapOutput) ToTcpRouteRuleMapOutput() TcpRouteRuleMapOutput

func (TcpRouteRuleMapOutput) ToTcpRouteRuleMapOutputWithContext

func (o TcpRouteRuleMapOutput) ToTcpRouteRuleMapOutputWithContext(ctx context.Context) TcpRouteRuleMapOutput

type TcpRouteRuleOutput

type TcpRouteRuleOutput struct{ *pulumi.OutputState }

func (TcpRouteRuleOutput) DisplayName

func (o TcpRouteRuleOutput) DisplayName() pulumi.StringPtrOutput

Human readable name for your rule, this field is for you

func (TcpRouteRuleOutput) ElementType

func (TcpRouteRuleOutput) ElementType() reflect.Type

func (TcpRouteRuleOutput) Field

Name of the field to match like "protocol" or "host". See "/ipLoadbalancing/{serviceName}/availableRouteRules" for a list of available rules

func (TcpRouteRuleOutput) Match

Matching operator. Not all operators are available for all fields. See "/ipLoadbalancing/{serviceName}/availableRouteRules"

func (TcpRouteRuleOutput) Negate

Invert the matching operator effect

func (TcpRouteRuleOutput) Pattern

Value to match against this match. Interpretation if this field depends on the match and field

func (TcpRouteRuleOutput) RouteId

The route to apply this rule

func (TcpRouteRuleOutput) ServiceName

func (o TcpRouteRuleOutput) ServiceName() pulumi.StringOutput

The internal name of your IP load balancing

func (TcpRouteRuleOutput) SubField

Name of sub-field, if applicable. This may be a Cookie or Header name for instance

func (TcpRouteRuleOutput) ToTcpRouteRuleOutput

func (o TcpRouteRuleOutput) ToTcpRouteRuleOutput() TcpRouteRuleOutput

func (TcpRouteRuleOutput) ToTcpRouteRuleOutputWithContext

func (o TcpRouteRuleOutput) ToTcpRouteRuleOutputWithContext(ctx context.Context) TcpRouteRuleOutput

type TcpRouteRuleState

type TcpRouteRuleState struct {
	// Human readable name for your rule, this field is for you
	DisplayName pulumi.StringPtrInput
	// Name of the field to match like "protocol" or "host". See "/ipLoadbalancing/{serviceName}/availableRouteRules" for a list of available rules
	Field pulumi.StringPtrInput
	// Matching operator. Not all operators are available for all fields. See "/ipLoadbalancing/{serviceName}/availableRouteRules"
	Match pulumi.StringPtrInput
	// Invert the matching operator effect
	Negate pulumi.BoolPtrInput
	// Value to match against this match. Interpretation if this field depends on the match and field
	Pattern pulumi.StringPtrInput
	// The route to apply this rule
	RouteId pulumi.StringPtrInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringPtrInput
	// Name of sub-field, if applicable. This may be a Cookie or Header name for instance
	SubField pulumi.StringPtrInput
}

func (TcpRouteRuleState) ElementType

func (TcpRouteRuleState) ElementType() reflect.Type

type TcpRouteRuleType

type TcpRouteRuleType struct {
	// Name of the field to match like "protocol" or "host" "/ipLoadbalancing/{serviceName}/route/availableRules" for a list of available rules
	Field *string `pulumi:"field"`
	// Matching operator. Not all operators are available for all fields. See "availableRules"
	Match *string `pulumi:"match"`
	// Invert the matching operator effect
	Negate *bool `pulumi:"negate"`
	// Value to match against this match. Interpretation if this field depends on the match and field
	Pattern *string `pulumi:"pattern"`
	// Id of your rule
	RuleId *int `pulumi:"ruleId"`
	// Name of sub-field, if applicable. This may be a Cookie or Header name for instance
	SubField *string `pulumi:"subField"`
}

type TcpRouteRuleTypeArgs

type TcpRouteRuleTypeArgs struct {
	// Name of the field to match like "protocol" or "host" "/ipLoadbalancing/{serviceName}/route/availableRules" for a list of available rules
	Field pulumi.StringPtrInput `pulumi:"field"`
	// Matching operator. Not all operators are available for all fields. See "availableRules"
	Match pulumi.StringPtrInput `pulumi:"match"`
	// Invert the matching operator effect
	Negate pulumi.BoolPtrInput `pulumi:"negate"`
	// Value to match against this match. Interpretation if this field depends on the match and field
	Pattern pulumi.StringPtrInput `pulumi:"pattern"`
	// Id of your rule
	RuleId pulumi.IntPtrInput `pulumi:"ruleId"`
	// Name of sub-field, if applicable. This may be a Cookie or Header name for instance
	SubField pulumi.StringPtrInput `pulumi:"subField"`
}

func (TcpRouteRuleTypeArgs) ElementType

func (TcpRouteRuleTypeArgs) ElementType() reflect.Type

func (TcpRouteRuleTypeArgs) ToTcpRouteRuleTypeOutput

func (i TcpRouteRuleTypeArgs) ToTcpRouteRuleTypeOutput() TcpRouteRuleTypeOutput

func (TcpRouteRuleTypeArgs) ToTcpRouteRuleTypeOutputWithContext

func (i TcpRouteRuleTypeArgs) ToTcpRouteRuleTypeOutputWithContext(ctx context.Context) TcpRouteRuleTypeOutput

type TcpRouteRuleTypeArray

type TcpRouteRuleTypeArray []TcpRouteRuleTypeInput

func (TcpRouteRuleTypeArray) ElementType

func (TcpRouteRuleTypeArray) ElementType() reflect.Type

func (TcpRouteRuleTypeArray) ToTcpRouteRuleTypeArrayOutput

func (i TcpRouteRuleTypeArray) ToTcpRouteRuleTypeArrayOutput() TcpRouteRuleTypeArrayOutput

func (TcpRouteRuleTypeArray) ToTcpRouteRuleTypeArrayOutputWithContext

func (i TcpRouteRuleTypeArray) ToTcpRouteRuleTypeArrayOutputWithContext(ctx context.Context) TcpRouteRuleTypeArrayOutput

type TcpRouteRuleTypeArrayInput

type TcpRouteRuleTypeArrayInput interface {
	pulumi.Input

	ToTcpRouteRuleTypeArrayOutput() TcpRouteRuleTypeArrayOutput
	ToTcpRouteRuleTypeArrayOutputWithContext(context.Context) TcpRouteRuleTypeArrayOutput
}

TcpRouteRuleTypeArrayInput is an input type that accepts TcpRouteRuleTypeArray and TcpRouteRuleTypeArrayOutput values. You can construct a concrete instance of `TcpRouteRuleTypeArrayInput` via:

TcpRouteRuleTypeArray{ TcpRouteRuleTypeArgs{...} }

type TcpRouteRuleTypeArrayOutput

type TcpRouteRuleTypeArrayOutput struct{ *pulumi.OutputState }

func (TcpRouteRuleTypeArrayOutput) ElementType

func (TcpRouteRuleTypeArrayOutput) Index

func (TcpRouteRuleTypeArrayOutput) ToTcpRouteRuleTypeArrayOutput

func (o TcpRouteRuleTypeArrayOutput) ToTcpRouteRuleTypeArrayOutput() TcpRouteRuleTypeArrayOutput

func (TcpRouteRuleTypeArrayOutput) ToTcpRouteRuleTypeArrayOutputWithContext

func (o TcpRouteRuleTypeArrayOutput) ToTcpRouteRuleTypeArrayOutputWithContext(ctx context.Context) TcpRouteRuleTypeArrayOutput

type TcpRouteRuleTypeInput

type TcpRouteRuleTypeInput interface {
	pulumi.Input

	ToTcpRouteRuleTypeOutput() TcpRouteRuleTypeOutput
	ToTcpRouteRuleTypeOutputWithContext(context.Context) TcpRouteRuleTypeOutput
}

TcpRouteRuleTypeInput is an input type that accepts TcpRouteRuleTypeArgs and TcpRouteRuleTypeOutput values. You can construct a concrete instance of `TcpRouteRuleTypeInput` via:

TcpRouteRuleTypeArgs{...}

type TcpRouteRuleTypeOutput

type TcpRouteRuleTypeOutput struct{ *pulumi.OutputState }

func (TcpRouteRuleTypeOutput) ElementType

func (TcpRouteRuleTypeOutput) ElementType() reflect.Type

func (TcpRouteRuleTypeOutput) Field

Name of the field to match like "protocol" or "host" "/ipLoadbalancing/{serviceName}/route/availableRules" for a list of available rules

func (TcpRouteRuleTypeOutput) Match

Matching operator. Not all operators are available for all fields. See "availableRules"

func (TcpRouteRuleTypeOutput) Negate

Invert the matching operator effect

func (TcpRouteRuleTypeOutput) Pattern

Value to match against this match. Interpretation if this field depends on the match and field

func (TcpRouteRuleTypeOutput) RuleId

Id of your rule

func (TcpRouteRuleTypeOutput) SubField

Name of sub-field, if applicable. This may be a Cookie or Header name for instance

func (TcpRouteRuleTypeOutput) ToTcpRouteRuleTypeOutput

func (o TcpRouteRuleTypeOutput) ToTcpRouteRuleTypeOutput() TcpRouteRuleTypeOutput

func (TcpRouteRuleTypeOutput) ToTcpRouteRuleTypeOutputWithContext

func (o TcpRouteRuleTypeOutput) ToTcpRouteRuleTypeOutputWithContext(ctx context.Context) TcpRouteRuleTypeOutput

type TcpRouteState

type TcpRouteState struct {
	// Action triggered when all rules match
	Action TcpRouteActionPtrInput
	// Human readable name for your route, this field is for you
	DisplayName pulumi.StringPtrInput
	// Route traffic for this frontend
	FrontendId pulumi.IntPtrInput
	// List of rules to match to trigger action
	Rules TcpRouteRuleTypeArrayInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringPtrInput
	// Route status. Routes in "ok" state are ready to operate
	Status pulumi.StringPtrInput
	// Route priority ([0..255]). 0 if null. Highest priority routes are evaluated first. Only the first matching route will trigger an action
	Weight pulumi.IntPtrInput
}

func (TcpRouteState) ElementType

func (TcpRouteState) ElementType() reflect.Type

type UdpFrontend added in v0.42.0

type UdpFrontend struct {
	pulumi.CustomResourceState

	// Only attach frontend on these ip. No restriction if null. List of Ip blocks.
	DedicatedIpfos pulumi.StringArrayOutput `pulumi:"dedicatedIpfos"`
	// Default UDP Farm of your frontend
	DefaultFarmId pulumi.Float64Output `pulumi:"defaultFarmId"`
	// Disable your frontend. Default: 'false'
	Disabled pulumi.BoolOutput `pulumi:"disabled"`
	// Human readable name for your frontend
	DisplayName pulumi.StringOutput `pulumi:"displayName"`
	// Id of your frontend
	FrontendId pulumi.Float64Output `pulumi:"frontendId"`
	// Port(s) attached to your frontend. Supports single port (numerical value),
	// range (2 dash-delimited increasing ports) and comma-separated list of 'single port'
	// and/or 'range'. Each port must be in the [1;49151] range
	Port pulumi.StringOutput `pulumi:"port"`
	// The internal name of your IP load balancing
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
	// Zone where the frontend will be defined (ie. `gra`, `bhs` also supports `all`)
	Zone pulumi.StringOutput `pulumi:"zone"`
}

Creates a backend server group (frontend) to be used by loadbalancing frontend(s)

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/ovh/pulumi-ovh/sdk/go/ovh/IpLoadBalancing"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		lb, err := IpLoadBalancing.GetIpLoadBalancing(ctx, &iploadbalancing.GetIpLoadBalancingArgs{
			ServiceName: pulumi.StringRef("ip-1.2.3.4"),
			State:       pulumi.StringRef("ok"),
		}, nil)
		if err != nil {
			return err
		}
		_, err = IpLoadBalancing.NewUdpFrontend(ctx, "testfrontend", &IpLoadBalancing.UdpFrontendArgs{
			ServiceName: pulumi.String(lb.ServiceName),
			DisplayName: pulumi.String("ingress-8080-gra"),
			Zone:        pulumi.String("all"),
			Port:        pulumi.String("10,11"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

func GetUdpFrontend added in v0.42.0

func GetUdpFrontend(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *UdpFrontendState, opts ...pulumi.ResourceOption) (*UdpFrontend, error)

GetUdpFrontend gets an existing UdpFrontend resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewUdpFrontend added in v0.42.0

func NewUdpFrontend(ctx *pulumi.Context,
	name string, args *UdpFrontendArgs, opts ...pulumi.ResourceOption) (*UdpFrontend, error)

NewUdpFrontend registers a new resource with the given unique name, arguments, and options.

func (*UdpFrontend) ElementType added in v0.42.0

func (*UdpFrontend) ElementType() reflect.Type

func (*UdpFrontend) ToUdpFrontendOutput added in v0.42.0

func (i *UdpFrontend) ToUdpFrontendOutput() UdpFrontendOutput

func (*UdpFrontend) ToUdpFrontendOutputWithContext added in v0.42.0

func (i *UdpFrontend) ToUdpFrontendOutputWithContext(ctx context.Context) UdpFrontendOutput

type UdpFrontendArgs added in v0.42.0

type UdpFrontendArgs struct {
	// Only attach frontend on these ip. No restriction if null. List of Ip blocks.
	DedicatedIpfos pulumi.StringArrayInput
	// Default UDP Farm of your frontend
	DefaultFarmId pulumi.Float64PtrInput
	// Disable your frontend. Default: 'false'
	Disabled pulumi.BoolPtrInput
	// Human readable name for your frontend
	DisplayName pulumi.StringPtrInput
	// Port(s) attached to your frontend. Supports single port (numerical value),
	// range (2 dash-delimited increasing ports) and comma-separated list of 'single port'
	// and/or 'range'. Each port must be in the [1;49151] range
	Port pulumi.StringInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringInput
	// Zone where the frontend will be defined (ie. `gra`, `bhs` also supports `all`)
	Zone pulumi.StringInput
}

The set of arguments for constructing a UdpFrontend resource.

func (UdpFrontendArgs) ElementType added in v0.42.0

func (UdpFrontendArgs) ElementType() reflect.Type

type UdpFrontendArray added in v0.42.0

type UdpFrontendArray []UdpFrontendInput

func (UdpFrontendArray) ElementType added in v0.42.0

func (UdpFrontendArray) ElementType() reflect.Type

func (UdpFrontendArray) ToUdpFrontendArrayOutput added in v0.42.0

func (i UdpFrontendArray) ToUdpFrontendArrayOutput() UdpFrontendArrayOutput

func (UdpFrontendArray) ToUdpFrontendArrayOutputWithContext added in v0.42.0

func (i UdpFrontendArray) ToUdpFrontendArrayOutputWithContext(ctx context.Context) UdpFrontendArrayOutput

type UdpFrontendArrayInput added in v0.42.0

type UdpFrontendArrayInput interface {
	pulumi.Input

	ToUdpFrontendArrayOutput() UdpFrontendArrayOutput
	ToUdpFrontendArrayOutputWithContext(context.Context) UdpFrontendArrayOutput
}

UdpFrontendArrayInput is an input type that accepts UdpFrontendArray and UdpFrontendArrayOutput values. You can construct a concrete instance of `UdpFrontendArrayInput` via:

UdpFrontendArray{ UdpFrontendArgs{...} }

type UdpFrontendArrayOutput added in v0.42.0

type UdpFrontendArrayOutput struct{ *pulumi.OutputState }

func (UdpFrontendArrayOutput) ElementType added in v0.42.0

func (UdpFrontendArrayOutput) ElementType() reflect.Type

func (UdpFrontendArrayOutput) Index added in v0.42.0

func (UdpFrontendArrayOutput) ToUdpFrontendArrayOutput added in v0.42.0

func (o UdpFrontendArrayOutput) ToUdpFrontendArrayOutput() UdpFrontendArrayOutput

func (UdpFrontendArrayOutput) ToUdpFrontendArrayOutputWithContext added in v0.42.0

func (o UdpFrontendArrayOutput) ToUdpFrontendArrayOutputWithContext(ctx context.Context) UdpFrontendArrayOutput

type UdpFrontendInput added in v0.42.0

type UdpFrontendInput interface {
	pulumi.Input

	ToUdpFrontendOutput() UdpFrontendOutput
	ToUdpFrontendOutputWithContext(ctx context.Context) UdpFrontendOutput
}

type UdpFrontendMap added in v0.42.0

type UdpFrontendMap map[string]UdpFrontendInput

func (UdpFrontendMap) ElementType added in v0.42.0

func (UdpFrontendMap) ElementType() reflect.Type

func (UdpFrontendMap) ToUdpFrontendMapOutput added in v0.42.0

func (i UdpFrontendMap) ToUdpFrontendMapOutput() UdpFrontendMapOutput

func (UdpFrontendMap) ToUdpFrontendMapOutputWithContext added in v0.42.0

func (i UdpFrontendMap) ToUdpFrontendMapOutputWithContext(ctx context.Context) UdpFrontendMapOutput

type UdpFrontendMapInput added in v0.42.0

type UdpFrontendMapInput interface {
	pulumi.Input

	ToUdpFrontendMapOutput() UdpFrontendMapOutput
	ToUdpFrontendMapOutputWithContext(context.Context) UdpFrontendMapOutput
}

UdpFrontendMapInput is an input type that accepts UdpFrontendMap and UdpFrontendMapOutput values. You can construct a concrete instance of `UdpFrontendMapInput` via:

UdpFrontendMap{ "key": UdpFrontendArgs{...} }

type UdpFrontendMapOutput added in v0.42.0

type UdpFrontendMapOutput struct{ *pulumi.OutputState }

func (UdpFrontendMapOutput) ElementType added in v0.42.0

func (UdpFrontendMapOutput) ElementType() reflect.Type

func (UdpFrontendMapOutput) MapIndex added in v0.42.0

func (UdpFrontendMapOutput) ToUdpFrontendMapOutput added in v0.42.0

func (o UdpFrontendMapOutput) ToUdpFrontendMapOutput() UdpFrontendMapOutput

func (UdpFrontendMapOutput) ToUdpFrontendMapOutputWithContext added in v0.42.0

func (o UdpFrontendMapOutput) ToUdpFrontendMapOutputWithContext(ctx context.Context) UdpFrontendMapOutput

type UdpFrontendOutput added in v0.42.0

type UdpFrontendOutput struct{ *pulumi.OutputState }

func (UdpFrontendOutput) DedicatedIpfos added in v0.42.0

func (o UdpFrontendOutput) DedicatedIpfos() pulumi.StringArrayOutput

Only attach frontend on these ip. No restriction if null. List of Ip blocks.

func (UdpFrontendOutput) DefaultFarmId added in v0.42.0

func (o UdpFrontendOutput) DefaultFarmId() pulumi.Float64Output

Default UDP Farm of your frontend

func (UdpFrontendOutput) Disabled added in v0.42.0

func (o UdpFrontendOutput) Disabled() pulumi.BoolOutput

Disable your frontend. Default: 'false'

func (UdpFrontendOutput) DisplayName added in v0.42.0

func (o UdpFrontendOutput) DisplayName() pulumi.StringOutput

Human readable name for your frontend

func (UdpFrontendOutput) ElementType added in v0.42.0

func (UdpFrontendOutput) ElementType() reflect.Type

func (UdpFrontendOutput) FrontendId added in v0.42.0

func (o UdpFrontendOutput) FrontendId() pulumi.Float64Output

Id of your frontend

func (UdpFrontendOutput) Port added in v0.42.0

Port(s) attached to your frontend. Supports single port (numerical value), range (2 dash-delimited increasing ports) and comma-separated list of 'single port' and/or 'range'. Each port must be in the [1;49151] range

func (UdpFrontendOutput) ServiceName added in v0.42.0

func (o UdpFrontendOutput) ServiceName() pulumi.StringOutput

The internal name of your IP load balancing

func (UdpFrontendOutput) ToUdpFrontendOutput added in v0.42.0

func (o UdpFrontendOutput) ToUdpFrontendOutput() UdpFrontendOutput

func (UdpFrontendOutput) ToUdpFrontendOutputWithContext added in v0.42.0

func (o UdpFrontendOutput) ToUdpFrontendOutputWithContext(ctx context.Context) UdpFrontendOutput

func (UdpFrontendOutput) Zone added in v0.42.0

Zone where the frontend will be defined (ie. `gra`, `bhs` also supports `all`)

type UdpFrontendState added in v0.42.0

type UdpFrontendState struct {
	// Only attach frontend on these ip. No restriction if null. List of Ip blocks.
	DedicatedIpfos pulumi.StringArrayInput
	// Default UDP Farm of your frontend
	DefaultFarmId pulumi.Float64PtrInput
	// Disable your frontend. Default: 'false'
	Disabled pulumi.BoolPtrInput
	// Human readable name for your frontend
	DisplayName pulumi.StringPtrInput
	// Id of your frontend
	FrontendId pulumi.Float64PtrInput
	// Port(s) attached to your frontend. Supports single port (numerical value),
	// range (2 dash-delimited increasing ports) and comma-separated list of 'single port'
	// and/or 'range'. Each port must be in the [1;49151] range
	Port pulumi.StringPtrInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringPtrInput
	// Zone where the frontend will be defined (ie. `gra`, `bhs` also supports `all`)
	Zone pulumi.StringPtrInput
}

func (UdpFrontendState) ElementType added in v0.42.0

func (UdpFrontendState) ElementType() reflect.Type

type VrackNetwork

type VrackNetwork struct {
	pulumi.CustomResourceState

	// Human readable name for your vrack network
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// This attribute is there for documentation purpose only and isnt passed to the OVHcloud API as it may conflicts with http/tcp farms `vrackNetworkId` attribute
	FarmIds pulumi.IntArrayOutput `pulumi:"farmIds"`
	// An IP block used as a pool of IPs by this Load Balancer to connect to the servers in this private network. The blck must be in the private network and reserved for the Load Balancer
	NatIp pulumi.StringOutput `pulumi:"natIp"`
	// The internal name of your IP load balancing
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
	// IP block of the private network in the vRack
	Subnet pulumi.StringOutput `pulumi:"subnet"`
	// VLAN of the private network in the vRack. 0 if the private network is not in a VLAN
	Vlan pulumi.IntOutput `pulumi:"vlan"`
	// (Required) Internal Load Balancer identifier of the vRack private network
	VrackNetworkId pulumi.IntOutput `pulumi:"vrackNetworkId"`
}

Manage a vrack network for your IP Loadbalancing service.

func GetVrackNetwork

func GetVrackNetwork(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VrackNetworkState, opts ...pulumi.ResourceOption) (*VrackNetwork, error)

GetVrackNetwork gets an existing VrackNetwork resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVrackNetwork

func NewVrackNetwork(ctx *pulumi.Context,
	name string, args *VrackNetworkArgs, opts ...pulumi.ResourceOption) (*VrackNetwork, error)

NewVrackNetwork registers a new resource with the given unique name, arguments, and options.

func (*VrackNetwork) ElementType

func (*VrackNetwork) ElementType() reflect.Type

func (*VrackNetwork) ToVrackNetworkOutput

func (i *VrackNetwork) ToVrackNetworkOutput() VrackNetworkOutput

func (*VrackNetwork) ToVrackNetworkOutputWithContext

func (i *VrackNetwork) ToVrackNetworkOutputWithContext(ctx context.Context) VrackNetworkOutput

type VrackNetworkArgs

type VrackNetworkArgs struct {
	// Human readable name for your vrack network
	DisplayName pulumi.StringPtrInput
	// This attribute is there for documentation purpose only and isnt passed to the OVHcloud API as it may conflicts with http/tcp farms `vrackNetworkId` attribute
	FarmIds pulumi.IntArrayInput
	// An IP block used as a pool of IPs by this Load Balancer to connect to the servers in this private network. The blck must be in the private network and reserved for the Load Balancer
	NatIp pulumi.StringInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringInput
	// IP block of the private network in the vRack
	Subnet pulumi.StringInput
	// VLAN of the private network in the vRack. 0 if the private network is not in a VLAN
	Vlan pulumi.IntPtrInput
}

The set of arguments for constructing a VrackNetwork resource.

func (VrackNetworkArgs) ElementType

func (VrackNetworkArgs) ElementType() reflect.Type

type VrackNetworkArray

type VrackNetworkArray []VrackNetworkInput

func (VrackNetworkArray) ElementType

func (VrackNetworkArray) ElementType() reflect.Type

func (VrackNetworkArray) ToVrackNetworkArrayOutput

func (i VrackNetworkArray) ToVrackNetworkArrayOutput() VrackNetworkArrayOutput

func (VrackNetworkArray) ToVrackNetworkArrayOutputWithContext

func (i VrackNetworkArray) ToVrackNetworkArrayOutputWithContext(ctx context.Context) VrackNetworkArrayOutput

type VrackNetworkArrayInput

type VrackNetworkArrayInput interface {
	pulumi.Input

	ToVrackNetworkArrayOutput() VrackNetworkArrayOutput
	ToVrackNetworkArrayOutputWithContext(context.Context) VrackNetworkArrayOutput
}

VrackNetworkArrayInput is an input type that accepts VrackNetworkArray and VrackNetworkArrayOutput values. You can construct a concrete instance of `VrackNetworkArrayInput` via:

VrackNetworkArray{ VrackNetworkArgs{...} }

type VrackNetworkArrayOutput

type VrackNetworkArrayOutput struct{ *pulumi.OutputState }

func (VrackNetworkArrayOutput) ElementType

func (VrackNetworkArrayOutput) ElementType() reflect.Type

func (VrackNetworkArrayOutput) Index

func (VrackNetworkArrayOutput) ToVrackNetworkArrayOutput

func (o VrackNetworkArrayOutput) ToVrackNetworkArrayOutput() VrackNetworkArrayOutput

func (VrackNetworkArrayOutput) ToVrackNetworkArrayOutputWithContext

func (o VrackNetworkArrayOutput) ToVrackNetworkArrayOutputWithContext(ctx context.Context) VrackNetworkArrayOutput

type VrackNetworkInput

type VrackNetworkInput interface {
	pulumi.Input

	ToVrackNetworkOutput() VrackNetworkOutput
	ToVrackNetworkOutputWithContext(ctx context.Context) VrackNetworkOutput
}

type VrackNetworkMap

type VrackNetworkMap map[string]VrackNetworkInput

func (VrackNetworkMap) ElementType

func (VrackNetworkMap) ElementType() reflect.Type

func (VrackNetworkMap) ToVrackNetworkMapOutput

func (i VrackNetworkMap) ToVrackNetworkMapOutput() VrackNetworkMapOutput

func (VrackNetworkMap) ToVrackNetworkMapOutputWithContext

func (i VrackNetworkMap) ToVrackNetworkMapOutputWithContext(ctx context.Context) VrackNetworkMapOutput

type VrackNetworkMapInput

type VrackNetworkMapInput interface {
	pulumi.Input

	ToVrackNetworkMapOutput() VrackNetworkMapOutput
	ToVrackNetworkMapOutputWithContext(context.Context) VrackNetworkMapOutput
}

VrackNetworkMapInput is an input type that accepts VrackNetworkMap and VrackNetworkMapOutput values. You can construct a concrete instance of `VrackNetworkMapInput` via:

VrackNetworkMap{ "key": VrackNetworkArgs{...} }

type VrackNetworkMapOutput

type VrackNetworkMapOutput struct{ *pulumi.OutputState }

func (VrackNetworkMapOutput) ElementType

func (VrackNetworkMapOutput) ElementType() reflect.Type

func (VrackNetworkMapOutput) MapIndex

func (VrackNetworkMapOutput) ToVrackNetworkMapOutput

func (o VrackNetworkMapOutput) ToVrackNetworkMapOutput() VrackNetworkMapOutput

func (VrackNetworkMapOutput) ToVrackNetworkMapOutputWithContext

func (o VrackNetworkMapOutput) ToVrackNetworkMapOutputWithContext(ctx context.Context) VrackNetworkMapOutput

type VrackNetworkOutput

type VrackNetworkOutput struct{ *pulumi.OutputState }

func (VrackNetworkOutput) DisplayName

func (o VrackNetworkOutput) DisplayName() pulumi.StringPtrOutput

Human readable name for your vrack network

func (VrackNetworkOutput) ElementType

func (VrackNetworkOutput) ElementType() reflect.Type

func (VrackNetworkOutput) FarmIds

This attribute is there for documentation purpose only and isnt passed to the OVHcloud API as it may conflicts with http/tcp farms `vrackNetworkId` attribute

func (VrackNetworkOutput) NatIp

An IP block used as a pool of IPs by this Load Balancer to connect to the servers in this private network. The blck must be in the private network and reserved for the Load Balancer

func (VrackNetworkOutput) ServiceName

func (o VrackNetworkOutput) ServiceName() pulumi.StringOutput

The internal name of your IP load balancing

func (VrackNetworkOutput) Subnet

IP block of the private network in the vRack

func (VrackNetworkOutput) ToVrackNetworkOutput

func (o VrackNetworkOutput) ToVrackNetworkOutput() VrackNetworkOutput

func (VrackNetworkOutput) ToVrackNetworkOutputWithContext

func (o VrackNetworkOutput) ToVrackNetworkOutputWithContext(ctx context.Context) VrackNetworkOutput

func (VrackNetworkOutput) Vlan

VLAN of the private network in the vRack. 0 if the private network is not in a VLAN

func (VrackNetworkOutput) VrackNetworkId

func (o VrackNetworkOutput) VrackNetworkId() pulumi.IntOutput

(Required) Internal Load Balancer identifier of the vRack private network

type VrackNetworkState

type VrackNetworkState struct {
	// Human readable name for your vrack network
	DisplayName pulumi.StringPtrInput
	// This attribute is there for documentation purpose only and isnt passed to the OVHcloud API as it may conflicts with http/tcp farms `vrackNetworkId` attribute
	FarmIds pulumi.IntArrayInput
	// An IP block used as a pool of IPs by this Load Balancer to connect to the servers in this private network. The blck must be in the private network and reserved for the Load Balancer
	NatIp pulumi.StringPtrInput
	// The internal name of your IP load balancing
	ServiceName pulumi.StringPtrInput
	// IP block of the private network in the vRack
	Subnet pulumi.StringPtrInput
	// VLAN of the private network in the vRack. 0 if the private network is not in a VLAN
	Vlan pulumi.IntPtrInput
	// (Required) Internal Load Balancer identifier of the vRack private network
	VrackNetworkId pulumi.IntPtrInput
}

func (VrackNetworkState) ElementType

func (VrackNetworkState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL