UNPKG

@pulumi/sdwan

Version:

A Pulumi package for managing resources on Cisco Catalyst SD-WAN.. Based on terraform-provider-sdwan: version v0.4.1

272 lines 14.2 kB
"use strict"; // *** 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.ServiceRoutingBgpFeature = void 0; const pulumi = require("@pulumi/pulumi"); const utilities = require("./utilities"); /** * This resource can manage a Service Routing BGP 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.ServiceRoutingBgpFeature("example", { * name: "Example", * description: "My Example", * featureProfileId: "f6dd22c8-0b4f-496c-9a0b-6813d1f8b8ac", * asNumber: 429, * routerId: "1.2.3.4", * propagateAsPath: false, * propagateCommunity: false, * externalRoutesDistance: 20, * internalRoutesDistance: 200, * localRoutesDistance: 20, * keepaliveTime: 60, * holdTime: 180, * alwaysCompareMed: false, * deterministicMed: false, * missingMedAsWorst: false, * compareRouterId: false, * multipathRelax: false, * ipv4Neighbors: [{ * address: "1.2.3.4", * description: "neighbor1", * shutdown: false, * remoteAs: 200, * localAs: 200, * keepaliveTime: 40, * holdTime: 200, * updateSourceInterface: "GigabitEthernet0", * nextHopSelf: false, * sendCommunity: true, * sendExtendedCommunity: true, * ebgpMultihop: 1, * password: "myPassword", * sendLabel: true, * asOverride: false, * allowasInNumber: 1, * addressFamilies: [{ * familyType: "ipv4-unicast", * policyType: "restart", * restartMaxNumberOfPrefixes: 2000, * restartThreshold: 75, * restartInterval: 30, * }], * }], * ipv6Neighbors: [{ * address: "2001::1", * description: "neighbor2", * shutdown: false, * remoteAs: 200, * localAs: 200, * keepaliveTime: 180, * holdTime: 60, * updateSourceInterface: "Loopback1", * nextHopSelf: true, * sendCommunity: true, * sendExtendedCommunity: true, * ebgpMultihop: 3, * password: "myPassword", * asOverride: true, * allowasInNumber: 3, * addressFamilies: [{ * familyType: "ipv6-unicast", * maxNumberOfPrefixes: 2000, * threshold: 75, * policyType: "restart", * restartInterval: 30, * }], * }], * ipv4AggregateAddresses: [{ * networkAddress: "10.10.0.0", * subnetMask: "255.255.0.0", * asSetPath: false, * summaryOnly: false, * }], * ipv4Networks: [{ * networkAddress: "10.10.0.0", * subnetMask: "255.255.0.0", * }], * ipv4EibgpMaximumPaths: 1, * ipv4Originate: false, * ipv4TableMapFilter: false, * ipv6AggregateAddresses: [{ * aggregatePrefix: "3001::1/128", * asSetPath: false, * summaryOnly: false, * }], * ipv6Networks: [{ * networkPrefix: "2001:0DB8:0000:000b::/64", * }], * ipv6EibgpMaximumPaths: 2, * ipv6Originate: true, * ipv6TableMapFilter: false, * }); * ``` * * ## Import * * The `pulumi import` command can be used, for example: * * Expected import identifier with the format: "service_routing_bgp_feature_id,feature_profile_id" * * ```sh * $ pulumi import sdwan:index/serviceRoutingBgpFeature:ServiceRoutingBgpFeature example "f6b2c44c-693c-4763-b010-895aa3d236bd,f6dd22c8-0b4f-496c-9a0b-6813d1f8b8ac" * ``` */ class ServiceRoutingBgpFeature extends pulumi.CustomResource { /** * Get an existing ServiceRoutingBgpFeature 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 ServiceRoutingBgpFeature(name, state, { ...opts, id: id }); } /** * Returns true if the given object is an instance of ServiceRoutingBgpFeature. 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'] === ServiceRoutingBgpFeature.__pulumiType; } constructor(name, argsOrState, opts) { let resourceInputs = {}; opts = opts || {}; if (opts.id) { const state = argsOrState; resourceInputs["alwaysCompareMed"] = state?.alwaysCompareMed; resourceInputs["alwaysCompareMedVariable"] = state?.alwaysCompareMedVariable; resourceInputs["asNumber"] = state?.asNumber; resourceInputs["asNumberVariable"] = state?.asNumberVariable; resourceInputs["compareRouterId"] = state?.compareRouterId; resourceInputs["compareRouterIdVariable"] = state?.compareRouterIdVariable; resourceInputs["description"] = state?.description; resourceInputs["deterministicMed"] = state?.deterministicMed; resourceInputs["deterministicMedVariable"] = state?.deterministicMedVariable; resourceInputs["externalRoutesDistance"] = state?.externalRoutesDistance; resourceInputs["externalRoutesDistanceVariable"] = state?.externalRoutesDistanceVariable; resourceInputs["featureProfileId"] = state?.featureProfileId; resourceInputs["holdTime"] = state?.holdTime; resourceInputs["holdTimeVariable"] = state?.holdTimeVariable; resourceInputs["internalRoutesDistance"] = state?.internalRoutesDistance; resourceInputs["internalRoutesDistanceVariable"] = state?.internalRoutesDistanceVariable; resourceInputs["ipv4AggregateAddresses"] = state?.ipv4AggregateAddresses; resourceInputs["ipv4EibgpMaximumPaths"] = state?.ipv4EibgpMaximumPaths; resourceInputs["ipv4EibgpMaximumPathsVariable"] = state?.ipv4EibgpMaximumPathsVariable; resourceInputs["ipv4Neighbors"] = state?.ipv4Neighbors; resourceInputs["ipv4Networks"] = state?.ipv4Networks; resourceInputs["ipv4Originate"] = state?.ipv4Originate; resourceInputs["ipv4OriginateVariable"] = state?.ipv4OriginateVariable; resourceInputs["ipv4Redistributes"] = state?.ipv4Redistributes; resourceInputs["ipv4TableMapFilter"] = state?.ipv4TableMapFilter; resourceInputs["ipv4TableMapFilterVariable"] = state?.ipv4TableMapFilterVariable; resourceInputs["ipv4TableMapRoutePolicyId"] = state?.ipv4TableMapRoutePolicyId; resourceInputs["ipv6AggregateAddresses"] = state?.ipv6AggregateAddresses; resourceInputs["ipv6EibgpMaximumPaths"] = state?.ipv6EibgpMaximumPaths; resourceInputs["ipv6EibgpMaximumPathsVariable"] = state?.ipv6EibgpMaximumPathsVariable; resourceInputs["ipv6Neighbors"] = state?.ipv6Neighbors; resourceInputs["ipv6Networks"] = state?.ipv6Networks; resourceInputs["ipv6Originate"] = state?.ipv6Originate; resourceInputs["ipv6OriginateVariable"] = state?.ipv6OriginateVariable; resourceInputs["ipv6Redistributes"] = state?.ipv6Redistributes; resourceInputs["ipv6TableMapFilter"] = state?.ipv6TableMapFilter; resourceInputs["ipv6TableMapFilterVariable"] = state?.ipv6TableMapFilterVariable; resourceInputs["ipv6TableMapRoutePolicyId"] = state?.ipv6TableMapRoutePolicyId; resourceInputs["keepaliveTime"] = state?.keepaliveTime; resourceInputs["keepaliveTimeVariable"] = state?.keepaliveTimeVariable; resourceInputs["localRoutesDistance"] = state?.localRoutesDistance; resourceInputs["localRoutesDistanceVariable"] = state?.localRoutesDistanceVariable; resourceInputs["missingMedAsWorst"] = state?.missingMedAsWorst; resourceInputs["missingMedAsWorstVariable"] = state?.missingMedAsWorstVariable; resourceInputs["multipathRelax"] = state?.multipathRelax; resourceInputs["multipathRelaxVariable"] = state?.multipathRelaxVariable; resourceInputs["name"] = state?.name; resourceInputs["propagateAsPath"] = state?.propagateAsPath; resourceInputs["propagateAsPathVariable"] = state?.propagateAsPathVariable; resourceInputs["propagateCommunity"] = state?.propagateCommunity; resourceInputs["propagateCommunityVariable"] = state?.propagateCommunityVariable; resourceInputs["routerId"] = state?.routerId; resourceInputs["routerIdVariable"] = state?.routerIdVariable; resourceInputs["version"] = state?.version; } else { const args = argsOrState; if (args?.featureProfileId === undefined && !opts.urn) { throw new Error("Missing required property 'featureProfileId'"); } resourceInputs["alwaysCompareMed"] = args?.alwaysCompareMed; resourceInputs["alwaysCompareMedVariable"] = args?.alwaysCompareMedVariable; resourceInputs["asNumber"] = args?.asNumber; resourceInputs["asNumberVariable"] = args?.asNumberVariable; resourceInputs["compareRouterId"] = args?.compareRouterId; resourceInputs["compareRouterIdVariable"] = args?.compareRouterIdVariable; resourceInputs["description"] = args?.description; resourceInputs["deterministicMed"] = args?.deterministicMed; resourceInputs["deterministicMedVariable"] = args?.deterministicMedVariable; resourceInputs["externalRoutesDistance"] = args?.externalRoutesDistance; resourceInputs["externalRoutesDistanceVariable"] = args?.externalRoutesDistanceVariable; resourceInputs["featureProfileId"] = args?.featureProfileId; resourceInputs["holdTime"] = args?.holdTime; resourceInputs["holdTimeVariable"] = args?.holdTimeVariable; resourceInputs["internalRoutesDistance"] = args?.internalRoutesDistance; resourceInputs["internalRoutesDistanceVariable"] = args?.internalRoutesDistanceVariable; resourceInputs["ipv4AggregateAddresses"] = args?.ipv4AggregateAddresses; resourceInputs["ipv4EibgpMaximumPaths"] = args?.ipv4EibgpMaximumPaths; resourceInputs["ipv4EibgpMaximumPathsVariable"] = args?.ipv4EibgpMaximumPathsVariable; resourceInputs["ipv4Neighbors"] = args?.ipv4Neighbors; resourceInputs["ipv4Networks"] = args?.ipv4Networks; resourceInputs["ipv4Originate"] = args?.ipv4Originate; resourceInputs["ipv4OriginateVariable"] = args?.ipv4OriginateVariable; resourceInputs["ipv4Redistributes"] = args?.ipv4Redistributes; resourceInputs["ipv4TableMapFilter"] = args?.ipv4TableMapFilter; resourceInputs["ipv4TableMapFilterVariable"] = args?.ipv4TableMapFilterVariable; resourceInputs["ipv4TableMapRoutePolicyId"] = args?.ipv4TableMapRoutePolicyId; resourceInputs["ipv6AggregateAddresses"] = args?.ipv6AggregateAddresses; resourceInputs["ipv6EibgpMaximumPaths"] = args?.ipv6EibgpMaximumPaths; resourceInputs["ipv6EibgpMaximumPathsVariable"] = args?.ipv6EibgpMaximumPathsVariable; resourceInputs["ipv6Neighbors"] = args?.ipv6Neighbors; resourceInputs["ipv6Networks"] = args?.ipv6Networks; resourceInputs["ipv6Originate"] = args?.ipv6Originate; resourceInputs["ipv6OriginateVariable"] = args?.ipv6OriginateVariable; resourceInputs["ipv6Redistributes"] = args?.ipv6Redistributes; resourceInputs["ipv6TableMapFilter"] = args?.ipv6TableMapFilter; resourceInputs["ipv6TableMapFilterVariable"] = args?.ipv6TableMapFilterVariable; resourceInputs["ipv6TableMapRoutePolicyId"] = args?.ipv6TableMapRoutePolicyId; resourceInputs["keepaliveTime"] = args?.keepaliveTime; resourceInputs["keepaliveTimeVariable"] = args?.keepaliveTimeVariable; resourceInputs["localRoutesDistance"] = args?.localRoutesDistance; resourceInputs["localRoutesDistanceVariable"] = args?.localRoutesDistanceVariable; resourceInputs["missingMedAsWorst"] = args?.missingMedAsWorst; resourceInputs["missingMedAsWorstVariable"] = args?.missingMedAsWorstVariable; resourceInputs["multipathRelax"] = args?.multipathRelax; resourceInputs["multipathRelaxVariable"] = args?.multipathRelaxVariable; resourceInputs["name"] = args?.name; resourceInputs["propagateAsPath"] = args?.propagateAsPath; resourceInputs["propagateAsPathVariable"] = args?.propagateAsPathVariable; resourceInputs["propagateCommunity"] = args?.propagateCommunity; resourceInputs["propagateCommunityVariable"] = args?.propagateCommunityVariable; resourceInputs["routerId"] = args?.routerId; resourceInputs["routerIdVariable"] = args?.routerIdVariable; resourceInputs["version"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); super(ServiceRoutingBgpFeature.__pulumiType, name, resourceInputs, opts); } } exports.ServiceRoutingBgpFeature = ServiceRoutingBgpFeature; /** @internal */ ServiceRoutingBgpFeature.__pulumiType = 'sdwan:index/serviceRoutingBgpFeature:ServiceRoutingBgpFeature'; //# sourceMappingURL=serviceRoutingBgpFeature.js.map