1. Packages
  2. Tencentcloud Provider
  3. API Docs
  4. RouteTableEntry
tencentcloud 1.81.187 published on Monday, Apr 28, 2025 by tencentcloudstack

tencentcloud.RouteTableEntry

Explore with Pulumi AI

Provides a resource to create an entry of a routing table.

NOTE: When setting the route item switch, do not use it together with resource tencentcloud.RouteTableEntryConfig.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as tencentcloud from "@pulumi/tencentcloud";

const config = new pulumi.Config();
const availabilityZone = config.get("availabilityZone") || "ap-guangzhou-4";
// create vpc
const vpc = new tencentcloud.Vpc("vpc", {cidrBlock: "10.0.0.0/16"});
// create route table
const exampleRouteTable = new tencentcloud.RouteTable("exampleRouteTable", {vpcId: vpc.vpcId});
// create subnet
const subnet = new tencentcloud.Subnet("subnet", {
    vpcId: vpc.vpcId,
    cidrBlock: "10.0.12.0/24",
    availabilityZone: availabilityZone,
    routeTableId: exampleRouteTable.routeTableId,
});
// create route table entry
const exampleRouteTableEntry = new tencentcloud.RouteTableEntry("exampleRouteTableEntry", {
    routeTableId: exampleRouteTable.routeTableId,
    destinationCidrBlock: "10.12.12.0/24",
    nextType: "EIP",
    nextHub: "0",
    description: "Terraform test.",
});
export const itemId = exampleRouteTableEntry.routeItemId;
Copy
import pulumi
import pulumi_tencentcloud as tencentcloud

config = pulumi.Config()
availability_zone = config.get("availabilityZone")
if availability_zone is None:
    availability_zone = "ap-guangzhou-4"
# create vpc
vpc = tencentcloud.Vpc("vpc", cidr_block="10.0.0.0/16")
# create route table
example_route_table = tencentcloud.RouteTable("exampleRouteTable", vpc_id=vpc.vpc_id)
# create subnet
subnet = tencentcloud.Subnet("subnet",
    vpc_id=vpc.vpc_id,
    cidr_block="10.0.12.0/24",
    availability_zone=availability_zone,
    route_table_id=example_route_table.route_table_id)
# create route table entry
example_route_table_entry = tencentcloud.RouteTableEntry("exampleRouteTableEntry",
    route_table_id=example_route_table.route_table_id,
    destination_cidr_block="10.12.12.0/24",
    next_type="EIP",
    next_hub="0",
    description="Terraform test.")
pulumi.export("itemId", example_route_table_entry.route_item_id)
Copy
package main

import (
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/tencentcloud/tencentcloud"
	"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, "")
		availabilityZone := "ap-guangzhou-4"
		if param := cfg.Get("availabilityZone"); param != "" {
			availabilityZone = param
		}
		// create vpc
		vpc, err := tencentcloud.NewVpc(ctx, "vpc", &tencentcloud.VpcArgs{
			CidrBlock: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		// create route table
		exampleRouteTable, err := tencentcloud.NewRouteTable(ctx, "exampleRouteTable", &tencentcloud.RouteTableArgs{
			VpcId: vpc.VpcId,
		})
		if err != nil {
			return err
		}
		// create subnet
		_, err = tencentcloud.NewSubnet(ctx, "subnet", &tencentcloud.SubnetArgs{
			VpcId:            vpc.VpcId,
			CidrBlock:        pulumi.String("10.0.12.0/24"),
			AvailabilityZone: pulumi.String(availabilityZone),
			RouteTableId:     exampleRouteTable.RouteTableId,
		})
		if err != nil {
			return err
		}
		// create route table entry
		exampleRouteTableEntry, err := tencentcloud.NewRouteTableEntry(ctx, "exampleRouteTableEntry", &tencentcloud.RouteTableEntryArgs{
			RouteTableId:         exampleRouteTable.RouteTableId,
			DestinationCidrBlock: pulumi.String("10.12.12.0/24"),
			NextType:             pulumi.String("EIP"),
			NextHub:              pulumi.String("0"),
			Description:          pulumi.String("Terraform test."),
		})
		if err != nil {
			return err
		}
		ctx.Export("itemId", exampleRouteTableEntry.RouteItemId)
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Tencentcloud = Pulumi.Tencentcloud;

return await Deployment.RunAsync(() => 
{
    var config = new Config();
    var availabilityZone = config.Get("availabilityZone") ?? "ap-guangzhou-4";
    // create vpc
    var vpc = new Tencentcloud.Vpc("vpc", new()
    {
        CidrBlock = "10.0.0.0/16",
    });

    // create route table
    var exampleRouteTable = new Tencentcloud.RouteTable("exampleRouteTable", new()
    {
        VpcId = vpc.VpcId,
    });

    // create subnet
    var subnet = new Tencentcloud.Subnet("subnet", new()
    {
        VpcId = vpc.VpcId,
        CidrBlock = "10.0.12.0/24",
        AvailabilityZone = availabilityZone,
        RouteTableId = exampleRouteTable.RouteTableId,
    });

    // create route table entry
    var exampleRouteTableEntry = new Tencentcloud.RouteTableEntry("exampleRouteTableEntry", new()
    {
        RouteTableId = exampleRouteTable.RouteTableId,
        DestinationCidrBlock = "10.12.12.0/24",
        NextType = "EIP",
        NextHub = "0",
        Description = "Terraform test.",
    });

    return new Dictionary<string, object?>
    {
        ["itemId"] = exampleRouteTableEntry.RouteItemId,
    };
});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.tencentcloud.Vpc;
import com.pulumi.tencentcloud.VpcArgs;
import com.pulumi.tencentcloud.RouteTable;
import com.pulumi.tencentcloud.RouteTableArgs;
import com.pulumi.tencentcloud.Subnet;
import com.pulumi.tencentcloud.SubnetArgs;
import com.pulumi.tencentcloud.RouteTableEntry;
import com.pulumi.tencentcloud.RouteTableEntryArgs;
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 availabilityZone = config.get("availabilityZone").orElse("ap-guangzhou-4");
        // create vpc
        var vpc = new Vpc("vpc", VpcArgs.builder()
            .cidrBlock("10.0.0.0/16")
            .build());

        // create route table
        var exampleRouteTable = new RouteTable("exampleRouteTable", RouteTableArgs.builder()
            .vpcId(vpc.vpcId())
            .build());

        // create subnet
        var subnet = new Subnet("subnet", SubnetArgs.builder()
            .vpcId(vpc.vpcId())
            .cidrBlock("10.0.12.0/24")
            .availabilityZone(availabilityZone)
            .routeTableId(exampleRouteTable.routeTableId())
            .build());

        // create route table entry
        var exampleRouteTableEntry = new RouteTableEntry("exampleRouteTableEntry", RouteTableEntryArgs.builder()
            .routeTableId(exampleRouteTable.routeTableId())
            .destinationCidrBlock("10.12.12.0/24")
            .nextType("EIP")
            .nextHub("0")
            .description("Terraform test.")
            .build());

        ctx.export("itemId", exampleRouteTableEntry.routeItemId());
    }
}
Copy
configuration:
  availabilityZone:
    type: string
    default: ap-guangzhou-4
resources:
  # create vpc
  vpc:
    type: tencentcloud:Vpc
    properties:
      cidrBlock: 10.0.0.0/16
  # create route table
  exampleRouteTable:
    type: tencentcloud:RouteTable
    properties:
      vpcId: ${vpc.vpcId}
  # create subnet
  subnet:
    type: tencentcloud:Subnet
    properties:
      vpcId: ${vpc.vpcId}
      cidrBlock: 10.0.12.0/24
      availabilityZone: ${availabilityZone}
      routeTableId: ${exampleRouteTable.routeTableId}
  # create route table entry
  exampleRouteTableEntry:
    type: tencentcloud:RouteTableEntry
    properties:
      routeTableId: ${exampleRouteTable.routeTableId}
      destinationCidrBlock: 10.12.12.0/24
      nextType: EIP
      nextHub: '0'
      description: Terraform test.
outputs:
  # output
  itemId: ${exampleRouteTableEntry.routeItemId}
Copy

Create RouteTableEntry Resource

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

Constructor syntax

new RouteTableEntry(name: string, args: RouteTableEntryArgs, opts?: CustomResourceOptions);
@overload
def RouteTableEntry(resource_name: str,
                    args: RouteTableEntryArgs,
                    opts: Optional[ResourceOptions] = None)

@overload
def RouteTableEntry(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    destination_cidr_block: Optional[str] = None,
                    next_hub: Optional[str] = None,
                    next_type: Optional[str] = None,
                    route_table_id: Optional[str] = None,
                    description: Optional[str] = None,
                    disabled: Optional[bool] = None,
                    route_table_entry_id: Optional[str] = None)
func NewRouteTableEntry(ctx *Context, name string, args RouteTableEntryArgs, opts ...ResourceOption) (*RouteTableEntry, error)
public RouteTableEntry(string name, RouteTableEntryArgs args, CustomResourceOptions? opts = null)
public RouteTableEntry(String name, RouteTableEntryArgs args)
public RouteTableEntry(String name, RouteTableEntryArgs args, CustomResourceOptions options)
type: tencentcloud:RouteTableEntry
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. RouteTableEntryArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. RouteTableEntryArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. RouteTableEntryArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. RouteTableEntryArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. RouteTableEntryArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

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

DestinationCidrBlock This property is required. string
Destination address block.
NextHub This property is required. string
ID of next-hop gateway. Note: when next_type is EIP, next_hub should be 0.
NextType This property is required. string
Type of next-hop. Valid values: CVM, VPN, DIRECTCONNECT, PEERCONNECTION, HAVIP, NAT, NORMAL_CVM, EIP, LOCAL_GATEWAY, INTRANAT and USER_CCN.
RouteTableId This property is required. string
ID of routing table to which this entry belongs.
Description string
Description of the routing table entry.
Disabled bool
Whether the entry is disabled, default is false.
RouteTableEntryId string
ID of the resource.
DestinationCidrBlock This property is required. string
Destination address block.
NextHub This property is required. string
ID of next-hop gateway. Note: when next_type is EIP, next_hub should be 0.
NextType This property is required. string
Type of next-hop. Valid values: CVM, VPN, DIRECTCONNECT, PEERCONNECTION, HAVIP, NAT, NORMAL_CVM, EIP, LOCAL_GATEWAY, INTRANAT and USER_CCN.
RouteTableId This property is required. string
ID of routing table to which this entry belongs.
Description string
Description of the routing table entry.
Disabled bool
Whether the entry is disabled, default is false.
RouteTableEntryId string
ID of the resource.
destinationCidrBlock This property is required. String
Destination address block.
nextHub This property is required. String
ID of next-hop gateway. Note: when next_type is EIP, next_hub should be 0.
nextType This property is required. String
Type of next-hop. Valid values: CVM, VPN, DIRECTCONNECT, PEERCONNECTION, HAVIP, NAT, NORMAL_CVM, EIP, LOCAL_GATEWAY, INTRANAT and USER_CCN.
routeTableId This property is required. String
ID of routing table to which this entry belongs.
description String
Description of the routing table entry.
disabled Boolean
Whether the entry is disabled, default is false.
routeTableEntryId String
ID of the resource.
destinationCidrBlock This property is required. string
Destination address block.
nextHub This property is required. string
ID of next-hop gateway. Note: when next_type is EIP, next_hub should be 0.
nextType This property is required. string
Type of next-hop. Valid values: CVM, VPN, DIRECTCONNECT, PEERCONNECTION, HAVIP, NAT, NORMAL_CVM, EIP, LOCAL_GATEWAY, INTRANAT and USER_CCN.
routeTableId This property is required. string
ID of routing table to which this entry belongs.
description string
Description of the routing table entry.
disabled boolean
Whether the entry is disabled, default is false.
routeTableEntryId string
ID of the resource.
destination_cidr_block This property is required. str
Destination address block.
next_hub This property is required. str
ID of next-hop gateway. Note: when next_type is EIP, next_hub should be 0.
next_type This property is required. str
Type of next-hop. Valid values: CVM, VPN, DIRECTCONNECT, PEERCONNECTION, HAVIP, NAT, NORMAL_CVM, EIP, LOCAL_GATEWAY, INTRANAT and USER_CCN.
route_table_id This property is required. str
ID of routing table to which this entry belongs.
description str
Description of the routing table entry.
disabled bool
Whether the entry is disabled, default is false.
route_table_entry_id str
ID of the resource.
destinationCidrBlock This property is required. String
Destination address block.
nextHub This property is required. String
ID of next-hop gateway. Note: when next_type is EIP, next_hub should be 0.
nextType This property is required. String
Type of next-hop. Valid values: CVM, VPN, DIRECTCONNECT, PEERCONNECTION, HAVIP, NAT, NORMAL_CVM, EIP, LOCAL_GATEWAY, INTRANAT and USER_CCN.
routeTableId This property is required. String
ID of routing table to which this entry belongs.
description String
Description of the routing table entry.
disabled Boolean
Whether the entry is disabled, default is false.
routeTableEntryId String
ID of the resource.

Outputs

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

Id string
The provider-assigned unique ID for this managed resource.
RouteItemId string
ID of route table entry.
Id string
The provider-assigned unique ID for this managed resource.
RouteItemId string
ID of route table entry.
id String
The provider-assigned unique ID for this managed resource.
routeItemId String
ID of route table entry.
id string
The provider-assigned unique ID for this managed resource.
routeItemId string
ID of route table entry.
id str
The provider-assigned unique ID for this managed resource.
route_item_id str
ID of route table entry.
id String
The provider-assigned unique ID for this managed resource.
routeItemId String
ID of route table entry.

Look up Existing RouteTableEntry Resource

Get an existing RouteTableEntry 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?: RouteTableEntryState, opts?: CustomResourceOptions): RouteTableEntry
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        description: Optional[str] = None,
        destination_cidr_block: Optional[str] = None,
        disabled: Optional[bool] = None,
        next_hub: Optional[str] = None,
        next_type: Optional[str] = None,
        route_item_id: Optional[str] = None,
        route_table_entry_id: Optional[str] = None,
        route_table_id: Optional[str] = None) -> RouteTableEntry
func GetRouteTableEntry(ctx *Context, name string, id IDInput, state *RouteTableEntryState, opts ...ResourceOption) (*RouteTableEntry, error)
public static RouteTableEntry Get(string name, Input<string> id, RouteTableEntryState? state, CustomResourceOptions? opts = null)
public static RouteTableEntry get(String name, Output<String> id, RouteTableEntryState state, CustomResourceOptions options)
resources:  _:    type: tencentcloud:RouteTableEntry    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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
Description of the routing table entry.
DestinationCidrBlock string
Destination address block.
Disabled bool
Whether the entry is disabled, default is false.
NextHub string
ID of next-hop gateway. Note: when next_type is EIP, next_hub should be 0.
NextType string
Type of next-hop. Valid values: CVM, VPN, DIRECTCONNECT, PEERCONNECTION, HAVIP, NAT, NORMAL_CVM, EIP, LOCAL_GATEWAY, INTRANAT and USER_CCN.
RouteItemId string
ID of route table entry.
RouteTableEntryId string
ID of the resource.
RouteTableId string
ID of routing table to which this entry belongs.
Description string
Description of the routing table entry.
DestinationCidrBlock string
Destination address block.
Disabled bool
Whether the entry is disabled, default is false.
NextHub string
ID of next-hop gateway. Note: when next_type is EIP, next_hub should be 0.
NextType string
Type of next-hop. Valid values: CVM, VPN, DIRECTCONNECT, PEERCONNECTION, HAVIP, NAT, NORMAL_CVM, EIP, LOCAL_GATEWAY, INTRANAT and USER_CCN.
RouteItemId string
ID of route table entry.
RouteTableEntryId string
ID of the resource.
RouteTableId string
ID of routing table to which this entry belongs.
description String
Description of the routing table entry.
destinationCidrBlock String
Destination address block.
disabled Boolean
Whether the entry is disabled, default is false.
nextHub String
ID of next-hop gateway. Note: when next_type is EIP, next_hub should be 0.
nextType String
Type of next-hop. Valid values: CVM, VPN, DIRECTCONNECT, PEERCONNECTION, HAVIP, NAT, NORMAL_CVM, EIP, LOCAL_GATEWAY, INTRANAT and USER_CCN.
routeItemId String
ID of route table entry.
routeTableEntryId String
ID of the resource.
routeTableId String
ID of routing table to which this entry belongs.
description string
Description of the routing table entry.
destinationCidrBlock string
Destination address block.
disabled boolean
Whether the entry is disabled, default is false.
nextHub string
ID of next-hop gateway. Note: when next_type is EIP, next_hub should be 0.
nextType string
Type of next-hop. Valid values: CVM, VPN, DIRECTCONNECT, PEERCONNECTION, HAVIP, NAT, NORMAL_CVM, EIP, LOCAL_GATEWAY, INTRANAT and USER_CCN.
routeItemId string
ID of route table entry.
routeTableEntryId string
ID of the resource.
routeTableId string
ID of routing table to which this entry belongs.
description str
Description of the routing table entry.
destination_cidr_block str
Destination address block.
disabled bool
Whether the entry is disabled, default is false.
next_hub str
ID of next-hop gateway. Note: when next_type is EIP, next_hub should be 0.
next_type str
Type of next-hop. Valid values: CVM, VPN, DIRECTCONNECT, PEERCONNECTION, HAVIP, NAT, NORMAL_CVM, EIP, LOCAL_GATEWAY, INTRANAT and USER_CCN.
route_item_id str
ID of route table entry.
route_table_entry_id str
ID of the resource.
route_table_id str
ID of routing table to which this entry belongs.
description String
Description of the routing table entry.
destinationCidrBlock String
Destination address block.
disabled Boolean
Whether the entry is disabled, default is false.
nextHub String
ID of next-hop gateway. Note: when next_type is EIP, next_hub should be 0.
nextType String
Type of next-hop. Valid values: CVM, VPN, DIRECTCONNECT, PEERCONNECTION, HAVIP, NAT, NORMAL_CVM, EIP, LOCAL_GATEWAY, INTRANAT and USER_CCN.
routeItemId String
ID of route table entry.
routeTableEntryId String
ID of the resource.
routeTableId String
ID of routing table to which this entry belongs.

Import

Route table entry can be imported using the id, e.g.

$ pulumi import tencentcloud:index/routeTableEntry:RouteTableEntry example 3065857.rtb-b050fg94
Copy

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

Package Details

Repository
tencentcloud tencentcloudstack/terraform-provider-tencentcloud
License
Notes
This Pulumi package is based on the tencentcloud Terraform Provider.