@pulumi/sdwan
Version:
A Pulumi package for managing resources on Cisco Catalyst SD-WAN.. Based on terraform-provider-sdwan: version v0.4.1
335 lines • 19.4 kB
JavaScript
;
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
Object.defineProperty(exports, "__esModule", { value: true });
exports.ServiceLanVpnInterfaceEthernetFeature = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("./utilities");
/**
* This resource can manage a Service LAN VPN Interface Ethernet Feature.
* - Minimum SD-WAN Manager version: `20.12.0`
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as sdwan from "@pulumi/sdwan";
*
* const example = new sdwan.ServiceLanVpnInterfaceEthernetFeature("example", {
* name: "Example",
* description: "My Example",
* featureProfileId: "f6dd22c8-0b4f-496c-9a0b-6813d1f8b8ac",
* serviceLanVpnFeatureId: "140331f6-5418-4755-a059-13c77eb96037",
* shutdown: false,
* interfaceName: "GigabitEthernet3",
* interfaceDescription: "LAN",
* ipv4ConfigurationType: "static",
* ipv4Address: "1.2.3.4",
* ipv4SubnetMask: "0.0.0.0",
* ipv4SecondaryAddresses: [{
* address: "1.2.3.5",
* subnetMask: "0.0.0.0",
* }],
* ipv4DhcpHelpers: ["1.2.3.4"],
* ipv6ConfigurationType: "static",
* ipv6DhcpHelpers: [{
* address: "2001:0:0:1::0",
* dhcpv6HelperVpn: 1,
* }],
* ipv4Nat: false,
* ipv4NatRangeStart: "1.2.3.4",
* ipv4NatRangeEnd: "4.5.6.7",
* ipv4NatPrefixLength: 1,
* ipv4NatOverload: true,
* ipv6Nat: true,
* nat64: false,
* aclShapingRate: 12,
* ipv6Vrrps: [{
* groupId: 1,
* priority: 100,
* timer: 1000,
* trackOmp: false,
* ipv6Addresses: [{
* linkLocalAddress: "1::1",
* globalAddress: "1::1/24",
* }],
* }],
* ipv4Vrrps: [{
* groupId: 1,
* priority: 100,
* timer: 1000,
* trackOmp: false,
* address: "1.2.3.4",
* secondaryAddresses: [{
* address: "2.3.4.5",
* subnetMask: "0.0.0.0",
* }],
* tlocPrefixChange: true,
* tlocPrefChangeValue: 100,
* trackingObjects: [{
* trackerId: "1b270f6d-479b-47e3-ab0b-51bc6811a303",
* trackerAction: "Decrement",
* decrementValue: 100,
* }],
* }],
* arps: [{
* ipAddress: "1.2.3.4",
* macAddress: "00-B0-D0-63-C2-26",
* }],
* trustsecEnableSgtPropogation: false,
* trustsecPropogate: true,
* trustsecSecurityGroupTag: 123,
* trustsecEnableEnforcedPropogation: false,
* trustsecEnforcedSecurityGroupTag: 1234,
* duplex: "full",
* macAddress: "00-B0-D0-63-C2-26",
* ipMtu: 1500,
* interfaceMtu: 1500,
* tcpMss: 500,
* speed: "1000",
* arpTimeout: 1200,
* autonegotiate: false,
* mediaType: "auto-select",
* loadInterval: 30,
* icmpRedirectDisable: true,
* xconnect: "1",
* ipDirectedBroadcast: false,
* });
* ```
*
* ## Import
*
* The `pulumi import` command can be used, for example:
*
* Expected import identifier with the format: "service_lan_vpn_interface_ethernet_feature_id,feature_profile_id,service_lan_vpn_feature_id"
*
* ```sh
* $ pulumi import sdwan:index/serviceLanVpnInterfaceEthernetFeature:ServiceLanVpnInterfaceEthernetFeature example "f6b2c44c-693c-4763-b010-895aa3d236bd,f6dd22c8-0b4f-496c-9a0b-6813d1f8b8ac,140331f6-5418-4755-a059-13c77eb96037"
* ```
*/
class ServiceLanVpnInterfaceEthernetFeature extends pulumi.CustomResource {
/**
* Get an existing ServiceLanVpnInterfaceEthernetFeature 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, id, state, opts) {
return new ServiceLanVpnInterfaceEthernetFeature(name, state, { ...opts, id: id });
}
/**
* Returns true if the given object is an instance of ServiceLanVpnInterfaceEthernetFeature. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === ServiceLanVpnInterfaceEthernetFeature.__pulumiType;
}
constructor(name, argsOrState, opts) {
let resourceInputs = {};
opts = opts || {};
if (opts.id) {
const state = argsOrState;
resourceInputs["aclIpv4EgressPolicyId"] = state?.aclIpv4EgressPolicyId;
resourceInputs["aclIpv4IngressPolicyId"] = state?.aclIpv4IngressPolicyId;
resourceInputs["aclIpv6EgressPolicyId"] = state?.aclIpv6EgressPolicyId;
resourceInputs["aclIpv6IngressPolicyId"] = state?.aclIpv6IngressPolicyId;
resourceInputs["aclShapingRate"] = state?.aclShapingRate;
resourceInputs["aclShapingRateVariable"] = state?.aclShapingRateVariable;
resourceInputs["arpTimeout"] = state?.arpTimeout;
resourceInputs["arpTimeoutVariable"] = state?.arpTimeoutVariable;
resourceInputs["arps"] = state?.arps;
resourceInputs["autonegotiate"] = state?.autonegotiate;
resourceInputs["autonegotiateVariable"] = state?.autonegotiateVariable;
resourceInputs["description"] = state?.description;
resourceInputs["duplex"] = state?.duplex;
resourceInputs["duplexVariable"] = state?.duplexVariable;
resourceInputs["enableDhcpv6"] = state?.enableDhcpv6;
resourceInputs["featureProfileId"] = state?.featureProfileId;
resourceInputs["icmpRedirectDisable"] = state?.icmpRedirectDisable;
resourceInputs["icmpRedirectDisableVariable"] = state?.icmpRedirectDisableVariable;
resourceInputs["interfaceDescription"] = state?.interfaceDescription;
resourceInputs["interfaceDescriptionVariable"] = state?.interfaceDescriptionVariable;
resourceInputs["interfaceMtu"] = state?.interfaceMtu;
resourceInputs["interfaceMtuVariable"] = state?.interfaceMtuVariable;
resourceInputs["interfaceName"] = state?.interfaceName;
resourceInputs["interfaceNameVariable"] = state?.interfaceNameVariable;
resourceInputs["ipDirectedBroadcast"] = state?.ipDirectedBroadcast;
resourceInputs["ipDirectedBroadcastVariable"] = state?.ipDirectedBroadcastVariable;
resourceInputs["ipMtu"] = state?.ipMtu;
resourceInputs["ipMtuVariable"] = state?.ipMtuVariable;
resourceInputs["ipv4Address"] = state?.ipv4Address;
resourceInputs["ipv4AddressVariable"] = state?.ipv4AddressVariable;
resourceInputs["ipv4ConfigurationType"] = state?.ipv4ConfigurationType;
resourceInputs["ipv4DhcpDistance"] = state?.ipv4DhcpDistance;
resourceInputs["ipv4DhcpDistanceVariable"] = state?.ipv4DhcpDistanceVariable;
resourceInputs["ipv4DhcpHelperVariable"] = state?.ipv4DhcpHelperVariable;
resourceInputs["ipv4DhcpHelpers"] = state?.ipv4DhcpHelpers;
resourceInputs["ipv4Nat"] = state?.ipv4Nat;
resourceInputs["ipv4NatLoopback"] = state?.ipv4NatLoopback;
resourceInputs["ipv4NatLoopbackVariable"] = state?.ipv4NatLoopbackVariable;
resourceInputs["ipv4NatOverload"] = state?.ipv4NatOverload;
resourceInputs["ipv4NatOverloadVariable"] = state?.ipv4NatOverloadVariable;
resourceInputs["ipv4NatPrefixLength"] = state?.ipv4NatPrefixLength;
resourceInputs["ipv4NatPrefixLengthVariable"] = state?.ipv4NatPrefixLengthVariable;
resourceInputs["ipv4NatRangeEnd"] = state?.ipv4NatRangeEnd;
resourceInputs["ipv4NatRangeEndVariable"] = state?.ipv4NatRangeEndVariable;
resourceInputs["ipv4NatRangeStart"] = state?.ipv4NatRangeStart;
resourceInputs["ipv4NatRangeStartVariable"] = state?.ipv4NatRangeStartVariable;
resourceInputs["ipv4NatTcpTimeout"] = state?.ipv4NatTcpTimeout;
resourceInputs["ipv4NatTcpTimeoutVariable"] = state?.ipv4NatTcpTimeoutVariable;
resourceInputs["ipv4NatUdpTimeout"] = state?.ipv4NatUdpTimeout;
resourceInputs["ipv4NatUdpTimeoutVariable"] = state?.ipv4NatUdpTimeoutVariable;
resourceInputs["ipv4SecondaryAddresses"] = state?.ipv4SecondaryAddresses;
resourceInputs["ipv4SubnetMask"] = state?.ipv4SubnetMask;
resourceInputs["ipv4SubnetMaskVariable"] = state?.ipv4SubnetMaskVariable;
resourceInputs["ipv4Vrrps"] = state?.ipv4Vrrps;
resourceInputs["ipv6Address"] = state?.ipv6Address;
resourceInputs["ipv6AddressVariable"] = state?.ipv6AddressVariable;
resourceInputs["ipv6ConfigurationType"] = state?.ipv6ConfigurationType;
resourceInputs["ipv6DhcpHelpers"] = state?.ipv6DhcpHelpers;
resourceInputs["ipv6DhcpSecondaryAddresses"] = state?.ipv6DhcpSecondaryAddresses;
resourceInputs["ipv6Nat"] = state?.ipv6Nat;
resourceInputs["ipv6SecondaryAddresses"] = state?.ipv6SecondaryAddresses;
resourceInputs["ipv6Vrrps"] = state?.ipv6Vrrps;
resourceInputs["loadInterval"] = state?.loadInterval;
resourceInputs["loadIntervalVariable"] = state?.loadIntervalVariable;
resourceInputs["macAddress"] = state?.macAddress;
resourceInputs["macAddressVariable"] = state?.macAddressVariable;
resourceInputs["mediaType"] = state?.mediaType;
resourceInputs["mediaTypeVariable"] = state?.mediaTypeVariable;
resourceInputs["name"] = state?.name;
resourceInputs["nat64"] = state?.nat64;
resourceInputs["serviceLanVpnFeatureId"] = state?.serviceLanVpnFeatureId;
resourceInputs["shutdown"] = state?.shutdown;
resourceInputs["shutdownVariable"] = state?.shutdownVariable;
resourceInputs["speed"] = state?.speed;
resourceInputs["speedVariable"] = state?.speedVariable;
resourceInputs["staticNats"] = state?.staticNats;
resourceInputs["tcpMss"] = state?.tcpMss;
resourceInputs["tcpMssVariable"] = state?.tcpMssVariable;
resourceInputs["tracker"] = state?.tracker;
resourceInputs["trackerVariable"] = state?.trackerVariable;
resourceInputs["trustsecEnableEnforcedPropogation"] = state?.trustsecEnableEnforcedPropogation;
resourceInputs["trustsecEnableSgtPropogation"] = state?.trustsecEnableSgtPropogation;
resourceInputs["trustsecEnforcedSecurityGroupTag"] = state?.trustsecEnforcedSecurityGroupTag;
resourceInputs["trustsecEnforcedSecurityGroupTagVariable"] = state?.trustsecEnforcedSecurityGroupTagVariable;
resourceInputs["trustsecPropogate"] = state?.trustsecPropogate;
resourceInputs["trustsecSecurityGroupTag"] = state?.trustsecSecurityGroupTag;
resourceInputs["trustsecSecurityGroupTagVariable"] = state?.trustsecSecurityGroupTagVariable;
resourceInputs["version"] = state?.version;
resourceInputs["xconnect"] = state?.xconnect;
resourceInputs["xconnectVariable"] = state?.xconnectVariable;
}
else {
const args = argsOrState;
if (args?.featureProfileId === undefined && !opts.urn) {
throw new Error("Missing required property 'featureProfileId'");
}
if (args?.serviceLanVpnFeatureId === undefined && !opts.urn) {
throw new Error("Missing required property 'serviceLanVpnFeatureId'");
}
resourceInputs["aclIpv4EgressPolicyId"] = args?.aclIpv4EgressPolicyId;
resourceInputs["aclIpv4IngressPolicyId"] = args?.aclIpv4IngressPolicyId;
resourceInputs["aclIpv6EgressPolicyId"] = args?.aclIpv6EgressPolicyId;
resourceInputs["aclIpv6IngressPolicyId"] = args?.aclIpv6IngressPolicyId;
resourceInputs["aclShapingRate"] = args?.aclShapingRate;
resourceInputs["aclShapingRateVariable"] = args?.aclShapingRateVariable;
resourceInputs["arpTimeout"] = args?.arpTimeout;
resourceInputs["arpTimeoutVariable"] = args?.arpTimeoutVariable;
resourceInputs["arps"] = args?.arps;
resourceInputs["autonegotiate"] = args?.autonegotiate;
resourceInputs["autonegotiateVariable"] = args?.autonegotiateVariable;
resourceInputs["description"] = args?.description;
resourceInputs["duplex"] = args?.duplex;
resourceInputs["duplexVariable"] = args?.duplexVariable;
resourceInputs["enableDhcpv6"] = args?.enableDhcpv6;
resourceInputs["featureProfileId"] = args?.featureProfileId;
resourceInputs["icmpRedirectDisable"] = args?.icmpRedirectDisable;
resourceInputs["icmpRedirectDisableVariable"] = args?.icmpRedirectDisableVariable;
resourceInputs["interfaceDescription"] = args?.interfaceDescription;
resourceInputs["interfaceDescriptionVariable"] = args?.interfaceDescriptionVariable;
resourceInputs["interfaceMtu"] = args?.interfaceMtu;
resourceInputs["interfaceMtuVariable"] = args?.interfaceMtuVariable;
resourceInputs["interfaceName"] = args?.interfaceName;
resourceInputs["interfaceNameVariable"] = args?.interfaceNameVariable;
resourceInputs["ipDirectedBroadcast"] = args?.ipDirectedBroadcast;
resourceInputs["ipDirectedBroadcastVariable"] = args?.ipDirectedBroadcastVariable;
resourceInputs["ipMtu"] = args?.ipMtu;
resourceInputs["ipMtuVariable"] = args?.ipMtuVariable;
resourceInputs["ipv4Address"] = args?.ipv4Address;
resourceInputs["ipv4AddressVariable"] = args?.ipv4AddressVariable;
resourceInputs["ipv4ConfigurationType"] = args?.ipv4ConfigurationType;
resourceInputs["ipv4DhcpDistance"] = args?.ipv4DhcpDistance;
resourceInputs["ipv4DhcpDistanceVariable"] = args?.ipv4DhcpDistanceVariable;
resourceInputs["ipv4DhcpHelperVariable"] = args?.ipv4DhcpHelperVariable;
resourceInputs["ipv4DhcpHelpers"] = args?.ipv4DhcpHelpers;
resourceInputs["ipv4Nat"] = args?.ipv4Nat;
resourceInputs["ipv4NatLoopback"] = args?.ipv4NatLoopback;
resourceInputs["ipv4NatLoopbackVariable"] = args?.ipv4NatLoopbackVariable;
resourceInputs["ipv4NatOverload"] = args?.ipv4NatOverload;
resourceInputs["ipv4NatOverloadVariable"] = args?.ipv4NatOverloadVariable;
resourceInputs["ipv4NatPrefixLength"] = args?.ipv4NatPrefixLength;
resourceInputs["ipv4NatPrefixLengthVariable"] = args?.ipv4NatPrefixLengthVariable;
resourceInputs["ipv4NatRangeEnd"] = args?.ipv4NatRangeEnd;
resourceInputs["ipv4NatRangeEndVariable"] = args?.ipv4NatRangeEndVariable;
resourceInputs["ipv4NatRangeStart"] = args?.ipv4NatRangeStart;
resourceInputs["ipv4NatRangeStartVariable"] = args?.ipv4NatRangeStartVariable;
resourceInputs["ipv4NatTcpTimeout"] = args?.ipv4NatTcpTimeout;
resourceInputs["ipv4NatTcpTimeoutVariable"] = args?.ipv4NatTcpTimeoutVariable;
resourceInputs["ipv4NatUdpTimeout"] = args?.ipv4NatUdpTimeout;
resourceInputs["ipv4NatUdpTimeoutVariable"] = args?.ipv4NatUdpTimeoutVariable;
resourceInputs["ipv4SecondaryAddresses"] = args?.ipv4SecondaryAddresses;
resourceInputs["ipv4SubnetMask"] = args?.ipv4SubnetMask;
resourceInputs["ipv4SubnetMaskVariable"] = args?.ipv4SubnetMaskVariable;
resourceInputs["ipv4Vrrps"] = args?.ipv4Vrrps;
resourceInputs["ipv6Address"] = args?.ipv6Address;
resourceInputs["ipv6AddressVariable"] = args?.ipv6AddressVariable;
resourceInputs["ipv6ConfigurationType"] = args?.ipv6ConfigurationType;
resourceInputs["ipv6DhcpHelpers"] = args?.ipv6DhcpHelpers;
resourceInputs["ipv6DhcpSecondaryAddresses"] = args?.ipv6DhcpSecondaryAddresses;
resourceInputs["ipv6Nat"] = args?.ipv6Nat;
resourceInputs["ipv6SecondaryAddresses"] = args?.ipv6SecondaryAddresses;
resourceInputs["ipv6Vrrps"] = args?.ipv6Vrrps;
resourceInputs["loadInterval"] = args?.loadInterval;
resourceInputs["loadIntervalVariable"] = args?.loadIntervalVariable;
resourceInputs["macAddress"] = args?.macAddress;
resourceInputs["macAddressVariable"] = args?.macAddressVariable;
resourceInputs["mediaType"] = args?.mediaType;
resourceInputs["mediaTypeVariable"] = args?.mediaTypeVariable;
resourceInputs["name"] = args?.name;
resourceInputs["nat64"] = args?.nat64;
resourceInputs["serviceLanVpnFeatureId"] = args?.serviceLanVpnFeatureId;
resourceInputs["shutdown"] = args?.shutdown;
resourceInputs["shutdownVariable"] = args?.shutdownVariable;
resourceInputs["speed"] = args?.speed;
resourceInputs["speedVariable"] = args?.speedVariable;
resourceInputs["staticNats"] = args?.staticNats;
resourceInputs["tcpMss"] = args?.tcpMss;
resourceInputs["tcpMssVariable"] = args?.tcpMssVariable;
resourceInputs["tracker"] = args?.tracker;
resourceInputs["trackerVariable"] = args?.trackerVariable;
resourceInputs["trustsecEnableEnforcedPropogation"] = args?.trustsecEnableEnforcedPropogation;
resourceInputs["trustsecEnableSgtPropogation"] = args?.trustsecEnableSgtPropogation;
resourceInputs["trustsecEnforcedSecurityGroupTag"] = args?.trustsecEnforcedSecurityGroupTag;
resourceInputs["trustsecEnforcedSecurityGroupTagVariable"] = args?.trustsecEnforcedSecurityGroupTagVariable;
resourceInputs["trustsecPropogate"] = args?.trustsecPropogate;
resourceInputs["trustsecSecurityGroupTag"] = args?.trustsecSecurityGroupTag;
resourceInputs["trustsecSecurityGroupTagVariable"] = args?.trustsecSecurityGroupTagVariable;
resourceInputs["xconnect"] = args?.xconnect;
resourceInputs["xconnectVariable"] = args?.xconnectVariable;
resourceInputs["version"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(ServiceLanVpnInterfaceEthernetFeature.__pulumiType, name, resourceInputs, opts);
}
}
exports.ServiceLanVpnInterfaceEthernetFeature = ServiceLanVpnInterfaceEthernetFeature;
/** @internal */
ServiceLanVpnInterfaceEthernetFeature.__pulumiType = 'sdwan:index/serviceLanVpnInterfaceEthernetFeature:ServiceLanVpnInterfaceEthernetFeature';
//# sourceMappingURL=serviceLanVpnInterfaceEthernetFeature.js.map