1. Packages
  2. Scaleway
  3. API Docs
  4. LoadbalancerFrontend
Scaleway v1.10.0 published on Saturday, Jul 1, 2023 by lbrlabs

scaleway.LoadbalancerFrontend

Explore with Pulumi AI

scaleway logo
Scaleway v1.10.0 published on Saturday, Jul 1, 2023 by lbrlabs

    Creates and manages Scaleway Load-Balancer Frontends. For more information, see the documentation.

    Examples Usage

    Basic

    import * as pulumi from "@pulumi/pulumi";
    import * as scaleway from "@lbrlabs/pulumi-scaleway";
    
    const frontend01 = new scaleway.LoadbalancerFrontend("frontend01", {
        lbId: scaleway_lb.lb01.id,
        backendId: scaleway_lb_backend.backend01.id,
        inboundPort: 80,
    });
    
    import pulumi
    import lbrlabs_pulumi_scaleway as scaleway
    
    frontend01 = scaleway.LoadbalancerFrontend("frontend01",
        lb_id=scaleway_lb["lb01"]["id"],
        backend_id=scaleway_lb_backend["backend01"]["id"],
        inbound_port=80)
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Scaleway = Lbrlabs.PulumiPackage.Scaleway;
    
    return await Deployment.RunAsync(() => 
    {
        var frontend01 = new Scaleway.LoadbalancerFrontend("frontend01", new()
        {
            LbId = scaleway_lb.Lb01.Id,
            BackendId = scaleway_lb_backend.Backend01.Id,
            InboundPort = 80,
        });
    
    });
    
    package main
    
    import (
    	"github.com/lbrlabs/pulumi-scaleway/sdk/go/scaleway"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := scaleway.NewLoadbalancerFrontend(ctx, "frontend01", &scaleway.LoadbalancerFrontendArgs{
    			LbId:        pulumi.Any(scaleway_lb.Lb01.Id),
    			BackendId:   pulumi.Any(scaleway_lb_backend.Backend01.Id),
    			InboundPort: pulumi.Int(80),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.scaleway.LoadbalancerFrontend;
    import com.pulumi.scaleway.LoadbalancerFrontendArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var frontend01 = new LoadbalancerFrontend("frontend01", LoadbalancerFrontendArgs.builder()        
                .lbId(scaleway_lb.lb01().id())
                .backendId(scaleway_lb_backend.backend01().id())
                .inboundPort("80")
                .build());
    
        }
    }
    
    resources:
      frontend01:
        type: scaleway:LoadbalancerFrontend
        properties:
          lbId: ${scaleway_lb.lb01.id}
          backendId: ${scaleway_lb_backend.backend01.id}
          inboundPort: '80'
    

    With ACLs

    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.scaleway.LoadbalancerFrontend;
    import com.pulumi.scaleway.LoadbalancerFrontendArgs;
    import com.pulumi.scaleway.inputs.LoadbalancerFrontendAclArgs;
    import com.pulumi.scaleway.inputs.LoadbalancerFrontendAclActionArgs;
    import com.pulumi.scaleway.inputs.LoadbalancerFrontendAclMatchArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var frontend01 = new LoadbalancerFrontend("frontend01", LoadbalancerFrontendArgs.builder()        
                .lbId(scaleway_lb.lb01().id())
                .backendId(scaleway_lb_backend.backend01().id())
                .inboundPort("80")
                .acls(            
                    LoadbalancerFrontendAclArgs.builder()
                        .name("blacklist wellknwon IPs")
                        .action(LoadbalancerFrontendAclActionArgs.builder()
                            .type("allow")
                            .build())
                        .match(LoadbalancerFrontendAclMatchArgs.builder()
                            .ipSubnets(                        
                                "192.168.0.1",
                                "192.168.0.2",
                                "192.168.10.0/24")
                            .build())
                        .build(),
                    LoadbalancerFrontendAclArgs.builder()
                        .action(LoadbalancerFrontendAclActionArgs.builder()
                            .type("deny")
                            .build())
                        .match(LoadbalancerFrontendAclMatchArgs.builder()
                            .ipSubnets("51.51.51.51")
                            .httpFilter("regex")
                            .httpFilterValues("^foo*bar$")
                            .build())
                        .build(),
                    LoadbalancerFrontendAclArgs.builder()
                        .action(LoadbalancerFrontendAclActionArgs.builder()
                            .type("allow")
                            .build())
                        .match(LoadbalancerFrontendAclMatchArgs.builder()
                            .httpFilter("path_begin")
                            .httpFilterValues(                        
                                "foo",
                                "bar")
                            .build())
                        .build(),
                    LoadbalancerFrontendAclArgs.builder()
                        .action(LoadbalancerFrontendAclActionArgs.builder()
                            .type("allow")
                            .build())
                        .match(LoadbalancerFrontendAclMatchArgs.builder()
                            .httpFilter("path_begin")
                            .httpFilterValues("hi")
                            .invert("true")
                            .build())
                        .build(),
                    LoadbalancerFrontendAclArgs.builder()
                        .action(LoadbalancerFrontendAclActionArgs.builder()
                            .type("allow")
                            .build())
                        .match(LoadbalancerFrontendAclMatchArgs.builder()
                            .httpFilter("http_header_match")
                            .httpFilterValues("foo")
                            .httpValueOption("bar")
                            .build())
                        .build(),
                    LoadbalancerFrontendAclArgs.builder()
                        .action(LoadbalancerFrontendAclActionArgs.builder()
                            .type("redirect")
                            .redirects(LoadbalancerFrontendAclActionRedirectArgs.builder()
                                .type("location")
                                .target("https://example.com")
                                .code(307)
                                .build())
                            .build())
                        .match(LoadbalancerFrontendAclMatchArgs.builder()
                            .ipSubnets("10.0.0.10")
                            .httpFilter("path_begin")
                            .httpFilterValues(                        
                                "foo",
                                "bar")
                            .build())
                        .build())
                .build());
    
        }
    }
    
    resources:
      frontend01:
        type: scaleway:LoadbalancerFrontend
        properties:
          lbId: ${scaleway_lb.lb01.id}
          backendId: ${scaleway_lb_backend.backend01.id}
          inboundPort: '80'
          # Allow downstream requests from: 192.168.0.1, 192.168.0.2 or 192.168.10.0/24
          acls:
            - name: blacklist wellknwon IPs
              action:
                type: allow
              match:
                ipSubnets:
                  - 192.168.0.1
                  - 192.168.0.2
                  - 192.168.10.0/24
            - action:
                type: deny
              match:
                ipSubnets:
                  - 51.51.51.51
                httpFilter: regex
                httpFilterValues:
                  - ^foo*bar$
            - action:
                type: allow
              match:
                httpFilter: path_begin
                httpFilterValues:
                  - foo
                  - bar
            - action:
                type: allow
              match:
                httpFilter: path_begin
                httpFilterValues:
                  - hi
                invert: 'true'
            - action:
                type: allow
              match:
                httpFilter: http_header_match
                httpFilterValues: foo
                httpValueOption: bar
            - action:
                type: redirect
                redirects:
                  - type: location
                    target: https://example.com
                    code: 307
              match:
                ipSubnets:
                  - 10.0.0.10
                httpFilter: path_begin
                httpFilterValues:
                  - foo
                  - bar
    

    Create LoadbalancerFrontend Resource

    new LoadbalancerFrontend(name: string, args: LoadbalancerFrontendArgs, opts?: CustomResourceOptions);
    @overload
    def LoadbalancerFrontend(resource_name: str,
                             opts: Optional[ResourceOptions] = None,
                             acls: Optional[Sequence[LoadbalancerFrontendAclArgs]] = None,
                             backend_id: Optional[str] = None,
                             certificate_ids: Optional[Sequence[str]] = None,
                             enable_http3: Optional[bool] = None,
                             external_acls: Optional[bool] = None,
                             inbound_port: Optional[int] = None,
                             lb_id: Optional[str] = None,
                             name: Optional[str] = None,
                             timeout_client: Optional[str] = None)
    @overload
    def LoadbalancerFrontend(resource_name: str,
                             args: LoadbalancerFrontendArgs,
                             opts: Optional[ResourceOptions] = None)
    func NewLoadbalancerFrontend(ctx *Context, name string, args LoadbalancerFrontendArgs, opts ...ResourceOption) (*LoadbalancerFrontend, error)
    public LoadbalancerFrontend(string name, LoadbalancerFrontendArgs args, CustomResourceOptions? opts = null)
    public LoadbalancerFrontend(String name, LoadbalancerFrontendArgs args)
    public LoadbalancerFrontend(String name, LoadbalancerFrontendArgs args, CustomResourceOptions options)
    
    type: scaleway:LoadbalancerFrontend
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args LoadbalancerFrontendArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args LoadbalancerFrontendArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args LoadbalancerFrontendArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args LoadbalancerFrontendArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args LoadbalancerFrontendArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    LoadbalancerFrontend Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The LoadbalancerFrontend resource accepts the following input properties:

    BackendId string

    The load-balancer backend ID this frontend is attached to.

    Important: Updates to lb_id or backend_id will recreate the frontend.

    InboundPort int

    TCP port to listen on the front side.

    LbId string

    The load-balancer ID this frontend is attached to.

    Acls List<Lbrlabs.PulumiPackage.Scaleway.Inputs.LoadbalancerFrontendAcl>

    A list of ACL rules to apply to the load-balancer frontend. Defined below.

    CertificateIds List<string>

    List of Certificate IDs that should be used by the frontend.

    Important: Certificates are not allowed on port 80.

    EnableHttp3 bool

    Activates HTTP/3 protocol.

    ExternalAcls bool

    A boolean to specify whether to use lb_acl. If external_acls is set to true, acl can not be set directly in the lb frontend.

    Name string

    The ACL name. If not provided it will be randomly generated.

    TimeoutClient string

    Maximum inactivity time on the client side. (e.g.: 1s)

    BackendId string

    The load-balancer backend ID this frontend is attached to.

    Important: Updates to lb_id or backend_id will recreate the frontend.

    InboundPort int

    TCP port to listen on the front side.

    LbId string

    The load-balancer ID this frontend is attached to.

    Acls []LoadbalancerFrontendAclArgs

    A list of ACL rules to apply to the load-balancer frontend. Defined below.

    CertificateIds []string

    List of Certificate IDs that should be used by the frontend.

    Important: Certificates are not allowed on port 80.

    EnableHttp3 bool

    Activates HTTP/3 protocol.

    ExternalAcls bool

    A boolean to specify whether to use lb_acl. If external_acls is set to true, acl can not be set directly in the lb frontend.

    Name string

    The ACL name. If not provided it will be randomly generated.

    TimeoutClient string

    Maximum inactivity time on the client side. (e.g.: 1s)

    backendId String

    The load-balancer backend ID this frontend is attached to.

    Important: Updates to lb_id or backend_id will recreate the frontend.

    inboundPort Integer

    TCP port to listen on the front side.

    lbId String

    The load-balancer ID this frontend is attached to.

    acls List<LoadbalancerFrontendAcl>

    A list of ACL rules to apply to the load-balancer frontend. Defined below.

    certificateIds List<String>

    List of Certificate IDs that should be used by the frontend.

    Important: Certificates are not allowed on port 80.

    enableHttp3 Boolean

    Activates HTTP/3 protocol.

    externalAcls Boolean

    A boolean to specify whether to use lb_acl. If external_acls is set to true, acl can not be set directly in the lb frontend.

    name String

    The ACL name. If not provided it will be randomly generated.

    timeoutClient String

    Maximum inactivity time on the client side. (e.g.: 1s)

    backendId string

    The load-balancer backend ID this frontend is attached to.

    Important: Updates to lb_id or backend_id will recreate the frontend.

    inboundPort number

    TCP port to listen on the front side.

    lbId string

    The load-balancer ID this frontend is attached to.

    acls LoadbalancerFrontendAcl[]

    A list of ACL rules to apply to the load-balancer frontend. Defined below.

    certificateIds string[]

    List of Certificate IDs that should be used by the frontend.

    Important: Certificates are not allowed on port 80.

    enableHttp3 boolean

    Activates HTTP/3 protocol.

    externalAcls boolean

    A boolean to specify whether to use lb_acl. If external_acls is set to true, acl can not be set directly in the lb frontend.

    name string

    The ACL name. If not provided it will be randomly generated.

    timeoutClient string

    Maximum inactivity time on the client side. (e.g.: 1s)

    backend_id str

    The load-balancer backend ID this frontend is attached to.

    Important: Updates to lb_id or backend_id will recreate the frontend.

    inbound_port int

    TCP port to listen on the front side.

    lb_id str

    The load-balancer ID this frontend is attached to.

    acls Sequence[LoadbalancerFrontendAclArgs]

    A list of ACL rules to apply to the load-balancer frontend. Defined below.

    certificate_ids Sequence[str]

    List of Certificate IDs that should be used by the frontend.

    Important: Certificates are not allowed on port 80.

    enable_http3 bool

    Activates HTTP/3 protocol.

    external_acls bool

    A boolean to specify whether to use lb_acl. If external_acls is set to true, acl can not be set directly in the lb frontend.

    name str

    The ACL name. If not provided it will be randomly generated.

    timeout_client str

    Maximum inactivity time on the client side. (e.g.: 1s)

    backendId String

    The load-balancer backend ID this frontend is attached to.

    Important: Updates to lb_id or backend_id will recreate the frontend.

    inboundPort Number

    TCP port to listen on the front side.

    lbId String

    The load-balancer ID this frontend is attached to.

    acls List<Property Map>

    A list of ACL rules to apply to the load-balancer frontend. Defined below.

    certificateIds List<String>

    List of Certificate IDs that should be used by the frontend.

    Important: Certificates are not allowed on port 80.

    enableHttp3 Boolean

    Activates HTTP/3 protocol.

    externalAcls Boolean

    A boolean to specify whether to use lb_acl. If external_acls is set to true, acl can not be set directly in the lb frontend.

    name String

    The ACL name. If not provided it will be randomly generated.

    timeoutClient String

    Maximum inactivity time on the client side. (e.g.: 1s)

    Outputs

    All input properties are implicitly available as output properties. Additionally, the LoadbalancerFrontend resource produces the following output properties:

    CertificateId string

    (Deprecated) first certificate ID used by the frontend.

    Deprecated:

    Please use certificate_ids

    Id string

    The provider-assigned unique ID for this managed resource.

    CertificateId string

    (Deprecated) first certificate ID used by the frontend.

    Deprecated:

    Please use certificate_ids

    Id string

    The provider-assigned unique ID for this managed resource.

    certificateId String

    (Deprecated) first certificate ID used by the frontend.

    Deprecated:

    Please use certificate_ids

    id String

    The provider-assigned unique ID for this managed resource.

    certificateId string

    (Deprecated) first certificate ID used by the frontend.

    Deprecated:

    Please use certificate_ids

    id string

    The provider-assigned unique ID for this managed resource.

    certificate_id str

    (Deprecated) first certificate ID used by the frontend.

    Deprecated:

    Please use certificate_ids

    id str

    The provider-assigned unique ID for this managed resource.

    certificateId String

    (Deprecated) first certificate ID used by the frontend.

    Deprecated:

    Please use certificate_ids

    id String

    The provider-assigned unique ID for this managed resource.

    Look up Existing LoadbalancerFrontend Resource

    Get an existing LoadbalancerFrontend resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: LoadbalancerFrontendState, opts?: CustomResourceOptions): LoadbalancerFrontend
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            acls: Optional[Sequence[LoadbalancerFrontendAclArgs]] = None,
            backend_id: Optional[str] = None,
            certificate_id: Optional[str] = None,
            certificate_ids: Optional[Sequence[str]] = None,
            enable_http3: Optional[bool] = None,
            external_acls: Optional[bool] = None,
            inbound_port: Optional[int] = None,
            lb_id: Optional[str] = None,
            name: Optional[str] = None,
            timeout_client: Optional[str] = None) -> LoadbalancerFrontend
    func GetLoadbalancerFrontend(ctx *Context, name string, id IDInput, state *LoadbalancerFrontendState, opts ...ResourceOption) (*LoadbalancerFrontend, error)
    public static LoadbalancerFrontend Get(string name, Input<string> id, LoadbalancerFrontendState? state, CustomResourceOptions? opts = null)
    public static LoadbalancerFrontend get(String name, Output<String> id, LoadbalancerFrontendState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Acls List<Lbrlabs.PulumiPackage.Scaleway.Inputs.LoadbalancerFrontendAcl>

    A list of ACL rules to apply to the load-balancer frontend. Defined below.

    BackendId string

    The load-balancer backend ID this frontend is attached to.

    Important: Updates to lb_id or backend_id will recreate the frontend.

    CertificateId string

    (Deprecated) first certificate ID used by the frontend.

    Deprecated:

    Please use certificate_ids

    CertificateIds List<string>

    List of Certificate IDs that should be used by the frontend.

    Important: Certificates are not allowed on port 80.

    EnableHttp3 bool

    Activates HTTP/3 protocol.

    ExternalAcls bool

    A boolean to specify whether to use lb_acl. If external_acls is set to true, acl can not be set directly in the lb frontend.

    InboundPort int

    TCP port to listen on the front side.

    LbId string

    The load-balancer ID this frontend is attached to.

    Name string

    The ACL name. If not provided it will be randomly generated.

    TimeoutClient string

    Maximum inactivity time on the client side. (e.g.: 1s)

    Acls []LoadbalancerFrontendAclArgs

    A list of ACL rules to apply to the load-balancer frontend. Defined below.

    BackendId string

    The load-balancer backend ID this frontend is attached to.

    Important: Updates to lb_id or backend_id will recreate the frontend.

    CertificateId string

    (Deprecated) first certificate ID used by the frontend.

    Deprecated:

    Please use certificate_ids

    CertificateIds []string

    List of Certificate IDs that should be used by the frontend.

    Important: Certificates are not allowed on port 80.

    EnableHttp3 bool

    Activates HTTP/3 protocol.

    ExternalAcls bool

    A boolean to specify whether to use lb_acl. If external_acls is set to true, acl can not be set directly in the lb frontend.

    InboundPort int

    TCP port to listen on the front side.

    LbId string

    The load-balancer ID this frontend is attached to.

    Name string

    The ACL name. If not provided it will be randomly generated.

    TimeoutClient string

    Maximum inactivity time on the client side. (e.g.: 1s)

    acls List<LoadbalancerFrontendAcl>

    A list of ACL rules to apply to the load-balancer frontend. Defined below.

    backendId String

    The load-balancer backend ID this frontend is attached to.

    Important: Updates to lb_id or backend_id will recreate the frontend.

    certificateId String

    (Deprecated) first certificate ID used by the frontend.

    Deprecated:

    Please use certificate_ids

    certificateIds List<String>

    List of Certificate IDs that should be used by the frontend.

    Important: Certificates are not allowed on port 80.

    enableHttp3 Boolean

    Activates HTTP/3 protocol.

    externalAcls Boolean

    A boolean to specify whether to use lb_acl. If external_acls is set to true, acl can not be set directly in the lb frontend.

    inboundPort Integer

    TCP port to listen on the front side.

    lbId String

    The load-balancer ID this frontend is attached to.

    name String

    The ACL name. If not provided it will be randomly generated.

    timeoutClient String

    Maximum inactivity time on the client side. (e.g.: 1s)

    acls LoadbalancerFrontendAcl[]

    A list of ACL rules to apply to the load-balancer frontend. Defined below.

    backendId string

    The load-balancer backend ID this frontend is attached to.

    Important: Updates to lb_id or backend_id will recreate the frontend.

    certificateId string

    (Deprecated) first certificate ID used by the frontend.

    Deprecated:

    Please use certificate_ids

    certificateIds string[]

    List of Certificate IDs that should be used by the frontend.

    Important: Certificates are not allowed on port 80.

    enableHttp3 boolean

    Activates HTTP/3 protocol.

    externalAcls boolean

    A boolean to specify whether to use lb_acl. If external_acls is set to true, acl can not be set directly in the lb frontend.

    inboundPort number

    TCP port to listen on the front side.

    lbId string

    The load-balancer ID this frontend is attached to.

    name string

    The ACL name. If not provided it will be randomly generated.

    timeoutClient string

    Maximum inactivity time on the client side. (e.g.: 1s)

    acls Sequence[LoadbalancerFrontendAclArgs]

    A list of ACL rules to apply to the load-balancer frontend. Defined below.

    backend_id str

    The load-balancer backend ID this frontend is attached to.

    Important: Updates to lb_id or backend_id will recreate the frontend.

    certificate_id str

    (Deprecated) first certificate ID used by the frontend.

    Deprecated:

    Please use certificate_ids

    certificate_ids Sequence[str]

    List of Certificate IDs that should be used by the frontend.

    Important: Certificates are not allowed on port 80.

    enable_http3 bool

    Activates HTTP/3 protocol.

    external_acls bool

    A boolean to specify whether to use lb_acl. If external_acls is set to true, acl can not be set directly in the lb frontend.

    inbound_port int

    TCP port to listen on the front side.

    lb_id str

    The load-balancer ID this frontend is attached to.

    name str

    The ACL name. If not provided it will be randomly generated.

    timeout_client str

    Maximum inactivity time on the client side. (e.g.: 1s)

    acls List<Property Map>

    A list of ACL rules to apply to the load-balancer frontend. Defined below.

    backendId String

    The load-balancer backend ID this frontend is attached to.

    Important: Updates to lb_id or backend_id will recreate the frontend.

    certificateId String

    (Deprecated) first certificate ID used by the frontend.

    Deprecated:

    Please use certificate_ids

    certificateIds List<String>

    List of Certificate IDs that should be used by the frontend.

    Important: Certificates are not allowed on port 80.

    enableHttp3 Boolean

    Activates HTTP/3 protocol.

    externalAcls Boolean

    A boolean to specify whether to use lb_acl. If external_acls is set to true, acl can not be set directly in the lb frontend.

    inboundPort Number

    TCP port to listen on the front side.

    lbId String

    The load-balancer ID this frontend is attached to.

    name String

    The ACL name. If not provided it will be randomly generated.

    timeoutClient String

    Maximum inactivity time on the client side. (e.g.: 1s)

    Supporting Types

    LoadbalancerFrontendAcl, LoadbalancerFrontendAclArgs

    Action Lbrlabs.PulumiPackage.Scaleway.Inputs.LoadbalancerFrontendAclAction

    Action to undertake when an ACL filter matches.

    Match Lbrlabs.PulumiPackage.Scaleway.Inputs.LoadbalancerFrontendAclMatch

    The ACL match rule. At least ip_subnet or http_filter and http_filter_value are required.

    CreatedAt string
    Description string
    Name string

    The ACL name. If not provided it will be randomly generated.

    UpdatedAt string
    Action LoadbalancerFrontendAclAction

    Action to undertake when an ACL filter matches.

    Match LoadbalancerFrontendAclMatch

    The ACL match rule. At least ip_subnet or http_filter and http_filter_value are required.

    CreatedAt string
    Description string
    Name string

    The ACL name. If not provided it will be randomly generated.

    UpdatedAt string
    action LoadbalancerFrontendAclAction

    Action to undertake when an ACL filter matches.

    match LoadbalancerFrontendAclMatch

    The ACL match rule. At least ip_subnet or http_filter and http_filter_value are required.

    createdAt String
    description String
    name String

    The ACL name. If not provided it will be randomly generated.

    updatedAt String
    action LoadbalancerFrontendAclAction

    Action to undertake when an ACL filter matches.

    match LoadbalancerFrontendAclMatch

    The ACL match rule. At least ip_subnet or http_filter and http_filter_value are required.

    createdAt string
    description string
    name string

    The ACL name. If not provided it will be randomly generated.

    updatedAt string
    action LoadbalancerFrontendAclAction

    Action to undertake when an ACL filter matches.

    match LoadbalancerFrontendAclMatch

    The ACL match rule. At least ip_subnet or http_filter and http_filter_value are required.

    created_at str
    description str
    name str

    The ACL name. If not provided it will be randomly generated.

    updated_at str
    action Property Map

    Action to undertake when an ACL filter matches.

    match Property Map

    The ACL match rule. At least ip_subnet or http_filter and http_filter_value are required.

    createdAt String
    description String
    name String

    The ACL name. If not provided it will be randomly generated.

    updatedAt String

    LoadbalancerFrontendAclAction, LoadbalancerFrontendAclActionArgs

    Type string

    The redirect type. Possible values are: location or scheme.

    Redirects List<Lbrlabs.PulumiPackage.Scaleway.Inputs.LoadbalancerFrontendAclActionRedirect>

    Redirect parameters when using an ACL with redirect action.

    Type string

    The redirect type. Possible values are: location or scheme.

    Redirects []LoadbalancerFrontendAclActionRedirect

    Redirect parameters when using an ACL with redirect action.

    type String

    The redirect type. Possible values are: location or scheme.

    redirects List<LoadbalancerFrontendAclActionRedirect>

    Redirect parameters when using an ACL with redirect action.

    type string

    The redirect type. Possible values are: location or scheme.

    redirects LoadbalancerFrontendAclActionRedirect[]

    Redirect parameters when using an ACL with redirect action.

    type str

    The redirect type. Possible values are: location or scheme.

    redirects Sequence[LoadbalancerFrontendAclActionRedirect]

    Redirect parameters when using an ACL with redirect action.

    type String

    The redirect type. Possible values are: location or scheme.

    redirects List<Property Map>

    Redirect parameters when using an ACL with redirect action.

    LoadbalancerFrontendAclActionRedirect, LoadbalancerFrontendAclActionRedirectArgs

    Code int

    The HTTP redirect code to use. Valid values are 301, 302, 303, 307 and 308.

    Target string

    An URL can be used in case of a location redirect (e.g. https://scaleway.com will redirect to this same URL). A scheme name (e.g. https, http, ftp, git) will replace the request's original scheme.

    Type string

    The redirect type. Possible values are: location or scheme.

    Code int

    The HTTP redirect code to use. Valid values are 301, 302, 303, 307 and 308.

    Target string

    An URL can be used in case of a location redirect (e.g. https://scaleway.com will redirect to this same URL). A scheme name (e.g. https, http, ftp, git) will replace the request's original scheme.

    Type string

    The redirect type. Possible values are: location or scheme.

    code Integer

    The HTTP redirect code to use. Valid values are 301, 302, 303, 307 and 308.

    target String

    An URL can be used in case of a location redirect (e.g. https://scaleway.com will redirect to this same URL). A scheme name (e.g. https, http, ftp, git) will replace the request's original scheme.

    type String

    The redirect type. Possible values are: location or scheme.

    code number

    The HTTP redirect code to use. Valid values are 301, 302, 303, 307 and 308.

    target string

    An URL can be used in case of a location redirect (e.g. https://scaleway.com will redirect to this same URL). A scheme name (e.g. https, http, ftp, git) will replace the request's original scheme.

    type string

    The redirect type. Possible values are: location or scheme.

    code int

    The HTTP redirect code to use. Valid values are 301, 302, 303, 307 and 308.

    target str

    An URL can be used in case of a location redirect (e.g. https://scaleway.com will redirect to this same URL). A scheme name (e.g. https, http, ftp, git) will replace the request's original scheme.

    type str

    The redirect type. Possible values are: location or scheme.

    code Number

    The HTTP redirect code to use. Valid values are 301, 302, 303, 307 and 308.

    target String

    An URL can be used in case of a location redirect (e.g. https://scaleway.com will redirect to this same URL). A scheme name (e.g. https, http, ftp, git) will replace the request's original scheme.

    type String

    The redirect type. Possible values are: location or scheme.

    LoadbalancerFrontendAclMatch, LoadbalancerFrontendAclMatchArgs

    HttpFilter string

    The HTTP filter to match. This filter is supported only if your backend protocol has an HTTP forward protocol. It extracts the request's URL path, which starts at the first slash and ends before the question mark (without the host part). Possible values are: acl_http_filter_none, path_begin, path_end, http_header_match or regex.

    HttpFilterOption string
    HttpFilterValues List<string>

    A list of possible values to match for the given HTTP filter. Keep in mind that in the case of http_header_match the HTTP header field name is case-insensitive.

    Invert bool

    If set to true, the condition will be of type "unless".

    IpSubnets List<string>

    A list of IPs or CIDR v4/v6 addresses of the client of the session to match.

    HttpFilter string

    The HTTP filter to match. This filter is supported only if your backend protocol has an HTTP forward protocol. It extracts the request's URL path, which starts at the first slash and ends before the question mark (without the host part). Possible values are: acl_http_filter_none, path_begin, path_end, http_header_match or regex.

    HttpFilterOption string
    HttpFilterValues []string

    A list of possible values to match for the given HTTP filter. Keep in mind that in the case of http_header_match the HTTP header field name is case-insensitive.

    Invert bool

    If set to true, the condition will be of type "unless".

    IpSubnets []string

    A list of IPs or CIDR v4/v6 addresses of the client of the session to match.

    httpFilter String

    The HTTP filter to match. This filter is supported only if your backend protocol has an HTTP forward protocol. It extracts the request's URL path, which starts at the first slash and ends before the question mark (without the host part). Possible values are: acl_http_filter_none, path_begin, path_end, http_header_match or regex.

    httpFilterOption String
    httpFilterValues List<String>

    A list of possible values to match for the given HTTP filter. Keep in mind that in the case of http_header_match the HTTP header field name is case-insensitive.

    invert Boolean

    If set to true, the condition will be of type "unless".

    ipSubnets List<String>

    A list of IPs or CIDR v4/v6 addresses of the client of the session to match.

    httpFilter string

    The HTTP filter to match. This filter is supported only if your backend protocol has an HTTP forward protocol. It extracts the request's URL path, which starts at the first slash and ends before the question mark (without the host part). Possible values are: acl_http_filter_none, path_begin, path_end, http_header_match or regex.

    httpFilterOption string
    httpFilterValues string[]

    A list of possible values to match for the given HTTP filter. Keep in mind that in the case of http_header_match the HTTP header field name is case-insensitive.

    invert boolean

    If set to true, the condition will be of type "unless".

    ipSubnets string[]

    A list of IPs or CIDR v4/v6 addresses of the client of the session to match.

    http_filter str

    The HTTP filter to match. This filter is supported only if your backend protocol has an HTTP forward protocol. It extracts the request's URL path, which starts at the first slash and ends before the question mark (without the host part). Possible values are: acl_http_filter_none, path_begin, path_end, http_header_match or regex.

    http_filter_option str
    http_filter_values Sequence[str]

    A list of possible values to match for the given HTTP filter. Keep in mind that in the case of http_header_match the HTTP header field name is case-insensitive.

    invert bool

    If set to true, the condition will be of type "unless".

    ip_subnets Sequence[str]

    A list of IPs or CIDR v4/v6 addresses of the client of the session to match.

    httpFilter String

    The HTTP filter to match. This filter is supported only if your backend protocol has an HTTP forward protocol. It extracts the request's URL path, which starts at the first slash and ends before the question mark (without the host part). Possible values are: acl_http_filter_none, path_begin, path_end, http_header_match or regex.

    httpFilterOption String
    httpFilterValues List<String>

    A list of possible values to match for the given HTTP filter. Keep in mind that in the case of http_header_match the HTTP header field name is case-insensitive.

    invert Boolean

    If set to true, the condition will be of type "unless".

    ipSubnets List<String>

    A list of IPs or CIDR v4/v6 addresses of the client of the session to match.

    Import

    Load-Balancer frontend can be imported using the {zone}/{id}, e.g. bash

     $ pulumi import scaleway:index/loadbalancerFrontend:LoadbalancerFrontend frontend01 fr-par-1/11111111-1111-1111-1111-111111111111
    

    Package Details

    Repository
    scaleway lbrlabs/pulumi-scaleway
    License
    Apache-2.0
    Notes

    This Pulumi package is based on the scaleway Terraform Provider.

    scaleway logo
    Scaleway v1.10.0 published on Saturday, Jul 1, 2023 by lbrlabs