1. Packages
  2. Volcengine
  3. API Docs
  4. transit_router
  5. RouteEntry
Volcengine v0.0.26 published on Friday, Sep 13, 2024 by Volcengine

volcengine.transit_router.RouteEntry

Explore with Pulumi AI

volcengine logo
Volcengine v0.0.26 published on Friday, Sep 13, 2024 by Volcengine

    Provides a resource to manage transit router route entry

    Example Usage

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Volcengine = Pulumi.Volcengine;
    
    return await Deployment.RunAsync(() => 
    {
        var fooZones = Volcengine.Ecs.Zones.Invoke();
    
        var fooVpc = new Volcengine.Vpc.Vpc("fooVpc", new()
        {
            VpcName = "acc-test-vpc",
            CidrBlock = "172.16.0.0/16",
        });
    
        var fooSubnet = new Volcengine.Vpc.Subnet("fooSubnet", new()
        {
            SubnetName = "acc-test-subnet",
            CidrBlock = "172.16.0.0/24",
            ZoneId = fooZones.Apply(zonesResult => zonesResult.Zones[0]?.Id),
            VpcId = fooVpc.Id,
        });
    
        var fooGateway = new Volcengine.Vpn.Gateway("fooGateway", new()
        {
            VpcId = fooVpc.Id,
            SubnetId = fooSubnet.Id,
            Bandwidth = 20,
            VpnGatewayName = "acc-test",
            Description = "acc-test",
            Period = 2,
        });
    
        var fooCustomerGateway = new Volcengine.Vpn.CustomerGateway("fooCustomerGateway", new()
        {
            IpAddress = "192.0.1.3",
            CustomerGatewayName = "acc-test",
            Description = "acc-test",
        });
    
        var fooConnection = new Volcengine.Vpn.Connection("fooConnection", new()
        {
            VpnConnectionName = "acc-tf-test",
            Description = "acc-tf-test",
            AttachType = "TransitRouter",
            VpnGatewayId = fooGateway.Id,
            CustomerGatewayId = fooCustomerGateway.Id,
            LocalSubnets = new[]
            {
                "192.168.0.0/22",
            },
            RemoteSubnets = new[]
            {
                "192.161.0.0/20",
            },
            DpdAction = "none",
            NatTraversal = true,
            IkeConfigPsk = "acctest@!3",
            IkeConfigVersion = "ikev1",
            IkeConfigMode = "main",
            IkeConfigEncAlg = "aes",
            IkeConfigAuthAlg = "md5",
            IkeConfigDhGroup = "group2",
            IkeConfigLifetime = 9000,
            IkeConfigLocalId = "acc_test",
            IkeConfigRemoteId = "acc_test",
            IpsecConfigEncAlg = "aes",
            IpsecConfigAuthAlg = "sha256",
            IpsecConfigDhGroup = "group2",
            IpsecConfigLifetime = 9000,
            LogEnabled = false,
        });
    
        var fooTransitRouter = new Volcengine.Transit_router.TransitRouter("fooTransitRouter", new()
        {
            TransitRouterName = "test-tf-acc",
            Description = "test-tf-acc",
        });
    
        var fooVpnAttachment = new Volcengine.Transit_router.VpnAttachment("fooVpnAttachment", new()
        {
            ZoneId = "cn-beijing-a",
            TransitRouterAttachmentName = "tf-test-acc",
            Description = "tf-test-acc-desc",
            TransitRouterId = fooTransitRouter.Id,
            VpnConnectionId = fooConnection.Id,
        });
    
        var fooRouteTable = new Volcengine.Transit_router.RouteTable("fooRouteTable", new()
        {
            Description = "tf-test-acc-description-route-route-table",
            TransitRouterRouteTableName = "tf-table-test-acc",
            TransitRouterId = fooTransitRouter.Id,
        });
    
        var fooRouteEntry = new Volcengine.Transit_router.RouteEntry("fooRouteEntry", new()
        {
            Description = "tf-test-acc-description-entry",
            TransitRouterRouteEntryName = "tf-acc-test-entry",
            DestinationCidrBlock = "192.168.0.0/24",
            TransitRouterRouteEntryNextHopType = "Attachment",
            TransitRouterRouteTableId = fooRouteTable.TransitRouterRouteTableId,
            TransitRouterRouteEntryNextHopId = fooVpnAttachment.TransitRouterAttachmentId,
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/volcengine/pulumi-volcengine/sdk/go/volcengine/ecs"
    	"github.com/volcengine/pulumi-volcengine/sdk/go/volcengine/transit_router"
    	"github.com/volcengine/pulumi-volcengine/sdk/go/volcengine/vpc"
    	"github.com/volcengine/pulumi-volcengine/sdk/go/volcengine/vpn"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		fooZones, err := ecs.Zones(ctx, nil, nil)
    		if err != nil {
    			return err
    		}
    		fooVpc, err := vpc.NewVpc(ctx, "fooVpc", &vpc.VpcArgs{
    			VpcName:   pulumi.String("acc-test-vpc"),
    			CidrBlock: pulumi.String("172.16.0.0/16"),
    		})
    		if err != nil {
    			return err
    		}
    		fooSubnet, err := vpc.NewSubnet(ctx, "fooSubnet", &vpc.SubnetArgs{
    			SubnetName: pulumi.String("acc-test-subnet"),
    			CidrBlock:  pulumi.String("172.16.0.0/24"),
    			ZoneId:     *pulumi.String(fooZones.Zones[0].Id),
    			VpcId:      fooVpc.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		fooGateway, err := vpn.NewGateway(ctx, "fooGateway", &vpn.GatewayArgs{
    			VpcId:          fooVpc.ID(),
    			SubnetId:       fooSubnet.ID(),
    			Bandwidth:      pulumi.Int(20),
    			VpnGatewayName: pulumi.String("acc-test"),
    			Description:    pulumi.String("acc-test"),
    			Period:         pulumi.Int(2),
    		})
    		if err != nil {
    			return err
    		}
    		fooCustomerGateway, err := vpn.NewCustomerGateway(ctx, "fooCustomerGateway", &vpn.CustomerGatewayArgs{
    			IpAddress:           pulumi.String("192.0.1.3"),
    			CustomerGatewayName: pulumi.String("acc-test"),
    			Description:         pulumi.String("acc-test"),
    		})
    		if err != nil {
    			return err
    		}
    		fooConnection, err := vpn.NewConnection(ctx, "fooConnection", &vpn.ConnectionArgs{
    			VpnConnectionName: pulumi.String("acc-tf-test"),
    			Description:       pulumi.String("acc-tf-test"),
    			AttachType:        pulumi.String("TransitRouter"),
    			VpnGatewayId:      fooGateway.ID(),
    			CustomerGatewayId: fooCustomerGateway.ID(),
    			LocalSubnets: pulumi.StringArray{
    				pulumi.String("192.168.0.0/22"),
    			},
    			RemoteSubnets: pulumi.StringArray{
    				pulumi.String("192.161.0.0/20"),
    			},
    			DpdAction:           pulumi.String("none"),
    			NatTraversal:        pulumi.Bool(true),
    			IkeConfigPsk:        pulumi.String("acctest@!3"),
    			IkeConfigVersion:    pulumi.String("ikev1"),
    			IkeConfigMode:       pulumi.String("main"),
    			IkeConfigEncAlg:     pulumi.String("aes"),
    			IkeConfigAuthAlg:    pulumi.String("md5"),
    			IkeConfigDhGroup:    pulumi.String("group2"),
    			IkeConfigLifetime:   pulumi.Int(9000),
    			IkeConfigLocalId:    pulumi.String("acc_test"),
    			IkeConfigRemoteId:   pulumi.String("acc_test"),
    			IpsecConfigEncAlg:   pulumi.String("aes"),
    			IpsecConfigAuthAlg:  pulumi.String("sha256"),
    			IpsecConfigDhGroup:  pulumi.String("group2"),
    			IpsecConfigLifetime: pulumi.Int(9000),
    			LogEnabled:          pulumi.Bool(false),
    		})
    		if err != nil {
    			return err
    		}
    		fooTransitRouter, err := transit_router.NewTransitRouter(ctx, "fooTransitRouter", &transit_router.TransitRouterArgs{
    			TransitRouterName: pulumi.String("test-tf-acc"),
    			Description:       pulumi.String("test-tf-acc"),
    		})
    		if err != nil {
    			return err
    		}
    		fooVpnAttachment, err := transit_router.NewVpnAttachment(ctx, "fooVpnAttachment", &transit_router.VpnAttachmentArgs{
    			ZoneId:                      pulumi.String("cn-beijing-a"),
    			TransitRouterAttachmentName: pulumi.String("tf-test-acc"),
    			Description:                 pulumi.String("tf-test-acc-desc"),
    			TransitRouterId:             fooTransitRouter.ID(),
    			VpnConnectionId:             fooConnection.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		fooRouteTable, err := transit_router.NewRouteTable(ctx, "fooRouteTable", &transit_router.RouteTableArgs{
    			Description:                 pulumi.String("tf-test-acc-description-route-route-table"),
    			TransitRouterRouteTableName: pulumi.String("tf-table-test-acc"),
    			TransitRouterId:             fooTransitRouter.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = transit_router.NewRouteEntry(ctx, "fooRouteEntry", &transit_router.RouteEntryArgs{
    			Description:                        pulumi.String("tf-test-acc-description-entry"),
    			TransitRouterRouteEntryName:        pulumi.String("tf-acc-test-entry"),
    			DestinationCidrBlock:               pulumi.String("192.168.0.0/24"),
    			TransitRouterRouteEntryNextHopType: pulumi.String("Attachment"),
    			TransitRouterRouteTableId:          fooRouteTable.TransitRouterRouteTableId,
    			TransitRouterRouteEntryNextHopId:   fooVpnAttachment.TransitRouterAttachmentId,
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.volcengine.ecs.EcsFunctions;
    import com.pulumi.volcengine.ecs.inputs.ZonesArgs;
    import com.pulumi.volcengine.vpc.Vpc;
    import com.pulumi.volcengine.vpc.VpcArgs;
    import com.pulumi.volcengine.vpc.Subnet;
    import com.pulumi.volcengine.vpc.SubnetArgs;
    import com.pulumi.volcengine.vpn.Gateway;
    import com.pulumi.volcengine.vpn.GatewayArgs;
    import com.pulumi.volcengine.vpn.CustomerGateway;
    import com.pulumi.volcengine.vpn.CustomerGatewayArgs;
    import com.pulumi.volcengine.vpn.Connection;
    import com.pulumi.volcengine.vpn.ConnectionArgs;
    import com.pulumi.volcengine.transit_router.TransitRouter;
    import com.pulumi.volcengine.transit_router.TransitRouterArgs;
    import com.pulumi.volcengine.transit_router.VpnAttachment;
    import com.pulumi.volcengine.transit_router.VpnAttachmentArgs;
    import com.pulumi.volcengine.transit_router.RouteTable;
    import com.pulumi.volcengine.transit_router.RouteTableArgs;
    import com.pulumi.volcengine.transit_router.RouteEntry;
    import com.pulumi.volcengine.transit_router.RouteEntryArgs;
    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 fooZones = EcsFunctions.Zones();
    
            var fooVpc = new Vpc("fooVpc", VpcArgs.builder()        
                .vpcName("acc-test-vpc")
                .cidrBlock("172.16.0.0/16")
                .build());
    
            var fooSubnet = new Subnet("fooSubnet", SubnetArgs.builder()        
                .subnetName("acc-test-subnet")
                .cidrBlock("172.16.0.0/24")
                .zoneId(fooZones.applyValue(zonesResult -> zonesResult.zones()[0].id()))
                .vpcId(fooVpc.id())
                .build());
    
            var fooGateway = new Gateway("fooGateway", GatewayArgs.builder()        
                .vpcId(fooVpc.id())
                .subnetId(fooSubnet.id())
                .bandwidth(20)
                .vpnGatewayName("acc-test")
                .description("acc-test")
                .period(2)
                .build());
    
            var fooCustomerGateway = new CustomerGateway("fooCustomerGateway", CustomerGatewayArgs.builder()        
                .ipAddress("192.0.1.3")
                .customerGatewayName("acc-test")
                .description("acc-test")
                .build());
    
            var fooConnection = new Connection("fooConnection", ConnectionArgs.builder()        
                .vpnConnectionName("acc-tf-test")
                .description("acc-tf-test")
                .attachType("TransitRouter")
                .vpnGatewayId(fooGateway.id())
                .customerGatewayId(fooCustomerGateway.id())
                .localSubnets("192.168.0.0/22")
                .remoteSubnets("192.161.0.0/20")
                .dpdAction("none")
                .natTraversal(true)
                .ikeConfigPsk("acctest@!3")
                .ikeConfigVersion("ikev1")
                .ikeConfigMode("main")
                .ikeConfigEncAlg("aes")
                .ikeConfigAuthAlg("md5")
                .ikeConfigDhGroup("group2")
                .ikeConfigLifetime(9000)
                .ikeConfigLocalId("acc_test")
                .ikeConfigRemoteId("acc_test")
                .ipsecConfigEncAlg("aes")
                .ipsecConfigAuthAlg("sha256")
                .ipsecConfigDhGroup("group2")
                .ipsecConfigLifetime(9000)
                .logEnabled(false)
                .build());
    
            var fooTransitRouter = new TransitRouter("fooTransitRouter", TransitRouterArgs.builder()        
                .transitRouterName("test-tf-acc")
                .description("test-tf-acc")
                .build());
    
            var fooVpnAttachment = new VpnAttachment("fooVpnAttachment", VpnAttachmentArgs.builder()        
                .zoneId("cn-beijing-a")
                .transitRouterAttachmentName("tf-test-acc")
                .description("tf-test-acc-desc")
                .transitRouterId(fooTransitRouter.id())
                .vpnConnectionId(fooConnection.id())
                .build());
    
            var fooRouteTable = new RouteTable("fooRouteTable", RouteTableArgs.builder()        
                .description("tf-test-acc-description-route-route-table")
                .transitRouterRouteTableName("tf-table-test-acc")
                .transitRouterId(fooTransitRouter.id())
                .build());
    
            var fooRouteEntry = new RouteEntry("fooRouteEntry", RouteEntryArgs.builder()        
                .description("tf-test-acc-description-entry")
                .transitRouterRouteEntryName("tf-acc-test-entry")
                .destinationCidrBlock("192.168.0.0/24")
                .transitRouterRouteEntryNextHopType("Attachment")
                .transitRouterRouteTableId(fooRouteTable.transitRouterRouteTableId())
                .transitRouterRouteEntryNextHopId(fooVpnAttachment.transitRouterAttachmentId())
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_volcengine as volcengine
    
    foo_zones = volcengine.ecs.zones()
    foo_vpc = volcengine.vpc.Vpc("fooVpc",
        vpc_name="acc-test-vpc",
        cidr_block="172.16.0.0/16")
    foo_subnet = volcengine.vpc.Subnet("fooSubnet",
        subnet_name="acc-test-subnet",
        cidr_block="172.16.0.0/24",
        zone_id=foo_zones.zones[0].id,
        vpc_id=foo_vpc.id)
    foo_gateway = volcengine.vpn.Gateway("fooGateway",
        vpc_id=foo_vpc.id,
        subnet_id=foo_subnet.id,
        bandwidth=20,
        vpn_gateway_name="acc-test",
        description="acc-test",
        period=2)
    foo_customer_gateway = volcengine.vpn.CustomerGateway("fooCustomerGateway",
        ip_address="192.0.1.3",
        customer_gateway_name="acc-test",
        description="acc-test")
    foo_connection = volcengine.vpn.Connection("fooConnection",
        vpn_connection_name="acc-tf-test",
        description="acc-tf-test",
        attach_type="TransitRouter",
        vpn_gateway_id=foo_gateway.id,
        customer_gateway_id=foo_customer_gateway.id,
        local_subnets=["192.168.0.0/22"],
        remote_subnets=["192.161.0.0/20"],
        dpd_action="none",
        nat_traversal=True,
        ike_config_psk="acctest@!3",
        ike_config_version="ikev1",
        ike_config_mode="main",
        ike_config_enc_alg="aes",
        ike_config_auth_alg="md5",
        ike_config_dh_group="group2",
        ike_config_lifetime=9000,
        ike_config_local_id="acc_test",
        ike_config_remote_id="acc_test",
        ipsec_config_enc_alg="aes",
        ipsec_config_auth_alg="sha256",
        ipsec_config_dh_group="group2",
        ipsec_config_lifetime=9000,
        log_enabled=False)
    foo_transit_router = volcengine.transit_router.TransitRouter("fooTransitRouter",
        transit_router_name="test-tf-acc",
        description="test-tf-acc")
    foo_vpn_attachment = volcengine.transit_router.VpnAttachment("fooVpnAttachment",
        zone_id="cn-beijing-a",
        transit_router_attachment_name="tf-test-acc",
        description="tf-test-acc-desc",
        transit_router_id=foo_transit_router.id,
        vpn_connection_id=foo_connection.id)
    foo_route_table = volcengine.transit_router.RouteTable("fooRouteTable",
        description="tf-test-acc-description-route-route-table",
        transit_router_route_table_name="tf-table-test-acc",
        transit_router_id=foo_transit_router.id)
    foo_route_entry = volcengine.transit_router.RouteEntry("fooRouteEntry",
        description="tf-test-acc-description-entry",
        transit_router_route_entry_name="tf-acc-test-entry",
        destination_cidr_block="192.168.0.0/24",
        transit_router_route_entry_next_hop_type="Attachment",
        transit_router_route_table_id=foo_route_table.transit_router_route_table_id,
        transit_router_route_entry_next_hop_id=foo_vpn_attachment.transit_router_attachment_id)
    
    import * as pulumi from "@pulumi/pulumi";
    import * as volcengine from "@pulumi/volcengine";
    import * as volcengine from "@volcengine/pulumi";
    
    const fooZones = volcengine.ecs.Zones({});
    const fooVpc = new volcengine.vpc.Vpc("fooVpc", {
        vpcName: "acc-test-vpc",
        cidrBlock: "172.16.0.0/16",
    });
    const fooSubnet = new volcengine.vpc.Subnet("fooSubnet", {
        subnetName: "acc-test-subnet",
        cidrBlock: "172.16.0.0/24",
        zoneId: fooZones.then(fooZones => fooZones.zones?.[0]?.id),
        vpcId: fooVpc.id,
    });
    const fooGateway = new volcengine.vpn.Gateway("fooGateway", {
        vpcId: fooVpc.id,
        subnetId: fooSubnet.id,
        bandwidth: 20,
        vpnGatewayName: "acc-test",
        description: "acc-test",
        period: 2,
    });
    const fooCustomerGateway = new volcengine.vpn.CustomerGateway("fooCustomerGateway", {
        ipAddress: "192.0.1.3",
        customerGatewayName: "acc-test",
        description: "acc-test",
    });
    const fooConnection = new volcengine.vpn.Connection("fooConnection", {
        vpnConnectionName: "acc-tf-test",
        description: "acc-tf-test",
        attachType: "TransitRouter",
        vpnGatewayId: fooGateway.id,
        customerGatewayId: fooCustomerGateway.id,
        localSubnets: ["192.168.0.0/22"],
        remoteSubnets: ["192.161.0.0/20"],
        dpdAction: "none",
        natTraversal: true,
        ikeConfigPsk: "acctest@!3",
        ikeConfigVersion: "ikev1",
        ikeConfigMode: "main",
        ikeConfigEncAlg: "aes",
        ikeConfigAuthAlg: "md5",
        ikeConfigDhGroup: "group2",
        ikeConfigLifetime: 9000,
        ikeConfigLocalId: "acc_test",
        ikeConfigRemoteId: "acc_test",
        ipsecConfigEncAlg: "aes",
        ipsecConfigAuthAlg: "sha256",
        ipsecConfigDhGroup: "group2",
        ipsecConfigLifetime: 9000,
        logEnabled: false,
    });
    const fooTransitRouter = new volcengine.transit_router.TransitRouter("fooTransitRouter", {
        transitRouterName: "test-tf-acc",
        description: "test-tf-acc",
    });
    const fooVpnAttachment = new volcengine.transit_router.VpnAttachment("fooVpnAttachment", {
        zoneId: "cn-beijing-a",
        transitRouterAttachmentName: "tf-test-acc",
        description: "tf-test-acc-desc",
        transitRouterId: fooTransitRouter.id,
        vpnConnectionId: fooConnection.id,
    });
    const fooRouteTable = new volcengine.transit_router.RouteTable("fooRouteTable", {
        description: "tf-test-acc-description-route-route-table",
        transitRouterRouteTableName: "tf-table-test-acc",
        transitRouterId: fooTransitRouter.id,
    });
    const fooRouteEntry = new volcengine.transit_router.RouteEntry("fooRouteEntry", {
        description: "tf-test-acc-description-entry",
        transitRouterRouteEntryName: "tf-acc-test-entry",
        destinationCidrBlock: "192.168.0.0/24",
        transitRouterRouteEntryNextHopType: "Attachment",
        transitRouterRouteTableId: fooRouteTable.transitRouterRouteTableId,
        transitRouterRouteEntryNextHopId: fooVpnAttachment.transitRouterAttachmentId,
    });
    
    resources:
      fooVpc:
        type: volcengine:vpc:Vpc
        properties:
          vpcName: acc-test-vpc
          cidrBlock: 172.16.0.0/16
      fooSubnet:
        type: volcengine:vpc:Subnet
        properties:
          subnetName: acc-test-subnet
          cidrBlock: 172.16.0.0/24
          zoneId: ${fooZones.zones[0].id}
          vpcId: ${fooVpc.id}
      fooGateway:
        type: volcengine:vpn:Gateway
        properties:
          vpcId: ${fooVpc.id}
          subnetId: ${fooSubnet.id}
          bandwidth: 20
          vpnGatewayName: acc-test
          description: acc-test
          period: 2
      fooCustomerGateway:
        type: volcengine:vpn:CustomerGateway
        properties:
          ipAddress: 192.0.1.3
          customerGatewayName: acc-test
          description: acc-test
      fooConnection:
        type: volcengine:vpn:Connection
        properties:
          vpnConnectionName: acc-tf-test
          description: acc-tf-test
          attachType: TransitRouter
          vpnGatewayId: ${fooGateway.id}
          customerGatewayId: ${fooCustomerGateway.id}
          localSubnets:
            - 192.168.0.0/22
          remoteSubnets:
            - 192.161.0.0/20
          dpdAction: none
          natTraversal: true
          ikeConfigPsk: acctest@!3
          ikeConfigVersion: ikev1
          ikeConfigMode: main
          ikeConfigEncAlg: aes
          ikeConfigAuthAlg: md5
          ikeConfigDhGroup: group2
          ikeConfigLifetime: 9000
          ikeConfigLocalId: acc_test
          ikeConfigRemoteId: acc_test
          ipsecConfigEncAlg: aes
          ipsecConfigAuthAlg: sha256
          ipsecConfigDhGroup: group2
          ipsecConfigLifetime: 9000
          logEnabled: false
      fooVpnAttachment:
        type: volcengine:transit_router:VpnAttachment
        properties:
          zoneId: cn-beijing-a
          transitRouterAttachmentName: tf-test-acc
          description: tf-test-acc-desc
          transitRouterId: ${fooTransitRouter.id}
          vpnConnectionId: ${fooConnection.id}
      fooTransitRouter:
        type: volcengine:transit_router:TransitRouter
        properties:
          transitRouterName: test-tf-acc
          description: test-tf-acc
      fooRouteTable:
        type: volcengine:transit_router:RouteTable
        properties:
          description: tf-test-acc-description-route-route-table
          transitRouterRouteTableName: tf-table-test-acc
          transitRouterId: ${fooTransitRouter.id}
      fooRouteEntry:
        type: volcengine:transit_router:RouteEntry
        properties:
          description: tf-test-acc-description-entry
          transitRouterRouteEntryName: tf-acc-test-entry
          destinationCidrBlock: 192.168.0.0/24
          transitRouterRouteEntryNextHopType: Attachment
          transitRouterRouteTableId: ${fooRouteTable.transitRouterRouteTableId}
          transitRouterRouteEntryNextHopId: ${fooVpnAttachment.transitRouterAttachmentId}
    variables:
      fooZones:
        fn::invoke:
          Function: volcengine:ecs:Zones
          Arguments: {}
    

    Create RouteEntry Resource

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

    Constructor syntax

    new RouteEntry(name: string, args: RouteEntryArgs, opts?: CustomResourceOptions);
    @overload
    def RouteEntry(resource_name: str,
                   args: RouteEntryArgs,
                   opts: Optional[ResourceOptions] = None)
    
    @overload
    def RouteEntry(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   destination_cidr_block: Optional[str] = None,
                   transit_router_route_entry_next_hop_type: Optional[str] = None,
                   transit_router_route_table_id: Optional[str] = None,
                   description: Optional[str] = None,
                   transit_router_route_entry_name: Optional[str] = None,
                   transit_router_route_entry_next_hop_id: Optional[str] = None)
    func NewRouteEntry(ctx *Context, name string, args RouteEntryArgs, opts ...ResourceOption) (*RouteEntry, error)
    public RouteEntry(string name, RouteEntryArgs args, CustomResourceOptions? opts = null)
    public RouteEntry(String name, RouteEntryArgs args)
    public RouteEntry(String name, RouteEntryArgs args, CustomResourceOptions options)
    
    type: volcengine:transit_router:RouteEntry
    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 RouteEntryArgs
    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 RouteEntryArgs
    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 RouteEntryArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args RouteEntryArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args RouteEntryArgs
    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 volcengineRouteEntryResource = new Volcengine.Transit_router.RouteEntry("volcengineRouteEntryResource", new()
    {
        DestinationCidrBlock = "string",
        TransitRouterRouteEntryNextHopType = "string",
        TransitRouterRouteTableId = "string",
        Description = "string",
        TransitRouterRouteEntryName = "string",
        TransitRouterRouteEntryNextHopId = "string",
    });
    
    example, err := transit_router.NewRouteEntry(ctx, "volcengineRouteEntryResource", &transit_router.RouteEntryArgs{
    	DestinationCidrBlock:               pulumi.String("string"),
    	TransitRouterRouteEntryNextHopType: pulumi.String("string"),
    	TransitRouterRouteTableId:          pulumi.String("string"),
    	Description:                        pulumi.String("string"),
    	TransitRouterRouteEntryName:        pulumi.String("string"),
    	TransitRouterRouteEntryNextHopId:   pulumi.String("string"),
    })
    
    var volcengineRouteEntryResource = new RouteEntry("volcengineRouteEntryResource", RouteEntryArgs.builder()
        .destinationCidrBlock("string")
        .transitRouterRouteEntryNextHopType("string")
        .transitRouterRouteTableId("string")
        .description("string")
        .transitRouterRouteEntryName("string")
        .transitRouterRouteEntryNextHopId("string")
        .build());
    
    volcengine_route_entry_resource = volcengine.transit_router.RouteEntry("volcengineRouteEntryResource",
        destination_cidr_block="string",
        transit_router_route_entry_next_hop_type="string",
        transit_router_route_table_id="string",
        description="string",
        transit_router_route_entry_name="string",
        transit_router_route_entry_next_hop_id="string")
    
    const volcengineRouteEntryResource = new volcengine.transit_router.RouteEntry("volcengineRouteEntryResource", {
        destinationCidrBlock: "string",
        transitRouterRouteEntryNextHopType: "string",
        transitRouterRouteTableId: "string",
        description: "string",
        transitRouterRouteEntryName: "string",
        transitRouterRouteEntryNextHopId: "string",
    });
    
    type: volcengine:transit_router:RouteEntry
    properties:
        description: string
        destinationCidrBlock: string
        transitRouterRouteEntryName: string
        transitRouterRouteEntryNextHopId: string
        transitRouterRouteEntryNextHopType: string
        transitRouterRouteTableId: string
    

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

    DestinationCidrBlock string
    The target network segment of the route entry.
    TransitRouterRouteEntryNextHopType string
    The next hop type of the routing entry. The value can be Attachment or BlackHole.
    TransitRouterRouteTableId string
    The id of the route table.
    Description string
    Description of the transit router route entry.
    TransitRouterRouteEntryName string
    The name of the route entry.
    TransitRouterRouteEntryNextHopId string
    The next hot id of the routing entry. When the parameter TransitRouterRouteEntryNextHopType is Attachment, this parameter must be filled.
    DestinationCidrBlock string
    The target network segment of the route entry.
    TransitRouterRouteEntryNextHopType string
    The next hop type of the routing entry. The value can be Attachment or BlackHole.
    TransitRouterRouteTableId string
    The id of the route table.
    Description string
    Description of the transit router route entry.
    TransitRouterRouteEntryName string
    The name of the route entry.
    TransitRouterRouteEntryNextHopId string
    The next hot id of the routing entry. When the parameter TransitRouterRouteEntryNextHopType is Attachment, this parameter must be filled.
    destinationCidrBlock String
    The target network segment of the route entry.
    transitRouterRouteEntryNextHopType String
    The next hop type of the routing entry. The value can be Attachment or BlackHole.
    transitRouterRouteTableId String
    The id of the route table.
    description String
    Description of the transit router route entry.
    transitRouterRouteEntryName String
    The name of the route entry.
    transitRouterRouteEntryNextHopId String
    The next hot id of the routing entry. When the parameter TransitRouterRouteEntryNextHopType is Attachment, this parameter must be filled.
    destinationCidrBlock string
    The target network segment of the route entry.
    transitRouterRouteEntryNextHopType string
    The next hop type of the routing entry. The value can be Attachment or BlackHole.
    transitRouterRouteTableId string
    The id of the route table.
    description string
    Description of the transit router route entry.
    transitRouterRouteEntryName string
    The name of the route entry.
    transitRouterRouteEntryNextHopId string
    The next hot id of the routing entry. When the parameter TransitRouterRouteEntryNextHopType is Attachment, this parameter must be filled.
    destination_cidr_block str
    The target network segment of the route entry.
    transit_router_route_entry_next_hop_type str
    The next hop type of the routing entry. The value can be Attachment or BlackHole.
    transit_router_route_table_id str
    The id of the route table.
    description str
    Description of the transit router route entry.
    transit_router_route_entry_name str
    The name of the route entry.
    transit_router_route_entry_next_hop_id str
    The next hot id of the routing entry. When the parameter TransitRouterRouteEntryNextHopType is Attachment, this parameter must be filled.
    destinationCidrBlock String
    The target network segment of the route entry.
    transitRouterRouteEntryNextHopType String
    The next hop type of the routing entry. The value can be Attachment or BlackHole.
    transitRouterRouteTableId String
    The id of the route table.
    description String
    Description of the transit router route entry.
    transitRouterRouteEntryName String
    The name of the route entry.
    transitRouterRouteEntryNextHopId String
    The next hot id of the routing entry. When the parameter TransitRouterRouteEntryNextHopType is Attachment, this parameter must be filled.

    Outputs

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

    CreationTime string
    The creation time of the route entry.
    Id string
    The provider-assigned unique ID for this managed resource.
    Status string
    The status of the route entry.
    TransitRouterRouteEntryId string
    The id of the route entry.
    TransitRouterRouteEntryType string
    The type of the route entry.
    UpdateTime string
    The update time of the route entry.
    CreationTime string
    The creation time of the route entry.
    Id string
    The provider-assigned unique ID for this managed resource.
    Status string
    The status of the route entry.
    TransitRouterRouteEntryId string
    The id of the route entry.
    TransitRouterRouteEntryType string
    The type of the route entry.
    UpdateTime string
    The update time of the route entry.
    creationTime String
    The creation time of the route entry.
    id String
    The provider-assigned unique ID for this managed resource.
    status String
    The status of the route entry.
    transitRouterRouteEntryId String
    The id of the route entry.
    transitRouterRouteEntryType String
    The type of the route entry.
    updateTime String
    The update time of the route entry.
    creationTime string
    The creation time of the route entry.
    id string
    The provider-assigned unique ID for this managed resource.
    status string
    The status of the route entry.
    transitRouterRouteEntryId string
    The id of the route entry.
    transitRouterRouteEntryType string
    The type of the route entry.
    updateTime string
    The update time of the route entry.
    creation_time str
    The creation time of the route entry.
    id str
    The provider-assigned unique ID for this managed resource.
    status str
    The status of the route entry.
    transit_router_route_entry_id str
    The id of the route entry.
    transit_router_route_entry_type str
    The type of the route entry.
    update_time str
    The update time of the route entry.
    creationTime String
    The creation time of the route entry.
    id String
    The provider-assigned unique ID for this managed resource.
    status String
    The status of the route entry.
    transitRouterRouteEntryId String
    The id of the route entry.
    transitRouterRouteEntryType String
    The type of the route entry.
    updateTime String
    The update time of the route entry.

    Look up Existing RouteEntry Resource

    Get an existing RouteEntry 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?: RouteEntryState, opts?: CustomResourceOptions): RouteEntry
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            creation_time: Optional[str] = None,
            description: Optional[str] = None,
            destination_cidr_block: Optional[str] = None,
            status: Optional[str] = None,
            transit_router_route_entry_id: Optional[str] = None,
            transit_router_route_entry_name: Optional[str] = None,
            transit_router_route_entry_next_hop_id: Optional[str] = None,
            transit_router_route_entry_next_hop_type: Optional[str] = None,
            transit_router_route_entry_type: Optional[str] = None,
            transit_router_route_table_id: Optional[str] = None,
            update_time: Optional[str] = None) -> RouteEntry
    func GetRouteEntry(ctx *Context, name string, id IDInput, state *RouteEntryState, opts ...ResourceOption) (*RouteEntry, error)
    public static RouteEntry Get(string name, Input<string> id, RouteEntryState? state, CustomResourceOptions? opts = null)
    public static RouteEntry get(String name, Output<String> id, RouteEntryState 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:
    CreationTime string
    The creation time of the route entry.
    Description string
    Description of the transit router route entry.
    DestinationCidrBlock string
    The target network segment of the route entry.
    Status string
    The status of the route entry.
    TransitRouterRouteEntryId string
    The id of the route entry.
    TransitRouterRouteEntryName string
    The name of the route entry.
    TransitRouterRouteEntryNextHopId string
    The next hot id of the routing entry. When the parameter TransitRouterRouteEntryNextHopType is Attachment, this parameter must be filled.
    TransitRouterRouteEntryNextHopType string
    The next hop type of the routing entry. The value can be Attachment or BlackHole.
    TransitRouterRouteEntryType string
    The type of the route entry.
    TransitRouterRouteTableId string
    The id of the route table.
    UpdateTime string
    The update time of the route entry.
    CreationTime string
    The creation time of the route entry.
    Description string
    Description of the transit router route entry.
    DestinationCidrBlock string
    The target network segment of the route entry.
    Status string
    The status of the route entry.
    TransitRouterRouteEntryId string
    The id of the route entry.
    TransitRouterRouteEntryName string
    The name of the route entry.
    TransitRouterRouteEntryNextHopId string
    The next hot id of the routing entry. When the parameter TransitRouterRouteEntryNextHopType is Attachment, this parameter must be filled.
    TransitRouterRouteEntryNextHopType string
    The next hop type of the routing entry. The value can be Attachment or BlackHole.
    TransitRouterRouteEntryType string
    The type of the route entry.
    TransitRouterRouteTableId string
    The id of the route table.
    UpdateTime string
    The update time of the route entry.
    creationTime String
    The creation time of the route entry.
    description String
    Description of the transit router route entry.
    destinationCidrBlock String
    The target network segment of the route entry.
    status String
    The status of the route entry.
    transitRouterRouteEntryId String
    The id of the route entry.
    transitRouterRouteEntryName String
    The name of the route entry.
    transitRouterRouteEntryNextHopId String
    The next hot id of the routing entry. When the parameter TransitRouterRouteEntryNextHopType is Attachment, this parameter must be filled.
    transitRouterRouteEntryNextHopType String
    The next hop type of the routing entry. The value can be Attachment or BlackHole.
    transitRouterRouteEntryType String
    The type of the route entry.
    transitRouterRouteTableId String
    The id of the route table.
    updateTime String
    The update time of the route entry.
    creationTime string
    The creation time of the route entry.
    description string
    Description of the transit router route entry.
    destinationCidrBlock string
    The target network segment of the route entry.
    status string
    The status of the route entry.
    transitRouterRouteEntryId string
    The id of the route entry.
    transitRouterRouteEntryName string
    The name of the route entry.
    transitRouterRouteEntryNextHopId string
    The next hot id of the routing entry. When the parameter TransitRouterRouteEntryNextHopType is Attachment, this parameter must be filled.
    transitRouterRouteEntryNextHopType string
    The next hop type of the routing entry. The value can be Attachment or BlackHole.
    transitRouterRouteEntryType string
    The type of the route entry.
    transitRouterRouteTableId string
    The id of the route table.
    updateTime string
    The update time of the route entry.
    creation_time str
    The creation time of the route entry.
    description str
    Description of the transit router route entry.
    destination_cidr_block str
    The target network segment of the route entry.
    status str
    The status of the route entry.
    transit_router_route_entry_id str
    The id of the route entry.
    transit_router_route_entry_name str
    The name of the route entry.
    transit_router_route_entry_next_hop_id str
    The next hot id of the routing entry. When the parameter TransitRouterRouteEntryNextHopType is Attachment, this parameter must be filled.
    transit_router_route_entry_next_hop_type str
    The next hop type of the routing entry. The value can be Attachment or BlackHole.
    transit_router_route_entry_type str
    The type of the route entry.
    transit_router_route_table_id str
    The id of the route table.
    update_time str
    The update time of the route entry.
    creationTime String
    The creation time of the route entry.
    description String
    Description of the transit router route entry.
    destinationCidrBlock String
    The target network segment of the route entry.
    status String
    The status of the route entry.
    transitRouterRouteEntryId String
    The id of the route entry.
    transitRouterRouteEntryName String
    The name of the route entry.
    transitRouterRouteEntryNextHopId String
    The next hot id of the routing entry. When the parameter TransitRouterRouteEntryNextHopType is Attachment, this parameter must be filled.
    transitRouterRouteEntryNextHopType String
    The next hop type of the routing entry. The value can be Attachment or BlackHole.
    transitRouterRouteEntryType String
    The type of the route entry.
    transitRouterRouteTableId String
    The id of the route table.
    updateTime String
    The update time of the route entry.

    Import

    transit router route entry can be imported using the table and entry id, e.g.

     $ pulumi import volcengine:transit_router/routeEntry:RouteEntry default tr-rtb-12b7qd3fmzf2817q7y2jkbd55:tr-rte-1i5i8khf9m58gae5kcx6***
    

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

    Package Details

    Repository
    volcengine volcengine/pulumi-volcengine
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the volcengine Terraform Provider.
    volcengine logo
    Volcengine v0.0.26 published on Friday, Sep 13, 2024 by Volcengine