@pulumi/sdwan
Version:
A Pulumi package for managing resources on Cisco Catalyst SD-WAN.. Based on terraform-provider-sdwan: version v0.4.1
496 lines (495 loc) • 16.7 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
/**
* This resource can manage a Service LAN VPN Feature.
* - Minimum SD-WAN Manager version: `20.12.0`
*
* ## Import
*
* The `pulumi import` command can be used, for example:
*
* Expected import identifier with the format: "service_lan_vpn_feature_id,feature_profile_id"
*
* ```sh
* $ pulumi import sdwan:index/serviceLanVpnFeature:ServiceLanVpnFeature example "f6b2c44c-693c-4763-b010-895aa3d236bd,f6dd22c8-0b4f-496c-9a0b-6813d1f8b8ac"
* ```
*/
export declare class ServiceLanVpnFeature extends pulumi.CustomResource {
/**
* Get an existing ServiceLanVpnFeature resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ServiceLanVpnFeatureState, opts?: pulumi.CustomResourceOptions): ServiceLanVpnFeature;
/**
* Returns true if the given object is an instance of ServiceLanVpnFeature. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is ServiceLanVpnFeature;
/**
* OMP Advertise IPv4
*/
readonly advertiseOmpIpv4s: pulumi.Output<outputs.ServiceLanVpnFeatureAdvertiseOmpIpv4[] | undefined>;
/**
* OMP Advertise IPv6
*/
readonly advertiseOmpIpv6s: pulumi.Output<outputs.ServiceLanVpnFeatureAdvertiseOmpIpv6[] | undefined>;
/**
* Name
*/
readonly configDescription: pulumi.Output<string | undefined>;
/**
* Variable name
*/
readonly configDescriptionVariable: pulumi.Output<string | undefined>;
/**
* The description of the Feature
*/
readonly description: pulumi.Output<string | undefined>;
/**
* Enable SDWAN Remote Access - Default value: `false`
*/
readonly enableSdwanRemoteAccess: pulumi.Output<boolean | undefined>;
/**
* Feature Profile ID
*/
readonly featureProfileId: pulumi.Output<string>;
/**
* IPv4 Static GRE Route
*/
readonly greRoutes: pulumi.Output<outputs.ServiceLanVpnFeatureGreRoute[] | undefined>;
readonly hostMappings: pulumi.Output<outputs.ServiceLanVpnFeatureHostMapping[] | undefined>;
/**
* IPv4 Static IPSEC Route
*/
readonly ipsecRoutes: pulumi.Output<outputs.ServiceLanVpnFeatureIpsecRoute[] | undefined>;
readonly ipv4ExportRouteTargets: pulumi.Output<outputs.ServiceLanVpnFeatureIpv4ExportRouteTarget[] | undefined>;
readonly ipv4ImportRouteTargets: pulumi.Output<outputs.ServiceLanVpnFeatureIpv4ImportRouteTarget[] | undefined>;
/**
* IPv4 Static Route
*/
readonly ipv4StaticRoutes: pulumi.Output<outputs.ServiceLanVpnFeatureIpv4StaticRoute[] | undefined>;
readonly ipv6ExportRouteTargets: pulumi.Output<outputs.ServiceLanVpnFeatureIpv6ExportRouteTarget[] | undefined>;
readonly ipv6ImportRouteTargets: pulumi.Output<outputs.ServiceLanVpnFeatureIpv6ImportRouteTarget[] | undefined>;
/**
* IPv6 Static Route
*/
readonly ipv6StaticRoutes: pulumi.Output<outputs.ServiceLanVpnFeatureIpv6StaticRoute[] | undefined>;
/**
* The name of the Feature
*/
readonly name: pulumi.Output<string>;
/**
* NAT64 V4 Pool
*/
readonly nat64V4Pools: pulumi.Output<outputs.ServiceLanVpnFeatureNat64V4Pool[] | undefined>;
/**
* NAT Pool
*/
readonly natPools: pulumi.Output<outputs.ServiceLanVpnFeatureNatPool[] | undefined>;
/**
* NAT Port Forward
*/
readonly natPortForwards: pulumi.Output<outputs.ServiceLanVpnFeatureNatPortForward[] | undefined>;
/**
* OMP Admin Distance IPv4 - Range: `1`-`255`
*/
readonly ompAdminDistanceIpv4: pulumi.Output<number | undefined>;
/**
* Variable name
*/
readonly ompAdminDistanceIpv4Variable: pulumi.Output<string | undefined>;
/**
* OMP Admin Distance IPv6 - Range: `1`-`255`
*/
readonly ompAdminDistanceIpv6: pulumi.Output<number | undefined>;
/**
* Variable name
*/
readonly ompAdminDistanceIpv6Variable: pulumi.Output<string | undefined>;
/**
* Primary DNS Address (IPv4)
*/
readonly primaryDnsAddressIpv4: pulumi.Output<string | undefined>;
/**
* Variable name
*/
readonly primaryDnsAddressIpv4Variable: pulumi.Output<string | undefined>;
/**
* Primary DNS Address (IPv6)
*/
readonly primaryDnsAddressIpv6: pulumi.Output<string | undefined>;
/**
* Variable name
*/
readonly primaryDnsAddressIpv6Variable: pulumi.Output<string | undefined>;
/**
* Enable route leaking from Global to Service VPN
*/
readonly routeLeakFromGlobalVpns: pulumi.Output<outputs.ServiceLanVpnFeatureRouteLeakFromGlobalVpn[] | undefined>;
/**
* Enable route leak from another Service VPN to current Service VPN
*/
readonly routeLeakFromOtherServices: pulumi.Output<outputs.ServiceLanVpnFeatureRouteLeakFromOtherService[] | undefined>;
/**
* Enable route leaking from Service to Global VPN
*/
readonly routeLeakToGlobalVpns: pulumi.Output<outputs.ServiceLanVpnFeatureRouteLeakToGlobalVpn[] | undefined>;
/**
* Secondary DNS Address (IPv4)
*/
readonly secondaryDnsAddressIpv4: pulumi.Output<string | undefined>;
/**
* Variable name
*/
readonly secondaryDnsAddressIpv4Variable: pulumi.Output<string | undefined>;
/**
* Secondary DNS Address (IPv6)
*/
readonly secondaryDnsAddressIpv6: pulumi.Output<string | undefined>;
/**
* Variable name
*/
readonly secondaryDnsAddressIpv6Variable: pulumi.Output<string | undefined>;
/**
* Service
*/
readonly serviceRoutes: pulumi.Output<outputs.ServiceLanVpnFeatureServiceRoute[] | undefined>;
/**
* Service
*/
readonly services: pulumi.Output<outputs.ServiceLanVpnFeatureService[] | undefined>;
/**
* Static NAT Rules
*/
readonly staticNats: pulumi.Output<outputs.ServiceLanVpnFeatureStaticNat[] | undefined>;
/**
* The version of the Feature
*/
readonly version: pulumi.Output<number>;
/**
* VPN - Range: `1`-`65527` - Default value: `0`
*/
readonly vpn: pulumi.Output<number | undefined>;
/**
* Variable name
*/
readonly vpnVariable: pulumi.Output<string | undefined>;
/**
* Create a ServiceLanVpnFeature resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name: string, args: ServiceLanVpnFeatureArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering ServiceLanVpnFeature resources.
*/
export interface ServiceLanVpnFeatureState {
/**
* OMP Advertise IPv4
*/
advertiseOmpIpv4s?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureAdvertiseOmpIpv4>[]>;
/**
* OMP Advertise IPv6
*/
advertiseOmpIpv6s?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureAdvertiseOmpIpv6>[]>;
/**
* Name
*/
configDescription?: pulumi.Input<string>;
/**
* Variable name
*/
configDescriptionVariable?: pulumi.Input<string>;
/**
* The description of the Feature
*/
description?: pulumi.Input<string>;
/**
* Enable SDWAN Remote Access - Default value: `false`
*/
enableSdwanRemoteAccess?: pulumi.Input<boolean>;
/**
* Feature Profile ID
*/
featureProfileId?: pulumi.Input<string>;
/**
* IPv4 Static GRE Route
*/
greRoutes?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureGreRoute>[]>;
hostMappings?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureHostMapping>[]>;
/**
* IPv4 Static IPSEC Route
*/
ipsecRoutes?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureIpsecRoute>[]>;
ipv4ExportRouteTargets?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureIpv4ExportRouteTarget>[]>;
ipv4ImportRouteTargets?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureIpv4ImportRouteTarget>[]>;
/**
* IPv4 Static Route
*/
ipv4StaticRoutes?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureIpv4StaticRoute>[]>;
ipv6ExportRouteTargets?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureIpv6ExportRouteTarget>[]>;
ipv6ImportRouteTargets?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureIpv6ImportRouteTarget>[]>;
/**
* IPv6 Static Route
*/
ipv6StaticRoutes?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureIpv6StaticRoute>[]>;
/**
* The name of the Feature
*/
name?: pulumi.Input<string>;
/**
* NAT64 V4 Pool
*/
nat64V4Pools?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureNat64V4Pool>[]>;
/**
* NAT Pool
*/
natPools?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureNatPool>[]>;
/**
* NAT Port Forward
*/
natPortForwards?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureNatPortForward>[]>;
/**
* OMP Admin Distance IPv4 - Range: `1`-`255`
*/
ompAdminDistanceIpv4?: pulumi.Input<number>;
/**
* Variable name
*/
ompAdminDistanceIpv4Variable?: pulumi.Input<string>;
/**
* OMP Admin Distance IPv6 - Range: `1`-`255`
*/
ompAdminDistanceIpv6?: pulumi.Input<number>;
/**
* Variable name
*/
ompAdminDistanceIpv6Variable?: pulumi.Input<string>;
/**
* Primary DNS Address (IPv4)
*/
primaryDnsAddressIpv4?: pulumi.Input<string>;
/**
* Variable name
*/
primaryDnsAddressIpv4Variable?: pulumi.Input<string>;
/**
* Primary DNS Address (IPv6)
*/
primaryDnsAddressIpv6?: pulumi.Input<string>;
/**
* Variable name
*/
primaryDnsAddressIpv6Variable?: pulumi.Input<string>;
/**
* Enable route leaking from Global to Service VPN
*/
routeLeakFromGlobalVpns?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureRouteLeakFromGlobalVpn>[]>;
/**
* Enable route leak from another Service VPN to current Service VPN
*/
routeLeakFromOtherServices?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureRouteLeakFromOtherService>[]>;
/**
* Enable route leaking from Service to Global VPN
*/
routeLeakToGlobalVpns?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureRouteLeakToGlobalVpn>[]>;
/**
* Secondary DNS Address (IPv4)
*/
secondaryDnsAddressIpv4?: pulumi.Input<string>;
/**
* Variable name
*/
secondaryDnsAddressIpv4Variable?: pulumi.Input<string>;
/**
* Secondary DNS Address (IPv6)
*/
secondaryDnsAddressIpv6?: pulumi.Input<string>;
/**
* Variable name
*/
secondaryDnsAddressIpv6Variable?: pulumi.Input<string>;
/**
* Service
*/
serviceRoutes?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureServiceRoute>[]>;
/**
* Service
*/
services?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureService>[]>;
/**
* Static NAT Rules
*/
staticNats?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureStaticNat>[]>;
/**
* The version of the Feature
*/
version?: pulumi.Input<number>;
/**
* VPN - Range: `1`-`65527` - Default value: `0`
*/
vpn?: pulumi.Input<number>;
/**
* Variable name
*/
vpnVariable?: pulumi.Input<string>;
}
/**
* The set of arguments for constructing a ServiceLanVpnFeature resource.
*/
export interface ServiceLanVpnFeatureArgs {
/**
* OMP Advertise IPv4
*/
advertiseOmpIpv4s?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureAdvertiseOmpIpv4>[]>;
/**
* OMP Advertise IPv6
*/
advertiseOmpIpv6s?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureAdvertiseOmpIpv6>[]>;
/**
* Name
*/
configDescription?: pulumi.Input<string>;
/**
* Variable name
*/
configDescriptionVariable?: pulumi.Input<string>;
/**
* The description of the Feature
*/
description?: pulumi.Input<string>;
/**
* Enable SDWAN Remote Access - Default value: `false`
*/
enableSdwanRemoteAccess?: pulumi.Input<boolean>;
/**
* Feature Profile ID
*/
featureProfileId: pulumi.Input<string>;
/**
* IPv4 Static GRE Route
*/
greRoutes?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureGreRoute>[]>;
hostMappings?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureHostMapping>[]>;
/**
* IPv4 Static IPSEC Route
*/
ipsecRoutes?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureIpsecRoute>[]>;
ipv4ExportRouteTargets?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureIpv4ExportRouteTarget>[]>;
ipv4ImportRouteTargets?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureIpv4ImportRouteTarget>[]>;
/**
* IPv4 Static Route
*/
ipv4StaticRoutes?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureIpv4StaticRoute>[]>;
ipv6ExportRouteTargets?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureIpv6ExportRouteTarget>[]>;
ipv6ImportRouteTargets?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureIpv6ImportRouteTarget>[]>;
/**
* IPv6 Static Route
*/
ipv6StaticRoutes?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureIpv6StaticRoute>[]>;
/**
* The name of the Feature
*/
name?: pulumi.Input<string>;
/**
* NAT64 V4 Pool
*/
nat64V4Pools?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureNat64V4Pool>[]>;
/**
* NAT Pool
*/
natPools?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureNatPool>[]>;
/**
* NAT Port Forward
*/
natPortForwards?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureNatPortForward>[]>;
/**
* OMP Admin Distance IPv4 - Range: `1`-`255`
*/
ompAdminDistanceIpv4?: pulumi.Input<number>;
/**
* Variable name
*/
ompAdminDistanceIpv4Variable?: pulumi.Input<string>;
/**
* OMP Admin Distance IPv6 - Range: `1`-`255`
*/
ompAdminDistanceIpv6?: pulumi.Input<number>;
/**
* Variable name
*/
ompAdminDistanceIpv6Variable?: pulumi.Input<string>;
/**
* Primary DNS Address (IPv4)
*/
primaryDnsAddressIpv4?: pulumi.Input<string>;
/**
* Variable name
*/
primaryDnsAddressIpv4Variable?: pulumi.Input<string>;
/**
* Primary DNS Address (IPv6)
*/
primaryDnsAddressIpv6?: pulumi.Input<string>;
/**
* Variable name
*/
primaryDnsAddressIpv6Variable?: pulumi.Input<string>;
/**
* Enable route leaking from Global to Service VPN
*/
routeLeakFromGlobalVpns?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureRouteLeakFromGlobalVpn>[]>;
/**
* Enable route leak from another Service VPN to current Service VPN
*/
routeLeakFromOtherServices?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureRouteLeakFromOtherService>[]>;
/**
* Enable route leaking from Service to Global VPN
*/
routeLeakToGlobalVpns?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureRouteLeakToGlobalVpn>[]>;
/**
* Secondary DNS Address (IPv4)
*/
secondaryDnsAddressIpv4?: pulumi.Input<string>;
/**
* Variable name
*/
secondaryDnsAddressIpv4Variable?: pulumi.Input<string>;
/**
* Secondary DNS Address (IPv6)
*/
secondaryDnsAddressIpv6?: pulumi.Input<string>;
/**
* Variable name
*/
secondaryDnsAddressIpv6Variable?: pulumi.Input<string>;
/**
* Service
*/
serviceRoutes?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureServiceRoute>[]>;
/**
* Service
*/
services?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureService>[]>;
/**
* Static NAT Rules
*/
staticNats?: pulumi.Input<pulumi.Input<inputs.ServiceLanVpnFeatureStaticNat>[]>;
/**
* VPN - Range: `1`-`65527` - Default value: `0`
*/
vpn?: pulumi.Input<number>;
/**
* Variable name
*/
vpnVariable?: pulumi.Input<string>;
}