get Route Entries
This data source provides a list of Route Entries owned by an Alibaba Cloud account.
NOTE: Available in 1.37.0+.
Example Usage
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.AlicloudFunctions;
import com.pulumi.alicloud.inputs.GetZonesArgs;
import com.pulumi.alicloud.ecs.EcsFunctions;
import com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;
import com.pulumi.alicloud.ecs.inputs.GetImagesArgs;
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.ecs.SecurityGroup;
import com.pulumi.alicloud.ecs.SecurityGroupArgs;
import com.pulumi.alicloud.ecs.Instance;
import com.pulumi.alicloud.ecs.InstanceArgs;
import com.pulumi.alicloud.vpc.RouteEntry;
import com.pulumi.alicloud.vpc.RouteEntryArgs;
import com.pulumi.alicloud.ecs.SecurityGroupRule;
import com.pulumi.alicloud.ecs.SecurityGroupRuleArgs;
import com.pulumi.alicloud.vpc.VpcFunctions;
import com.pulumi.alicloud.vpc.inputs.GetRouteEntriesArgs;
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 defaultZones = AlicloudFunctions.getZones(GetZonesArgs.builder()
.availableResourceCreation("VSwitch")
.build());
final var defaultInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()
.availabilityZone(defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
.cpuCoreCount(1)
.memorySize(2)
.build());
final var defaultImages = EcsFunctions.getImages(GetImagesArgs.builder()
.mostRecent(true)
.nameRegex("^ubuntu_18.*64")
.owners("system")
.build());
final var name = config.get("name").orElse("tf-testAccRouteEntryConfig");
var fooNetwork = new Network("fooNetwork", NetworkArgs.builder()
.cidrBlock("10.1.0.0/21")
.build());
var fooSwitch = new Switch("fooSwitch", SwitchArgs.builder()
.availabilityZone(defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
.cidrBlock("10.1.1.0/24")
.vpcId(fooNetwork.id())
.vswitchName(name)
.build());
var tfTestFoo = new SecurityGroup("tfTestFoo", SecurityGroupArgs.builder()
.description("foo")
.vpcId(fooNetwork.id())
.build());
var fooInstance = new Instance("fooInstance", InstanceArgs.builder()
.allocatePublicIp(true)
.imageId(defaultImages.applyValue(getImagesResult -> getImagesResult.images()[0].id()))
.instanceChargeType("PostPaid")
.instanceName(name)
.instanceType(defaultInstanceTypes.applyValue(getInstanceTypesResult -> getInstanceTypesResult.instanceTypes()[0].id()))
.internetChargeType("PayByTraffic")
.internetMaxBandwidthOut(5)
.securityGroups(tfTestFoo.id())
.systemDiskCategory("cloud_efficiency")
.vswitchId(fooSwitch.id())
.build());
var fooRouteEntry = new RouteEntry("fooRouteEntry", RouteEntryArgs.builder()
.destinationCidrblock("172.11.1.1/32")
.nexthopId(fooInstance.id())
.nexthopType("Instance")
.routeTableId(fooNetwork.routeTableId())
.build());
var ingress = new SecurityGroupRule("ingress", SecurityGroupRuleArgs.builder()
.cidrIp("0.0.0.0/0")
.ipProtocol("tcp")
.nicType("intranet")
.policy("accept")
.portRange("22/22")
.priority(1)
.securityGroupId(tfTestFoo.id())
.type("ingress")
.build());
final var fooRouteEntries = VpcFunctions.getRouteEntries(GetRouteEntriesArgs.builder()
.routeTableId(fooRouteEntry.routeTableId())
.build());
}
}
Content copied to clipboard
Return
A collection of values returned by getRouteEntries.
Parameters
argument
A collection of arguments for invoking getRouteEntries.
suspend fun getRouteEntries(cidrBlock: String? = null, instanceId: String? = null, outputFile: String? = null, routeTableId: String, type: String? = null): GetRouteEntriesResult
Return
A collection of values returned by getRouteEntries.
See also
Parameters
cidr Block
The destination CIDR block of the route entry.
instance Id
The instance ID of the next hop.
output File
File name where to save data source results (after running pulumi preview
).
route Table Id
The ID of the router table to which the route entry belongs.
type
The type of the route entry.
suspend fun getRouteEntries(argument: suspend GetRouteEntriesPlainArgsBuilder.() -> Unit): GetRouteEntriesResult
Return
A collection of values returned by getRouteEntries.
See also
Parameters
argument
Builder for com.pulumi.alicloud.vpc.kotlin.inputs.GetRouteEntriesPlainArgs.