ChildInstanceRouteEntryToAttachmentArgs

data class ChildInstanceRouteEntryToAttachmentArgs(val cenId: Output<String>? = null, val childInstanceRouteTableId: Output<String>? = null, val destinationCidrBlock: Output<String>? = null, val dryRun: Output<Boolean>? = null, val transitRouterAttachmentId: Output<String>? = null) : ConvertibleToJava<ChildInstanceRouteEntryToAttachmentArgs>

Provides a Cen Child Instance Route Entry To Attachment resource. For information about Cen Child Instance Route Entry To Attachment and how to use it, see What is Child Instance Route Entry To Attachment.

NOTE: Available since v1.195.0.

Example Usage

Basic Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.cen.CenFunctions;
import com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;
import com.pulumi.alicloud.vpc.Network;
import com.pulumi.alicloud.vpc.NetworkArgs;
import com.pulumi.alicloud.vpc.Switch;
import com.pulumi.alicloud.vpc.SwitchArgs;
import com.pulumi.alicloud.cen.Instance;
import com.pulumi.alicloud.cen.InstanceArgs;
import com.pulumi.alicloud.cen.TransitRouter;
import com.pulumi.alicloud.cen.TransitRouterArgs;
import com.pulumi.alicloud.cen.TransitRouterVpcAttachment;
import com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;
import com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;
import com.pulumi.alicloud.vpc.RouteTable;
import com.pulumi.alicloud.vpc.RouteTableArgs;
import com.pulumi.alicloud.cen.ChildInstanceRouteEntryToAttachment;
import com.pulumi.alicloud.cen.ChildInstanceRouteEntryToAttachmentArgs;
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 name = config.get("name").orElse("terraform-example");
final var default = CenFunctions.getTransitRouterAvailableResources();
final var masterZone = default_.resources()[0].masterZones()[0];
final var slaveZone = default_.resources()[0].slaveZones()[1];
var exampleNetwork = new Network("exampleNetwork", NetworkArgs.builder()
.vpcName(name)
.cidrBlock("192.168.0.0/16")
.build());
var exampleMaster = new Switch("exampleMaster", SwitchArgs.builder()
.vswitchName(name)
.cidrBlock("192.168.1.0/24")
.vpcId(exampleNetwork.id())
.zoneId(masterZone)
.build());
var exampleSlave = new Switch("exampleSlave", SwitchArgs.builder()
.vswitchName(name)
.cidrBlock("192.168.2.0/24")
.vpcId(exampleNetwork.id())
.zoneId(slaveZone)
.build());
var exampleInstance = new Instance("exampleInstance", InstanceArgs.builder()
.cenInstanceName(name)
.protectionLevel("REDUCED")
.build());
var exampleTransitRouter = new TransitRouter("exampleTransitRouter", TransitRouterArgs.builder()
.transitRouterName(name)
.cenId(exampleInstance.id())
.build());
var exampleTransitRouterVpcAttachment = new TransitRouterVpcAttachment("exampleTransitRouterVpcAttachment", TransitRouterVpcAttachmentArgs.builder()
.cenId(exampleInstance.id())
.transitRouterId(exampleTransitRouter.transitRouterId())
.vpcId(exampleNetwork.id())
.zoneMappings(
TransitRouterVpcAttachmentZoneMappingArgs.builder()
.zoneId(masterZone)
.vswitchId(exampleMaster.id())
.build(),
TransitRouterVpcAttachmentZoneMappingArgs.builder()
.zoneId(slaveZone)
.vswitchId(exampleSlave.id())
.build())
.transitRouterAttachmentName(name)
.transitRouterAttachmentDescription(name)
.build());
var exampleRouteTable = new RouteTable("exampleRouteTable", RouteTableArgs.builder()
.vpcId(exampleNetwork.id())
.routeTableName(name)
.description(name)
.build());
var exampleChildInstanceRouteEntryToAttachment = new ChildInstanceRouteEntryToAttachment("exampleChildInstanceRouteEntryToAttachment", ChildInstanceRouteEntryToAttachmentArgs.builder()
.transitRouterAttachmentId(exampleTransitRouterVpcAttachment.transitRouterAttachmentId())
.cenId(exampleInstance.id())
.destinationCidrBlock("10.0.0.0/24")
.childInstanceRouteTableId(exampleRouteTable.id())
.build());
}
}

Import

Cen Child Instance Route Entry To Attachment can be imported using the id, e.g.

$ pulumi import alicloud:cen/childInstanceRouteEntryToAttachment:ChildInstanceRouteEntryToAttachment example <cen_id>:<child_instance_route_table_id>:<transit_router_attachment_id>:<destination_cidr_block>

Constructors

Link copied to clipboard
fun ChildInstanceRouteEntryToAttachmentArgs(cenId: Output<String>? = null, childInstanceRouteTableId: Output<String>? = null, destinationCidrBlock: Output<String>? = null, dryRun: Output<Boolean>? = null, transitRouterAttachmentId: Output<String>? = null)

Functions

Link copied to clipboard
open override fun toJava(): ChildInstanceRouteEntryToAttachmentArgs

Properties

Link copied to clipboard
val cenId: Output<String>? = null

The ID of the CEN instance.

Link copied to clipboard
val childInstanceRouteTableId: Output<String>? = null

The first ID of the resource

Link copied to clipboard
val destinationCidrBlock: Output<String>? = null

DestinationCidrBlock

Link copied to clipboard
val dryRun: Output<Boolean>? = null

Whether to perform pre-check on this request, including permission and instance status verification.

Link copied to clipboard
val transitRouterAttachmentId: Output<String>? = null

TransitRouterAttachmentId