1. Packages
  2. Cloudflare
  3. API Docs
  4. SplitTunnel
Cloudflare v5.26.0 published on Wednesday, Apr 17, 2024 by Pulumi

cloudflare.SplitTunnel

Explore with Pulumi AI

cloudflare logo
Cloudflare v5.26.0 published on Wednesday, Apr 17, 2024 by Pulumi

    Provides a Cloudflare Split Tunnel resource. Split tunnels are used to either include or exclude lists of routes from the WARP client’s tunnel.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as cloudflare from "@pulumi/cloudflare";
    
    // Excluding *.example.com from WARP routes
    const exampleSplitTunnelExclude = new cloudflare.SplitTunnel("exampleSplitTunnelExclude", {
        accountId: "f037e56e89293a057740de681ac9abbe",
        mode: "exclude",
        tunnels: [{
            host: "*.example.com",
            description: "example domain",
        }],
    });
    // Including *.example.com in WARP routes
    const exampleSplitTunnelIncludeSplitTunnel = new cloudflare.SplitTunnel("exampleSplitTunnelIncludeSplitTunnel", {
        accountId: "f037e56e89293a057740de681ac9abbe",
        mode: "include",
        tunnels: [{
            host: "*.example.com",
            description: "example domain",
        }],
    });
    // Create a device policy
    const developerWarpPolicy = new cloudflare.DeviceSettingsPolicy("developerWarpPolicy", {
        accountId: "f037e56e89293a057740de681ac9abbe",
        name: "Developers",
        precedence: 10,
        match: "any(identity.groups.name[*] in {\"Developers\"})",
        switchLocked: true,
    });
    // Excluding *.example.com from WARP routes for a particular device policy
    const exampleDeviceSettingsPolicySplitTunnelExclude = new cloudflare.SplitTunnel("exampleDeviceSettingsPolicySplitTunnelExclude", {
        accountId: "f037e56e89293a057740de681ac9abbe",
        policyId: developerWarpPolicy.id,
        mode: "exclude",
        tunnels: [{
            host: "*.example.com",
            description: "example domain",
        }],
    });
    // Including *.example.com in WARP routes for a particular device policy
    const exampleSplitTunnelIncludeIndex_splitTunnelSplitTunnel = new cloudflare.SplitTunnel("exampleSplitTunnelIncludeIndex/splitTunnelSplitTunnel", {
        accountId: "f037e56e89293a057740de681ac9abbe",
        policyId: cloudflare_device_policy.developer_warp_policy.id,
        mode: "include",
        tunnels: [{
            host: "*.example.com",
            description: "example domain",
        }],
    });
    
    import pulumi
    import pulumi_cloudflare as cloudflare
    
    # Excluding *.example.com from WARP routes
    example_split_tunnel_exclude = cloudflare.SplitTunnel("exampleSplitTunnelExclude",
        account_id="f037e56e89293a057740de681ac9abbe",
        mode="exclude",
        tunnels=[cloudflare.SplitTunnelTunnelArgs(
            host="*.example.com",
            description="example domain",
        )])
    # Including *.example.com in WARP routes
    example_split_tunnel_include_split_tunnel = cloudflare.SplitTunnel("exampleSplitTunnelIncludeSplitTunnel",
        account_id="f037e56e89293a057740de681ac9abbe",
        mode="include",
        tunnels=[cloudflare.SplitTunnelTunnelArgs(
            host="*.example.com",
            description="example domain",
        )])
    # Create a device policy
    developer_warp_policy = cloudflare.DeviceSettingsPolicy("developerWarpPolicy",
        account_id="f037e56e89293a057740de681ac9abbe",
        name="Developers",
        precedence=10,
        match="any(identity.groups.name[*] in {\"Developers\"})",
        switch_locked=True)
    # Excluding *.example.com from WARP routes for a particular device policy
    example_device_settings_policy_split_tunnel_exclude = cloudflare.SplitTunnel("exampleDeviceSettingsPolicySplitTunnelExclude",
        account_id="f037e56e89293a057740de681ac9abbe",
        policy_id=developer_warp_policy.id,
        mode="exclude",
        tunnels=[cloudflare.SplitTunnelTunnelArgs(
            host="*.example.com",
            description="example domain",
        )])
    # Including *.example.com in WARP routes for a particular device policy
    example_split_tunnel_include_index_split_tunnel_split_tunnel = cloudflare.SplitTunnel("exampleSplitTunnelIncludeIndex/splitTunnelSplitTunnel",
        account_id="f037e56e89293a057740de681ac9abbe",
        policy_id=cloudflare_device_policy["developer_warp_policy"]["id"],
        mode="include",
        tunnels=[cloudflare.SplitTunnelTunnelArgs(
            host="*.example.com",
            description="example domain",
        )])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-cloudflare/sdk/v5/go/cloudflare"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Excluding *.example.com from WARP routes
    		_, err := cloudflare.NewSplitTunnel(ctx, "exampleSplitTunnelExclude", &cloudflare.SplitTunnelArgs{
    			AccountId: pulumi.String("f037e56e89293a057740de681ac9abbe"),
    			Mode:      pulumi.String("exclude"),
    			Tunnels: cloudflare.SplitTunnelTunnelArray{
    				&cloudflare.SplitTunnelTunnelArgs{
    					Host:        pulumi.String("*.example.com"),
    					Description: pulumi.String("example domain"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Including *.example.com in WARP routes
    		_, err = cloudflare.NewSplitTunnel(ctx, "exampleSplitTunnelIncludeSplitTunnel", &cloudflare.SplitTunnelArgs{
    			AccountId: pulumi.String("f037e56e89293a057740de681ac9abbe"),
    			Mode:      pulumi.String("include"),
    			Tunnels: cloudflare.SplitTunnelTunnelArray{
    				&cloudflare.SplitTunnelTunnelArgs{
    					Host:        pulumi.String("*.example.com"),
    					Description: pulumi.String("example domain"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Create a device policy
    		developerWarpPolicy, err := cloudflare.NewDeviceSettingsPolicy(ctx, "developerWarpPolicy", &cloudflare.DeviceSettingsPolicyArgs{
    			AccountId:    pulumi.String("f037e56e89293a057740de681ac9abbe"),
    			Name:         pulumi.String("Developers"),
    			Precedence:   pulumi.Int(10),
    			Match:        pulumi.String("any(identity.groups.name[*] in {\"Developers\"})"),
    			SwitchLocked: pulumi.Bool(true),
    		})
    		if err != nil {
    			return err
    		}
    		// Excluding *.example.com from WARP routes for a particular device policy
    		_, err = cloudflare.NewSplitTunnel(ctx, "exampleDeviceSettingsPolicySplitTunnelExclude", &cloudflare.SplitTunnelArgs{
    			AccountId: pulumi.String("f037e56e89293a057740de681ac9abbe"),
    			PolicyId:  developerWarpPolicy.ID(),
    			Mode:      pulumi.String("exclude"),
    			Tunnels: cloudflare.SplitTunnelTunnelArray{
    				&cloudflare.SplitTunnelTunnelArgs{
    					Host:        pulumi.String("*.example.com"),
    					Description: pulumi.String("example domain"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Including *.example.com in WARP routes for a particular device policy
    		_, err = cloudflare.NewSplitTunnel(ctx, "exampleSplitTunnelIncludeIndex/splitTunnelSplitTunnel", &cloudflare.SplitTunnelArgs{
    			AccountId: pulumi.String("f037e56e89293a057740de681ac9abbe"),
    			PolicyId:  pulumi.Any(cloudflare_device_policy.Developer_warp_policy.Id),
    			Mode:      pulumi.String("include"),
    			Tunnels: cloudflare.SplitTunnelTunnelArray{
    				&cloudflare.SplitTunnelTunnelArgs{
    					Host:        pulumi.String("*.example.com"),
    					Description: pulumi.String("example domain"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Cloudflare = Pulumi.Cloudflare;
    
    return await Deployment.RunAsync(() => 
    {
        // Excluding *.example.com from WARP routes
        var exampleSplitTunnelExclude = new Cloudflare.SplitTunnel("exampleSplitTunnelExclude", new()
        {
            AccountId = "f037e56e89293a057740de681ac9abbe",
            Mode = "exclude",
            Tunnels = new[]
            {
                new Cloudflare.Inputs.SplitTunnelTunnelArgs
                {
                    Host = "*.example.com",
                    Description = "example domain",
                },
            },
        });
    
        // Including *.example.com in WARP routes
        var exampleSplitTunnelIncludeSplitTunnel = new Cloudflare.SplitTunnel("exampleSplitTunnelIncludeSplitTunnel", new()
        {
            AccountId = "f037e56e89293a057740de681ac9abbe",
            Mode = "include",
            Tunnels = new[]
            {
                new Cloudflare.Inputs.SplitTunnelTunnelArgs
                {
                    Host = "*.example.com",
                    Description = "example domain",
                },
            },
        });
    
        // Create a device policy
        var developerWarpPolicy = new Cloudflare.DeviceSettingsPolicy("developerWarpPolicy", new()
        {
            AccountId = "f037e56e89293a057740de681ac9abbe",
            Name = "Developers",
            Precedence = 10,
            Match = "any(identity.groups.name[*] in {\"Developers\"})",
            SwitchLocked = true,
        });
    
        // Excluding *.example.com from WARP routes for a particular device policy
        var exampleDeviceSettingsPolicySplitTunnelExclude = new Cloudflare.SplitTunnel("exampleDeviceSettingsPolicySplitTunnelExclude", new()
        {
            AccountId = "f037e56e89293a057740de681ac9abbe",
            PolicyId = developerWarpPolicy.Id,
            Mode = "exclude",
            Tunnels = new[]
            {
                new Cloudflare.Inputs.SplitTunnelTunnelArgs
                {
                    Host = "*.example.com",
                    Description = "example domain",
                },
            },
        });
    
        // Including *.example.com in WARP routes for a particular device policy
        var exampleSplitTunnelIncludeIndex_splitTunnelSplitTunnel = new Cloudflare.SplitTunnel("exampleSplitTunnelIncludeIndex/splitTunnelSplitTunnel", new()
        {
            AccountId = "f037e56e89293a057740de681ac9abbe",
            PolicyId = cloudflare_device_policy.Developer_warp_policy.Id,
            Mode = "include",
            Tunnels = new[]
            {
                new Cloudflare.Inputs.SplitTunnelTunnelArgs
                {
                    Host = "*.example.com",
                    Description = "example domain",
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.cloudflare.SplitTunnel;
    import com.pulumi.cloudflare.SplitTunnelArgs;
    import com.pulumi.cloudflare.inputs.SplitTunnelTunnelArgs;
    import com.pulumi.cloudflare.DeviceSettingsPolicy;
    import com.pulumi.cloudflare.DeviceSettingsPolicyArgs;
    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) {
            // Excluding *.example.com from WARP routes
            var exampleSplitTunnelExclude = new SplitTunnel("exampleSplitTunnelExclude", SplitTunnelArgs.builder()        
                .accountId("f037e56e89293a057740de681ac9abbe")
                .mode("exclude")
                .tunnels(SplitTunnelTunnelArgs.builder()
                    .host("*.example.com")
                    .description("example domain")
                    .build())
                .build());
    
            // Including *.example.com in WARP routes
            var exampleSplitTunnelIncludeSplitTunnel = new SplitTunnel("exampleSplitTunnelIncludeSplitTunnel", SplitTunnelArgs.builder()        
                .accountId("f037e56e89293a057740de681ac9abbe")
                .mode("include")
                .tunnels(SplitTunnelTunnelArgs.builder()
                    .host("*.example.com")
                    .description("example domain")
                    .build())
                .build());
    
            // Create a device policy
            var developerWarpPolicy = new DeviceSettingsPolicy("developerWarpPolicy", DeviceSettingsPolicyArgs.builder()        
                .accountId("f037e56e89293a057740de681ac9abbe")
                .name("Developers")
                .precedence(10)
                .match("any(identity.groups.name[*] in {\"Developers\"})")
                .switchLocked(true)
                .build());
    
            // Excluding *.example.com from WARP routes for a particular device policy
            var exampleDeviceSettingsPolicySplitTunnelExclude = new SplitTunnel("exampleDeviceSettingsPolicySplitTunnelExclude", SplitTunnelArgs.builder()        
                .accountId("f037e56e89293a057740de681ac9abbe")
                .policyId(developerWarpPolicy.id())
                .mode("exclude")
                .tunnels(SplitTunnelTunnelArgs.builder()
                    .host("*.example.com")
                    .description("example domain")
                    .build())
                .build());
    
            // Including *.example.com in WARP routes for a particular device policy
            var exampleSplitTunnelIncludeIndex_splitTunnelSplitTunnel = new SplitTunnel("exampleSplitTunnelIncludeIndex/splitTunnelSplitTunnel", SplitTunnelArgs.builder()        
                .accountId("f037e56e89293a057740de681ac9abbe")
                .policyId(cloudflare_device_policy.developer_warp_policy().id())
                .mode("include")
                .tunnels(SplitTunnelTunnelArgs.builder()
                    .host("*.example.com")
                    .description("example domain")
                    .build())
                .build());
    
        }
    }
    
    resources:
      # Excluding *.example.com from WARP routes
      exampleSplitTunnelExclude:
        type: cloudflare:SplitTunnel
        properties:
          accountId: f037e56e89293a057740de681ac9abbe
          mode: exclude
          tunnels:
            - host: '*.example.com'
              description: example domain
      # Including *.example.com in WARP routes
      exampleSplitTunnelIncludeSplitTunnel:
        type: cloudflare:SplitTunnel
        properties:
          accountId: f037e56e89293a057740de681ac9abbe
          mode: include
          tunnels:
            - host: '*.example.com'
              description: example domain
      # Create a device policy
      developerWarpPolicy:
        type: cloudflare:DeviceSettingsPolicy
        properties:
          accountId: f037e56e89293a057740de681ac9abbe
          name: Developers
          precedence: 10
          match: any(identity.groups.name[*] in {"Developers"})
          switchLocked: true
      # Excluding *.example.com from WARP routes for a particular device policy
      exampleDeviceSettingsPolicySplitTunnelExclude:
        type: cloudflare:SplitTunnel
        properties:
          accountId: f037e56e89293a057740de681ac9abbe
          policyId: ${developerWarpPolicy.id}
          mode: exclude
          tunnels:
            - host: '*.example.com'
              description: example domain
      # Including *.example.com in WARP routes for a particular device policy
      exampleSplitTunnelIncludeIndex/splitTunnelSplitTunnel:
        type: cloudflare:SplitTunnel
        properties:
          accountId: f037e56e89293a057740de681ac9abbe
          policyId: ${cloudflare_device_policy.developer_warp_policy.id}
          mode: include
          tunnels:
            - host: '*.example.com'
              description: example domain
    

    Create SplitTunnel Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new SplitTunnel(name: string, args: SplitTunnelArgs, opts?: CustomResourceOptions);
    @overload
    def SplitTunnel(resource_name: str,
                    args: SplitTunnelArgs,
                    opts: Optional[ResourceOptions] = None)
    
    @overload
    def SplitTunnel(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    account_id: Optional[str] = None,
                    mode: Optional[str] = None,
                    tunnels: Optional[Sequence[SplitTunnelTunnelArgs]] = None,
                    policy_id: Optional[str] = None)
    func NewSplitTunnel(ctx *Context, name string, args SplitTunnelArgs, opts ...ResourceOption) (*SplitTunnel, error)
    public SplitTunnel(string name, SplitTunnelArgs args, CustomResourceOptions? opts = null)
    public SplitTunnel(String name, SplitTunnelArgs args)
    public SplitTunnel(String name, SplitTunnelArgs args, CustomResourceOptions options)
    
    type: cloudflare:SplitTunnel
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args SplitTunnelArgs
    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 SplitTunnelArgs
    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 SplitTunnelArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args SplitTunnelArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args SplitTunnelArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Example

    The following reference example uses placeholder values for all input properties.

    var splitTunnelResource = new Cloudflare.SplitTunnel("splitTunnelResource", new()
    {
        AccountId = "string",
        Mode = "string",
        Tunnels = new[]
        {
            new Cloudflare.Inputs.SplitTunnelTunnelArgs
            {
                Address = "string",
                Description = "string",
                Host = "string",
            },
        },
        PolicyId = "string",
    });
    
    example, err := cloudflare.NewSplitTunnel(ctx, "splitTunnelResource", &cloudflare.SplitTunnelArgs{
    	AccountId: pulumi.String("string"),
    	Mode:      pulumi.String("string"),
    	Tunnels: cloudflare.SplitTunnelTunnelArray{
    		&cloudflare.SplitTunnelTunnelArgs{
    			Address:     pulumi.String("string"),
    			Description: pulumi.String("string"),
    			Host:        pulumi.String("string"),
    		},
    	},
    	PolicyId: pulumi.String("string"),
    })
    
    var splitTunnelResource = new SplitTunnel("splitTunnelResource", SplitTunnelArgs.builder()        
        .accountId("string")
        .mode("string")
        .tunnels(SplitTunnelTunnelArgs.builder()
            .address("string")
            .description("string")
            .host("string")
            .build())
        .policyId("string")
        .build());
    
    split_tunnel_resource = cloudflare.SplitTunnel("splitTunnelResource",
        account_id="string",
        mode="string",
        tunnels=[cloudflare.SplitTunnelTunnelArgs(
            address="string",
            description="string",
            host="string",
        )],
        policy_id="string")
    
    const splitTunnelResource = new cloudflare.SplitTunnel("splitTunnelResource", {
        accountId: "string",
        mode: "string",
        tunnels: [{
            address: "string",
            description: "string",
            host: "string",
        }],
        policyId: "string",
    });
    
    type: cloudflare:SplitTunnel
    properties:
        accountId: string
        mode: string
        policyId: string
        tunnels:
            - address: string
              description: string
              host: string
    

    SplitTunnel 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 SplitTunnel resource accepts the following input properties:

    AccountId string
    The account identifier to target for the resource.
    Mode string
    The mode of the split tunnel policy. Available values: include, exclude.
    Tunnels List<SplitTunnelTunnel>
    The value of the tunnel attributes.
    PolicyId string
    The settings policy for which to configure this split tunnel policy.
    AccountId string
    The account identifier to target for the resource.
    Mode string
    The mode of the split tunnel policy. Available values: include, exclude.
    Tunnels []SplitTunnelTunnelArgs
    The value of the tunnel attributes.
    PolicyId string
    The settings policy for which to configure this split tunnel policy.
    accountId String
    The account identifier to target for the resource.
    mode String
    The mode of the split tunnel policy. Available values: include, exclude.
    tunnels List<SplitTunnelTunnel>
    The value of the tunnel attributes.
    policyId String
    The settings policy for which to configure this split tunnel policy.
    accountId string
    The account identifier to target for the resource.
    mode string
    The mode of the split tunnel policy. Available values: include, exclude.
    tunnels SplitTunnelTunnel[]
    The value of the tunnel attributes.
    policyId string
    The settings policy for which to configure this split tunnel policy.
    account_id str
    The account identifier to target for the resource.
    mode str
    The mode of the split tunnel policy. Available values: include, exclude.
    tunnels Sequence[SplitTunnelTunnelArgs]
    The value of the tunnel attributes.
    policy_id str
    The settings policy for which to configure this split tunnel policy.
    accountId String
    The account identifier to target for the resource.
    mode String
    The mode of the split tunnel policy. Available values: include, exclude.
    tunnels List<Property Map>
    The value of the tunnel attributes.
    policyId String
    The settings policy for which to configure this split tunnel policy.

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing SplitTunnel Resource

    Get an existing SplitTunnel 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?: SplitTunnelState, opts?: CustomResourceOptions): SplitTunnel
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            account_id: Optional[str] = None,
            mode: Optional[str] = None,
            policy_id: Optional[str] = None,
            tunnels: Optional[Sequence[SplitTunnelTunnelArgs]] = None) -> SplitTunnel
    func GetSplitTunnel(ctx *Context, name string, id IDInput, state *SplitTunnelState, opts ...ResourceOption) (*SplitTunnel, error)
    public static SplitTunnel Get(string name, Input<string> id, SplitTunnelState? state, CustomResourceOptions? opts = null)
    public static SplitTunnel get(String name, Output<String> id, SplitTunnelState 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:
    AccountId string
    The account identifier to target for the resource.
    Mode string
    The mode of the split tunnel policy. Available values: include, exclude.
    PolicyId string
    The settings policy for which to configure this split tunnel policy.
    Tunnels List<SplitTunnelTunnel>
    The value of the tunnel attributes.
    AccountId string
    The account identifier to target for the resource.
    Mode string
    The mode of the split tunnel policy. Available values: include, exclude.
    PolicyId string
    The settings policy for which to configure this split tunnel policy.
    Tunnels []SplitTunnelTunnelArgs
    The value of the tunnel attributes.
    accountId String
    The account identifier to target for the resource.
    mode String
    The mode of the split tunnel policy. Available values: include, exclude.
    policyId String
    The settings policy for which to configure this split tunnel policy.
    tunnels List<SplitTunnelTunnel>
    The value of the tunnel attributes.
    accountId string
    The account identifier to target for the resource.
    mode string
    The mode of the split tunnel policy. Available values: include, exclude.
    policyId string
    The settings policy for which to configure this split tunnel policy.
    tunnels SplitTunnelTunnel[]
    The value of the tunnel attributes.
    account_id str
    The account identifier to target for the resource.
    mode str
    The mode of the split tunnel policy. Available values: include, exclude.
    policy_id str
    The settings policy for which to configure this split tunnel policy.
    tunnels Sequence[SplitTunnelTunnelArgs]
    The value of the tunnel attributes.
    accountId String
    The account identifier to target for the resource.
    mode String
    The mode of the split tunnel policy. Available values: include, exclude.
    policyId String
    The settings policy for which to configure this split tunnel policy.
    tunnels List<Property Map>
    The value of the tunnel attributes.

    Supporting Types

    SplitTunnelTunnel, SplitTunnelTunnelArgs

    Address string
    The address for the tunnel.
    Description string
    A description for the tunnel.
    Host string
    The domain name for the tunnel.
    Address string
    The address for the tunnel.
    Description string
    A description for the tunnel.
    Host string
    The domain name for the tunnel.
    address String
    The address for the tunnel.
    description String
    A description for the tunnel.
    host String
    The domain name for the tunnel.
    address string
    The address for the tunnel.
    description string
    A description for the tunnel.
    host string
    The domain name for the tunnel.
    address str
    The address for the tunnel.
    description str
    A description for the tunnel.
    host str
    The domain name for the tunnel.
    address String
    The address for the tunnel.
    description String
    A description for the tunnel.
    host String
    The domain name for the tunnel.

    Import

    Split Tunnels for default device policies must use “default” as the policy ID.

    $ pulumi import cloudflare:index/splitTunnel:SplitTunnel example <account_id>/<policy_id>/<mode>
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Cloudflare pulumi/pulumi-cloudflare
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the cloudflare Terraform Provider.
    cloudflare logo
    Cloudflare v5.26.0 published on Wednesday, Apr 17, 2024 by Pulumi