1. Packages
  2. Flexibleengine Provider
  3. API Docs
  4. VpcRouteTable
flexibleengine 1.46.0 published on Monday, Apr 14, 2025 by flexibleenginecloud

flexibleengine.VpcRouteTable

Explore with Pulumi AI

flexibleengine logo
flexibleengine 1.46.0 published on Monday, Apr 14, 2025 by flexibleenginecloud

    Manages a VPC custom route table resource within FlexibleEngine.

    NOTE: To use a custom route table, you need to submit a service ticket to increase quota.

    Example Usage

    Basic Custom Route Table

    import * as pulumi from "@pulumi/pulumi";
    import * as flexibleengine from "@pulumi/flexibleengine";
    
    const config = new pulumi.Config();
    const vpcPeeringId = config.requireObject("vpcPeeringId");
    const exampleVpc = new flexibleengine.VpcV1("exampleVpc", {cidr: "192.168.0.0/16"});
    const demo = new flexibleengine.VpcRouteTable("demo", {
        vpcId: exampleVpc.vpcV1Id,
        description: "a custom route table demo",
        routes: [{
            destination: "172.16.0.0/16",
            type: "peering",
            nexthop: vpcPeeringId,
        }],
    });
    
    import pulumi
    import pulumi_flexibleengine as flexibleengine
    
    config = pulumi.Config()
    vpc_peering_id = config.require_object("vpcPeeringId")
    example_vpc = flexibleengine.VpcV1("exampleVpc", cidr="192.168.0.0/16")
    demo = flexibleengine.VpcRouteTable("demo",
        vpc_id=example_vpc.vpc_v1_id,
        description="a custom route table demo",
        routes=[{
            "destination": "172.16.0.0/16",
            "type": "peering",
            "nexthop": vpc_peering_id,
        }])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/flexibleengine/flexibleengine"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		cfg := config.New(ctx, "")
    		vpcPeeringId := cfg.RequireObject("vpcPeeringId")
    		exampleVpc, err := flexibleengine.NewVpcV1(ctx, "exampleVpc", &flexibleengine.VpcV1Args{
    			Cidr: pulumi.String("192.168.0.0/16"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = flexibleengine.NewVpcRouteTable(ctx, "demo", &flexibleengine.VpcRouteTableArgs{
    			VpcId:       exampleVpc.VpcV1Id,
    			Description: pulumi.String("a custom route table demo"),
    			Routes: flexibleengine.VpcRouteTableRouteArray{
    				&flexibleengine.VpcRouteTableRouteArgs{
    					Destination: pulumi.String("172.16.0.0/16"),
    					Type:        pulumi.String("peering"),
    					Nexthop:     pulumi.Any(vpcPeeringId),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Flexibleengine = Pulumi.Flexibleengine;
    
    return await Deployment.RunAsync(() => 
    {
        var config = new Config();
        var vpcPeeringId = config.RequireObject<dynamic>("vpcPeeringId");
        var exampleVpc = new Flexibleengine.VpcV1("exampleVpc", new()
        {
            Cidr = "192.168.0.0/16",
        });
    
        var demo = new Flexibleengine.VpcRouteTable("demo", new()
        {
            VpcId = exampleVpc.VpcV1Id,
            Description = "a custom route table demo",
            Routes = new[]
            {
                new Flexibleengine.Inputs.VpcRouteTableRouteArgs
                {
                    Destination = "172.16.0.0/16",
                    Type = "peering",
                    Nexthop = vpcPeeringId,
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.flexibleengine.VpcV1;
    import com.pulumi.flexibleengine.VpcV1Args;
    import com.pulumi.flexibleengine.VpcRouteTable;
    import com.pulumi.flexibleengine.VpcRouteTableArgs;
    import com.pulumi.flexibleengine.inputs.VpcRouteTableRouteArgs;
    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) {
            final var config = ctx.config();
            final var vpcPeeringId = config.get("vpcPeeringId");
            var exampleVpc = new VpcV1("exampleVpc", VpcV1Args.builder()
                .cidr("192.168.0.0/16")
                .build());
    
            var demo = new VpcRouteTable("demo", VpcRouteTableArgs.builder()
                .vpcId(exampleVpc.vpcV1Id())
                .description("a custom route table demo")
                .routes(VpcRouteTableRouteArgs.builder()
                    .destination("172.16.0.0/16")
                    .type("peering")
                    .nexthop(vpcPeeringId)
                    .build())
                .build());
    
        }
    }
    
    configuration:
      vpcPeeringId:
        type: dynamic
    resources:
      exampleVpc:
        type: flexibleengine:VpcV1
        properties:
          cidr: 192.168.0.0/16
      demo:
        type: flexibleengine:VpcRouteTable
        properties:
          vpcId: ${exampleVpc.vpcV1Id}
          description: a custom route table demo
          routes:
            - destination: 172.16.0.0/16
              type: peering
              nexthop: ${vpcPeeringId}
    

    Associating Subnets with a Route Table

    import * as pulumi from "@pulumi/pulumi";
    import * as flexibleengine from "@pulumi/flexibleengine";
    
    const config = new pulumi.Config();
    const vpcPeeringId = config.requireObject("vpcPeeringId");
    const exampleVpc = new flexibleengine.VpcV1("exampleVpc", {cidr: "192.168.0.0/16"});
    const subnetIds = flexibleengine.getVpcSubnetIdsV1Output({
        vpcId: exampleVpc.vpcV1Id,
    });
    const demo = new flexibleengine.VpcRouteTable("demo", {
        vpcId: exampleVpc.vpcV1Id,
        subnets: subnetIds.apply(subnetIds => subnetIds.ids),
        routes: [
            {
                destination: "172.16.0.0/16",
                type: "peering",
                nexthop: vpcPeeringId,
            },
            {
                destination: "192.168.100.0/24",
                type: "vip",
                nexthop: "192.168.10.200",
            },
        ],
    });
    
    import pulumi
    import pulumi_flexibleengine as flexibleengine
    
    config = pulumi.Config()
    vpc_peering_id = config.require_object("vpcPeeringId")
    example_vpc = flexibleengine.VpcV1("exampleVpc", cidr="192.168.0.0/16")
    subnet_ids = flexibleengine.get_vpc_subnet_ids_v1_output(vpc_id=example_vpc.vpc_v1_id)
    demo = flexibleengine.VpcRouteTable("demo",
        vpc_id=example_vpc.vpc_v1_id,
        subnets=subnet_ids.ids,
        routes=[
            {
                "destination": "172.16.0.0/16",
                "type": "peering",
                "nexthop": vpc_peering_id,
            },
            {
                "destination": "192.168.100.0/24",
                "type": "vip",
                "nexthop": "192.168.10.200",
            },
        ])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/flexibleengine/flexibleengine"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
    )
    func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
    cfg := config.New(ctx, "")
    vpcPeeringId := cfg.RequireObject("vpcPeeringId")
    exampleVpc, err := flexibleengine.NewVpcV1(ctx, "exampleVpc", &flexibleengine.VpcV1Args{
    Cidr: pulumi.String("192.168.0.0/16"),
    })
    if err != nil {
    return err
    }
    subnetIds := flexibleengine.GetVpcSubnetIdsV1Output(ctx, flexibleengine.GetVpcSubnetIdsV1OutputArgs{
    VpcId: exampleVpc.VpcV1Id,
    }, nil);
    _, err = flexibleengine.NewVpcRouteTable(ctx, "demo", &flexibleengine.VpcRouteTableArgs{
    VpcId: exampleVpc.VpcV1Id,
    Subnets: pulumi.StringArray(subnetIds.ApplyT(func(subnetIds flexibleengine.GetVpcSubnetIdsV1Result) (interface{}, error) {
    return subnetIds.Ids, nil
    }).(pulumi.Interface{}Output)),
    Routes: flexibleengine.VpcRouteTableRouteArray{
    &flexibleengine.VpcRouteTableRouteArgs{
    Destination: pulumi.String("172.16.0.0/16"),
    Type: pulumi.String("peering"),
    Nexthop: pulumi.Any(vpcPeeringId),
    },
    &flexibleengine.VpcRouteTableRouteArgs{
    Destination: pulumi.String("192.168.100.0/24"),
    Type: pulumi.String("vip"),
    Nexthop: pulumi.String("192.168.10.200"),
    },
    },
    })
    if err != nil {
    return err
    }
    return nil
    })
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Flexibleengine = Pulumi.Flexibleengine;
    
    return await Deployment.RunAsync(() => 
    {
        var config = new Config();
        var vpcPeeringId = config.RequireObject<dynamic>("vpcPeeringId");
        var exampleVpc = new Flexibleengine.VpcV1("exampleVpc", new()
        {
            Cidr = "192.168.0.0/16",
        });
    
        var subnetIds = Flexibleengine.GetVpcSubnetIdsV1.Invoke(new()
        {
            VpcId = exampleVpc.VpcV1Id,
        });
    
        var demo = new Flexibleengine.VpcRouteTable("demo", new()
        {
            VpcId = exampleVpc.VpcV1Id,
            Subnets = subnetIds.Apply(getVpcSubnetIdsV1Result => getVpcSubnetIdsV1Result.Ids),
            Routes = new[]
            {
                new Flexibleengine.Inputs.VpcRouteTableRouteArgs
                {
                    Destination = "172.16.0.0/16",
                    Type = "peering",
                    Nexthop = vpcPeeringId,
                },
                new Flexibleengine.Inputs.VpcRouteTableRouteArgs
                {
                    Destination = "192.168.100.0/24",
                    Type = "vip",
                    Nexthop = "192.168.10.200",
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.flexibleengine.VpcV1;
    import com.pulumi.flexibleengine.VpcV1Args;
    import com.pulumi.flexibleengine.FlexibleengineFunctions;
    import com.pulumi.flexibleengine.inputs.GetVpcSubnetIdsV1Args;
    import com.pulumi.flexibleengine.VpcRouteTable;
    import com.pulumi.flexibleengine.VpcRouteTableArgs;
    import com.pulumi.flexibleengine.inputs.VpcRouteTableRouteArgs;
    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) {
            final var config = ctx.config();
            final var vpcPeeringId = config.get("vpcPeeringId");
            var exampleVpc = new VpcV1("exampleVpc", VpcV1Args.builder()
                .cidr("192.168.0.0/16")
                .build());
    
            final var subnetIds = FlexibleengineFunctions.getVpcSubnetIdsV1(GetVpcSubnetIdsV1Args.builder()
                .vpcId(exampleVpc.vpcV1Id())
                .build());
    
            var demo = new VpcRouteTable("demo", VpcRouteTableArgs.builder()
                .vpcId(exampleVpc.vpcV1Id())
                .subnets(subnetIds.applyValue(getVpcSubnetIdsV1Result -> getVpcSubnetIdsV1Result).applyValue(subnetIds -> subnetIds.applyValue(getVpcSubnetIdsV1Result -> getVpcSubnetIdsV1Result.ids())))
                .routes(            
                    VpcRouteTableRouteArgs.builder()
                        .destination("172.16.0.0/16")
                        .type("peering")
                        .nexthop(vpcPeeringId)
                        .build(),
                    VpcRouteTableRouteArgs.builder()
                        .destination("192.168.100.0/24")
                        .type("vip")
                        .nexthop("192.168.10.200")
                        .build())
                .build());
    
        }
    }
    
    configuration:
      vpcPeeringId:
        type: dynamic
    resources:
      exampleVpc:
        type: flexibleengine:VpcV1
        properties:
          cidr: 192.168.0.0/16
      demo:
        type: flexibleengine:VpcRouteTable
        properties:
          vpcId: ${exampleVpc.vpcV1Id}
          subnets: ${subnetIds.ids}
          routes:
            - destination: 172.16.0.0/16
              type: peering
              nexthop: ${vpcPeeringId}
            - destination: 192.168.100.0/24
              type: vip
              nexthop: 192.168.10.200
    variables:
      subnetIds:
        fn::invoke:
          function: flexibleengine:getVpcSubnetIdsV1
          arguments:
            vpcId: ${exampleVpc.vpcV1Id}
    

    Create VpcRouteTable Resource

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

    Constructor syntax

    new VpcRouteTable(name: string, args: VpcRouteTableArgs, opts?: CustomResourceOptions);
    @overload
    def VpcRouteTable(resource_name: str,
                      args: VpcRouteTableArgs,
                      opts: Optional[ResourceOptions] = None)
    
    @overload
    def VpcRouteTable(resource_name: str,
                      opts: Optional[ResourceOptions] = None,
                      vpc_id: Optional[str] = None,
                      description: Optional[str] = None,
                      name: Optional[str] = None,
                      region: Optional[str] = None,
                      routes: Optional[Sequence[VpcRouteTableRouteArgs]] = None,
                      subnets: Optional[Sequence[str]] = None,
                      timeouts: Optional[VpcRouteTableTimeoutsArgs] = None,
                      vpc_route_table_id: Optional[str] = None)
    func NewVpcRouteTable(ctx *Context, name string, args VpcRouteTableArgs, opts ...ResourceOption) (*VpcRouteTable, error)
    public VpcRouteTable(string name, VpcRouteTableArgs args, CustomResourceOptions? opts = null)
    public VpcRouteTable(String name, VpcRouteTableArgs args)
    public VpcRouteTable(String name, VpcRouteTableArgs args, CustomResourceOptions options)
    
    type: flexibleengine:VpcRouteTable
    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 VpcRouteTableArgs
    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 VpcRouteTableArgs
    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 VpcRouteTableArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args VpcRouteTableArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args VpcRouteTableArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

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

    var vpcRouteTableResource = new Flexibleengine.VpcRouteTable("vpcRouteTableResource", new()
    {
        VpcId = "string",
        Description = "string",
        Name = "string",
        Region = "string",
        Routes = new[]
        {
            new Flexibleengine.Inputs.VpcRouteTableRouteArgs
            {
                Destination = "string",
                Nexthop = "string",
                Type = "string",
                Description = "string",
            },
        },
        Subnets = new[]
        {
            "string",
        },
        Timeouts = new Flexibleengine.Inputs.VpcRouteTableTimeoutsArgs
        {
            Create = "string",
            Delete = "string",
        },
        VpcRouteTableId = "string",
    });
    
    example, err := flexibleengine.NewVpcRouteTable(ctx, "vpcRouteTableResource", &flexibleengine.VpcRouteTableArgs{
    	VpcId:       pulumi.String("string"),
    	Description: pulumi.String("string"),
    	Name:        pulumi.String("string"),
    	Region:      pulumi.String("string"),
    	Routes: flexibleengine.VpcRouteTableRouteArray{
    		&flexibleengine.VpcRouteTableRouteArgs{
    			Destination: pulumi.String("string"),
    			Nexthop:     pulumi.String("string"),
    			Type:        pulumi.String("string"),
    			Description: pulumi.String("string"),
    		},
    	},
    	Subnets: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Timeouts: &flexibleengine.VpcRouteTableTimeoutsArgs{
    		Create: pulumi.String("string"),
    		Delete: pulumi.String("string"),
    	},
    	VpcRouteTableId: pulumi.String("string"),
    })
    
    var vpcRouteTableResource = new VpcRouteTable("vpcRouteTableResource", VpcRouteTableArgs.builder()
        .vpcId("string")
        .description("string")
        .name("string")
        .region("string")
        .routes(VpcRouteTableRouteArgs.builder()
            .destination("string")
            .nexthop("string")
            .type("string")
            .description("string")
            .build())
        .subnets("string")
        .timeouts(VpcRouteTableTimeoutsArgs.builder()
            .create("string")
            .delete("string")
            .build())
        .vpcRouteTableId("string")
        .build());
    
    vpc_route_table_resource = flexibleengine.VpcRouteTable("vpcRouteTableResource",
        vpc_id="string",
        description="string",
        name="string",
        region="string",
        routes=[{
            "destination": "string",
            "nexthop": "string",
            "type": "string",
            "description": "string",
        }],
        subnets=["string"],
        timeouts={
            "create": "string",
            "delete": "string",
        },
        vpc_route_table_id="string")
    
    const vpcRouteTableResource = new flexibleengine.VpcRouteTable("vpcRouteTableResource", {
        vpcId: "string",
        description: "string",
        name: "string",
        region: "string",
        routes: [{
            destination: "string",
            nexthop: "string",
            type: "string",
            description: "string",
        }],
        subnets: ["string"],
        timeouts: {
            create: "string",
            "delete": "string",
        },
        vpcRouteTableId: "string",
    });
    
    type: flexibleengine:VpcRouteTable
    properties:
        description: string
        name: string
        region: string
        routes:
            - description: string
              destination: string
              nexthop: string
              type: string
        subnets:
            - string
        timeouts:
            create: string
            delete: string
        vpcId: string
        vpcRouteTableId: string
    

    VpcRouteTable Resource Properties

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

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The VpcRouteTable resource accepts the following input properties:

    VpcId string
    Specifies the VPC ID for which a route table is to be added. Changing this creates a new resource.
    Description string
    Specifies the supplementary information about the route. The value is a string of no more than 255 characters and cannot contain angle brackets (< or >).
    Name string
    Specifies the route table name. The value is a string of no more than 64 characters that can contain letters, digits, underscores (_), hyphens (-), and periods (.).
    Region string
    The region in which to create the vpc route table. If omitted, the provider-level region will be used. Changing this creates a new resource.
    Routes List<VpcRouteTableRoute>

    Specifies the route object list. The route object is documented below.

    The route block supports:

    Subnets List<string>

    Specifies an array of one or more subnets associating with the route table.

    NOTE: The custom route table associated with a subnet affects only the outbound traffic. The default route table determines the inbound traffic.

    Timeouts VpcRouteTableTimeouts
    VpcRouteTableId string
    The resource ID in UUID format.
    VpcId string
    Specifies the VPC ID for which a route table is to be added. Changing this creates a new resource.
    Description string
    Specifies the supplementary information about the route. The value is a string of no more than 255 characters and cannot contain angle brackets (< or >).
    Name string
    Specifies the route table name. The value is a string of no more than 64 characters that can contain letters, digits, underscores (_), hyphens (-), and periods (.).
    Region string
    The region in which to create the vpc route table. If omitted, the provider-level region will be used. Changing this creates a new resource.
    Routes []VpcRouteTableRouteArgs

    Specifies the route object list. The route object is documented below.

    The route block supports:

    Subnets []string

    Specifies an array of one or more subnets associating with the route table.

    NOTE: The custom route table associated with a subnet affects only the outbound traffic. The default route table determines the inbound traffic.

    Timeouts VpcRouteTableTimeoutsArgs
    VpcRouteTableId string
    The resource ID in UUID format.
    vpcId String
    Specifies the VPC ID for which a route table is to be added. Changing this creates a new resource.
    description String
    Specifies the supplementary information about the route. The value is a string of no more than 255 characters and cannot contain angle brackets (< or >).
    name String
    Specifies the route table name. The value is a string of no more than 64 characters that can contain letters, digits, underscores (_), hyphens (-), and periods (.).
    region String
    The region in which to create the vpc route table. If omitted, the provider-level region will be used. Changing this creates a new resource.
    routes List<VpcRouteTableRoute>

    Specifies the route object list. The route object is documented below.

    The route block supports:

    subnets List<String>

    Specifies an array of one or more subnets associating with the route table.

    NOTE: The custom route table associated with a subnet affects only the outbound traffic. The default route table determines the inbound traffic.

    timeouts VpcRouteTableTimeouts
    vpcRouteTableId String
    The resource ID in UUID format.
    vpcId string
    Specifies the VPC ID for which a route table is to be added. Changing this creates a new resource.
    description string
    Specifies the supplementary information about the route. The value is a string of no more than 255 characters and cannot contain angle brackets (< or >).
    name string
    Specifies the route table name. The value is a string of no more than 64 characters that can contain letters, digits, underscores (_), hyphens (-), and periods (.).
    region string
    The region in which to create the vpc route table. If omitted, the provider-level region will be used. Changing this creates a new resource.
    routes VpcRouteTableRoute[]

    Specifies the route object list. The route object is documented below.

    The route block supports:

    subnets string[]

    Specifies an array of one or more subnets associating with the route table.

    NOTE: The custom route table associated with a subnet affects only the outbound traffic. The default route table determines the inbound traffic.

    timeouts VpcRouteTableTimeouts
    vpcRouteTableId string
    The resource ID in UUID format.
    vpc_id str
    Specifies the VPC ID for which a route table is to be added. Changing this creates a new resource.
    description str
    Specifies the supplementary information about the route. The value is a string of no more than 255 characters and cannot contain angle brackets (< or >).
    name str
    Specifies the route table name. The value is a string of no more than 64 characters that can contain letters, digits, underscores (_), hyphens (-), and periods (.).
    region str
    The region in which to create the vpc route table. If omitted, the provider-level region will be used. Changing this creates a new resource.
    routes Sequence[VpcRouteTableRouteArgs]

    Specifies the route object list. The route object is documented below.

    The route block supports:

    subnets Sequence[str]

    Specifies an array of one or more subnets associating with the route table.

    NOTE: The custom route table associated with a subnet affects only the outbound traffic. The default route table determines the inbound traffic.

    timeouts VpcRouteTableTimeoutsArgs
    vpc_route_table_id str
    The resource ID in UUID format.
    vpcId String
    Specifies the VPC ID for which a route table is to be added. Changing this creates a new resource.
    description String
    Specifies the supplementary information about the route. The value is a string of no more than 255 characters and cannot contain angle brackets (< or >).
    name String
    Specifies the route table name. The value is a string of no more than 64 characters that can contain letters, digits, underscores (_), hyphens (-), and periods (.).
    region String
    The region in which to create the vpc route table. If omitted, the provider-level region will be used. Changing this creates a new resource.
    routes List<Property Map>

    Specifies the route object list. The route object is documented below.

    The route block supports:

    subnets List<String>

    Specifies an array of one or more subnets associating with the route table.

    NOTE: The custom route table associated with a subnet affects only the outbound traffic. The default route table determines the inbound traffic.

    timeouts Property Map
    vpcRouteTableId String
    The resource ID in UUID format.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the VpcRouteTable 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 VpcRouteTable Resource

    Get an existing VpcRouteTable 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?: VpcRouteTableState, opts?: CustomResourceOptions): VpcRouteTable
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            description: Optional[str] = None,
            name: Optional[str] = None,
            region: Optional[str] = None,
            routes: Optional[Sequence[VpcRouteTableRouteArgs]] = None,
            subnets: Optional[Sequence[str]] = None,
            timeouts: Optional[VpcRouteTableTimeoutsArgs] = None,
            vpc_id: Optional[str] = None,
            vpc_route_table_id: Optional[str] = None) -> VpcRouteTable
    func GetVpcRouteTable(ctx *Context, name string, id IDInput, state *VpcRouteTableState, opts ...ResourceOption) (*VpcRouteTable, error)
    public static VpcRouteTable Get(string name, Input<string> id, VpcRouteTableState? state, CustomResourceOptions? opts = null)
    public static VpcRouteTable get(String name, Output<String> id, VpcRouteTableState state, CustomResourceOptions options)
    resources:  _:    type: flexibleengine:VpcRouteTable    get:      id: ${id}
    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:
    Description string
    Specifies the supplementary information about the route. The value is a string of no more than 255 characters and cannot contain angle brackets (< or >).
    Name string
    Specifies the route table name. The value is a string of no more than 64 characters that can contain letters, digits, underscores (_), hyphens (-), and periods (.).
    Region string
    The region in which to create the vpc route table. If omitted, the provider-level region will be used. Changing this creates a new resource.
    Routes List<VpcRouteTableRoute>

    Specifies the route object list. The route object is documented below.

    The route block supports:

    Subnets List<string>

    Specifies an array of one or more subnets associating with the route table.

    NOTE: The custom route table associated with a subnet affects only the outbound traffic. The default route table determines the inbound traffic.

    Timeouts VpcRouteTableTimeouts
    VpcId string
    Specifies the VPC ID for which a route table is to be added. Changing this creates a new resource.
    VpcRouteTableId string
    The resource ID in UUID format.
    Description string
    Specifies the supplementary information about the route. The value is a string of no more than 255 characters and cannot contain angle brackets (< or >).
    Name string
    Specifies the route table name. The value is a string of no more than 64 characters that can contain letters, digits, underscores (_), hyphens (-), and periods (.).
    Region string
    The region in which to create the vpc route table. If omitted, the provider-level region will be used. Changing this creates a new resource.
    Routes []VpcRouteTableRouteArgs

    Specifies the route object list. The route object is documented below.

    The route block supports:

    Subnets []string

    Specifies an array of one or more subnets associating with the route table.

    NOTE: The custom route table associated with a subnet affects only the outbound traffic. The default route table determines the inbound traffic.

    Timeouts VpcRouteTableTimeoutsArgs
    VpcId string
    Specifies the VPC ID for which a route table is to be added. Changing this creates a new resource.
    VpcRouteTableId string
    The resource ID in UUID format.
    description String
    Specifies the supplementary information about the route. The value is a string of no more than 255 characters and cannot contain angle brackets (< or >).
    name String
    Specifies the route table name. The value is a string of no more than 64 characters that can contain letters, digits, underscores (_), hyphens (-), and periods (.).
    region String
    The region in which to create the vpc route table. If omitted, the provider-level region will be used. Changing this creates a new resource.
    routes List<VpcRouteTableRoute>

    Specifies the route object list. The route object is documented below.

    The route block supports:

    subnets List<String>

    Specifies an array of one or more subnets associating with the route table.

    NOTE: The custom route table associated with a subnet affects only the outbound traffic. The default route table determines the inbound traffic.

    timeouts VpcRouteTableTimeouts
    vpcId String
    Specifies the VPC ID for which a route table is to be added. Changing this creates a new resource.
    vpcRouteTableId String
    The resource ID in UUID format.
    description string
    Specifies the supplementary information about the route. The value is a string of no more than 255 characters and cannot contain angle brackets (< or >).
    name string
    Specifies the route table name. The value is a string of no more than 64 characters that can contain letters, digits, underscores (_), hyphens (-), and periods (.).
    region string
    The region in which to create the vpc route table. If omitted, the provider-level region will be used. Changing this creates a new resource.
    routes VpcRouteTableRoute[]

    Specifies the route object list. The route object is documented below.

    The route block supports:

    subnets string[]

    Specifies an array of one or more subnets associating with the route table.

    NOTE: The custom route table associated with a subnet affects only the outbound traffic. The default route table determines the inbound traffic.

    timeouts VpcRouteTableTimeouts
    vpcId string
    Specifies the VPC ID for which a route table is to be added. Changing this creates a new resource.
    vpcRouteTableId string
    The resource ID in UUID format.
    description str
    Specifies the supplementary information about the route. The value is a string of no more than 255 characters and cannot contain angle brackets (< or >).
    name str
    Specifies the route table name. The value is a string of no more than 64 characters that can contain letters, digits, underscores (_), hyphens (-), and periods (.).
    region str
    The region in which to create the vpc route table. If omitted, the provider-level region will be used. Changing this creates a new resource.
    routes Sequence[VpcRouteTableRouteArgs]

    Specifies the route object list. The route object is documented below.

    The route block supports:

    subnets Sequence[str]

    Specifies an array of one or more subnets associating with the route table.

    NOTE: The custom route table associated with a subnet affects only the outbound traffic. The default route table determines the inbound traffic.

    timeouts VpcRouteTableTimeoutsArgs
    vpc_id str
    Specifies the VPC ID for which a route table is to be added. Changing this creates a new resource.
    vpc_route_table_id str
    The resource ID in UUID format.
    description String
    Specifies the supplementary information about the route. The value is a string of no more than 255 characters and cannot contain angle brackets (< or >).
    name String
    Specifies the route table name. The value is a string of no more than 64 characters that can contain letters, digits, underscores (_), hyphens (-), and periods (.).
    region String
    The region in which to create the vpc route table. If omitted, the provider-level region will be used. Changing this creates a new resource.
    routes List<Property Map>

    Specifies the route object list. The route object is documented below.

    The route block supports:

    subnets List<String>

    Specifies an array of one or more subnets associating with the route table.

    NOTE: The custom route table associated with a subnet affects only the outbound traffic. The default route table determines the inbound traffic.

    timeouts Property Map
    vpcId String
    Specifies the VPC ID for which a route table is to be added. Changing this creates a new resource.
    vpcRouteTableId String
    The resource ID in UUID format.

    Supporting Types

    VpcRouteTableRoute, VpcRouteTableRouteArgs

    Destination string
    Specifies the destination address in the CIDR notation format, for example, 192.168.200.0/24. The destination of each route must be unique and cannot overlap with any subnet in the VPC.
    Nexthop string
    Specifies the next hop.

    • If the route type is ecs, the value is an ECS instance ID in the VPC.
    • If the route type is eni, the value is the extension NIC of an ECS in the VPC.
    • If the route type is vip, the value is a virtual IP address.
    • If the route type is nat, the value is a VPN gateway ID.
    • If the route type is peering, the value is a VPC peering connection ID.
    • If the route type is vpn, the value is a VPN gateway ID.
    • If the route type is dc, the value is a Direct Connect gateway ID.
    Type string
    Specifies the route type. Currently, the value can be: ecs, eni, vip, nat, peering, vpn and dc.
    Description string
    Specifies the supplementary information about the route. The value is a string of no more than 255 characters and cannot contain angle brackets (< or >).
    Destination string
    Specifies the destination address in the CIDR notation format, for example, 192.168.200.0/24. The destination of each route must be unique and cannot overlap with any subnet in the VPC.
    Nexthop string
    Specifies the next hop.

    • If the route type is ecs, the value is an ECS instance ID in the VPC.
    • If the route type is eni, the value is the extension NIC of an ECS in the VPC.
    • If the route type is vip, the value is a virtual IP address.
    • If the route type is nat, the value is a VPN gateway ID.
    • If the route type is peering, the value is a VPC peering connection ID.
    • If the route type is vpn, the value is a VPN gateway ID.
    • If the route type is dc, the value is a Direct Connect gateway ID.
    Type string
    Specifies the route type. Currently, the value can be: ecs, eni, vip, nat, peering, vpn and dc.
    Description string
    Specifies the supplementary information about the route. The value is a string of no more than 255 characters and cannot contain angle brackets (< or >).
    destination String
    Specifies the destination address in the CIDR notation format, for example, 192.168.200.0/24. The destination of each route must be unique and cannot overlap with any subnet in the VPC.
    nexthop String
    Specifies the next hop.

    • If the route type is ecs, the value is an ECS instance ID in the VPC.
    • If the route type is eni, the value is the extension NIC of an ECS in the VPC.
    • If the route type is vip, the value is a virtual IP address.
    • If the route type is nat, the value is a VPN gateway ID.
    • If the route type is peering, the value is a VPC peering connection ID.
    • If the route type is vpn, the value is a VPN gateway ID.
    • If the route type is dc, the value is a Direct Connect gateway ID.
    type String
    Specifies the route type. Currently, the value can be: ecs, eni, vip, nat, peering, vpn and dc.
    description String
    Specifies the supplementary information about the route. The value is a string of no more than 255 characters and cannot contain angle brackets (< or >).
    destination string
    Specifies the destination address in the CIDR notation format, for example, 192.168.200.0/24. The destination of each route must be unique and cannot overlap with any subnet in the VPC.
    nexthop string
    Specifies the next hop.

    • If the route type is ecs, the value is an ECS instance ID in the VPC.
    • If the route type is eni, the value is the extension NIC of an ECS in the VPC.
    • If the route type is vip, the value is a virtual IP address.
    • If the route type is nat, the value is a VPN gateway ID.
    • If the route type is peering, the value is a VPC peering connection ID.
    • If the route type is vpn, the value is a VPN gateway ID.
    • If the route type is dc, the value is a Direct Connect gateway ID.
    type string
    Specifies the route type. Currently, the value can be: ecs, eni, vip, nat, peering, vpn and dc.
    description string
    Specifies the supplementary information about the route. The value is a string of no more than 255 characters and cannot contain angle brackets (< or >).
    destination str
    Specifies the destination address in the CIDR notation format, for example, 192.168.200.0/24. The destination of each route must be unique and cannot overlap with any subnet in the VPC.
    nexthop str
    Specifies the next hop.

    • If the route type is ecs, the value is an ECS instance ID in the VPC.
    • If the route type is eni, the value is the extension NIC of an ECS in the VPC.
    • If the route type is vip, the value is a virtual IP address.
    • If the route type is nat, the value is a VPN gateway ID.
    • If the route type is peering, the value is a VPC peering connection ID.
    • If the route type is vpn, the value is a VPN gateway ID.
    • If the route type is dc, the value is a Direct Connect gateway ID.
    type str
    Specifies the route type. Currently, the value can be: ecs, eni, vip, nat, peering, vpn and dc.
    description str
    Specifies the supplementary information about the route. The value is a string of no more than 255 characters and cannot contain angle brackets (< or >).
    destination String
    Specifies the destination address in the CIDR notation format, for example, 192.168.200.0/24. The destination of each route must be unique and cannot overlap with any subnet in the VPC.
    nexthop String
    Specifies the next hop.

    • If the route type is ecs, the value is an ECS instance ID in the VPC.
    • If the route type is eni, the value is the extension NIC of an ECS in the VPC.
    • If the route type is vip, the value is a virtual IP address.
    • If the route type is nat, the value is a VPN gateway ID.
    • If the route type is peering, the value is a VPC peering connection ID.
    • If the route type is vpn, the value is a VPN gateway ID.
    • If the route type is dc, the value is a Direct Connect gateway ID.
    type String
    Specifies the route type. Currently, the value can be: ecs, eni, vip, nat, peering, vpn and dc.
    description String
    Specifies the supplementary information about the route. The value is a string of no more than 255 characters and cannot contain angle brackets (< or >).

    VpcRouteTableTimeouts, VpcRouteTableTimeoutsArgs

    Create string
    Delete string
    Create string
    Delete string
    create String
    delete String
    create string
    delete string
    create str
    delete str
    create String
    delete String

    Import

    vpc route tables can be imported using the id, e.g.

    $ pulumi import flexibleengine:index/vpcRouteTable:VpcRouteTable demo e1b3208a-544b-42a7-84e6-5d70371dd982
    

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

    Package Details

    Repository
    flexibleengine flexibleenginecloud/terraform-provider-flexibleengine
    License
    Notes
    This Pulumi package is based on the flexibleengine Terraform Provider.
    flexibleengine logo
    flexibleengine 1.46.0 published on Monday, Apr 14, 2025 by flexibleenginecloud