get Gateway Vco Routes
This data source provides the Vpn Gateway Vco Routes of the current Alibaba Cloud user.
NOTE: Available in v1.183.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.Instance;
import com.pulumi.alicloud.cen.InstanceArgs;
import com.pulumi.alicloud.cen.TransitRouter;
import com.pulumi.alicloud.cen.TransitRouterArgs;
import com.pulumi.alicloud.cen.CenFunctions;
import com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;
import com.pulumi.alicloud.vpn.CustomerGateway;
import com.pulumi.alicloud.vpn.CustomerGatewayArgs;
import com.pulumi.alicloud.vpn.GatewayVpnAttachment;
import com.pulumi.alicloud.vpn.GatewayVpnAttachmentArgs;
import com.pulumi.alicloud.vpn.inputs.GatewayVpnAttachmentIkeConfigArgs;
import com.pulumi.alicloud.vpn.inputs.GatewayVpnAttachmentIpsecConfigArgs;
import com.pulumi.alicloud.vpn.inputs.GatewayVpnAttachmentBgpConfigArgs;
import com.pulumi.alicloud.vpn.inputs.GatewayVpnAttachmentHealthCheckConfigArgs;
import com.pulumi.alicloud.cen.TransitRouterVpnAttachment;
import com.pulumi.alicloud.cen.TransitRouterVpnAttachmentArgs;
import com.pulumi.alicloud.cen.inputs.TransitRouterVpnAttachmentZoneArgs;
import com.pulumi.alicloud.vpn.GatewayVcoRoute;
import com.pulumi.alicloud.vpn.GatewayVcoRouteArgs;
import com.pulumi.alicloud.vpn.VpnFunctions;
import com.pulumi.alicloud.vpn.inputs.GetGatewayVcoRoutesArgs;
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) {
var defaultInstance = new Instance("defaultInstance", InstanceArgs.builder()
.cenInstanceName(var_.name())
.build());
var defaultTransitRouter = new TransitRouter("defaultTransitRouter", TransitRouterArgs.builder()
.cenId(defaultInstance.id())
.transitRouterDescription("desd")
.transitRouterName(var_.name())
.build());
final var defaultTransitRouterAvailableResources = CenFunctions.getTransitRouterAvailableResources();
var defaultCustomerGateway = new CustomerGateway("defaultCustomerGateway", CustomerGatewayArgs.builder()
.ipAddress("42.104.22.210")
.asn("45014")
.description("testAccVpnConnectionDesc")
.build());
var defaultGatewayVpnAttachment = new GatewayVpnAttachment("defaultGatewayVpnAttachment", GatewayVpnAttachmentArgs.builder()
.customerGatewayId(defaultCustomerGateway.id())
.networkType("public")
.localSubnet("0.0.0.0/0")
.remoteSubnet("0.0.0.0/0")
.effectImmediately(false)
.ikeConfig(GatewayVpnAttachmentIkeConfigArgs.builder()
.ikeAuthAlg("md5")
.ikeEncAlg("des")
.ikeVersion("ikev2")
.ikeMode("main")
.ikeLifetime(86400)
.psk("tf-testvpn2")
.ikePfs("group1")
.remoteId("testbob2")
.localId("testalice2")
.build())
.ipsecConfig(GatewayVpnAttachmentIpsecConfigArgs.builder()
.ipsecPfs("group5")
.ipsecEncAlg("des")
.ipsecAuthAlg("md5")
.ipsecLifetime(86400)
.build())
.bgpConfig(GatewayVpnAttachmentBgpConfigArgs.builder()
.enable(true)
.localAsn(45014)
.tunnelCidr("169.254.11.0/30")
.localBgpIp("169.254.11.1")
.build())
.healthCheckConfig(GatewayVpnAttachmentHealthCheckConfigArgs.builder()
.enable(true)
.sip("192.168.1.1")
.dip("10.0.0.1")
.interval(10)
.retry(10)
.policy("revoke_route")
.build())
.enableDpd(true)
.enableNatTraversal(true)
.vpnAttachmentName(var_.name())
.build());
var defaultTransitRouterVpnAttachment = new TransitRouterVpnAttachment("defaultTransitRouterVpnAttachment", TransitRouterVpnAttachmentArgs.builder()
.autoPublishRouteEnabled(false)
.transitRouterAttachmentDescription(var_.name())
.transitRouterAttachmentName(var_.name())
.cenId(defaultTransitRouter.cenId())
.transitRouterId(defaultTransitRouter.transitRouterId())
.vpnId(defaultGatewayVpnAttachment.id())
.zones(TransitRouterVpnAttachmentZoneArgs.builder()
.zoneId(defaultTransitRouterAvailableResources.applyValue(getTransitRouterAvailableResourcesResult -> getTransitRouterAvailableResourcesResult.resources()[0].masterZones()[0]))
.build())
.build());
var defaultGatewayVcoRoute = new GatewayVcoRoute("defaultGatewayVcoRoute", GatewayVcoRouteArgs.builder()
.routeDest("192.168.12.0/24")
.nextHop(defaultTransitRouterVpnAttachment.vpnId())
.vpnConnectionId(defaultTransitRouterVpnAttachment.vpnId())
.weight(100)
.build());
final var defaultGatewayVcoRoutes = VpnFunctions.getGatewayVcoRoutes(GetGatewayVcoRoutesArgs.builder()
.vpnConnectionId(defaultTransitRouterVpnAttachment.vpnId())
.build());
ctx.export("vpnGatewayVcoRouteId1", data.alicloud_vpn_gateway_vco_routes().ids().routes()[0].id());
}
}
Content copied to clipboard
Return
A collection of values returned by getGatewayVcoRoutes.
Parameters
argument
A collection of arguments for invoking getGatewayVcoRoutes.
suspend fun getGatewayVcoRoutes(ids: List<String>? = null, outputFile: String? = null, pageNumber: Int? = null, pageSize: Int? = null, routeEntryType: String? = null, status: String? = null, vpnConnectionId: String): GetGatewayVcoRoutesResult
Return
A collection of values returned by getGatewayVcoRoutes.
See also
Parameters
ids
A list of Vco Route IDs.
output File
File name where to save data source results (after running pulumi preview
).
page Number
page Size
route Entry Type
The Routing input type. Valid values: custom
, bgp
.
status
The status of the vpn route entry.
vpn Connection Id
The id of the vpn connection.
suspend fun getGatewayVcoRoutes(argument: suspend GetGatewayVcoRoutesPlainArgsBuilder.() -> Unit): GetGatewayVcoRoutesResult
Return
A collection of values returned by getGatewayVcoRoutes.
See also
Parameters
argument
Builder for com.pulumi.alicloud.vpn.kotlin.inputs.GetGatewayVcoRoutesPlainArgs.