@pulumi/sdwan
Version:
A Pulumi package for managing resources on Cisco Catalyst SD-WAN.. Based on terraform-provider-sdwan: version v0.4.1
164 lines • 8.56 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.CiscoOmpFeatureTemplate = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("./utilities");
/**
* This resource can manage a Cisco OMP feature template.
* - Minimum SD-WAN Manager version: `15.0.0`
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as sdwan from "@pulumi/sdwan";
*
* const example = new sdwan.CiscoOmpFeatureTemplate("example", {
* name: "Example",
* description: "My Example",
* deviceTypes: ["vedge-C8000V"],
* gracefulRestart: true,
* overlayAs: 1,
* sendPathLimit: 4,
* ecmpLimit: 4,
* shutdown: false,
* ompAdminDistanceIpv4: 10,
* ompAdminDistanceIpv6: 10,
* advertisementInterval: 1,
* gracefulRestartTimer: 43200,
* eorTimer: 300,
* holdtime: 60,
* ignoreRegionPathLength: false,
* transportGateway: "prefer",
* advertiseIpv4Routes: [{
* protocol: "ospf",
* advertiseExternalOspf: "external",
* }],
* advertiseIpv6Routes: [{
* protocol: "ospf",
* }],
* });
* ```
*
* ## Import
*
* The `pulumi import` command can be used, for example:
*
* ```sh
* $ pulumi import sdwan:index/ciscoOmpFeatureTemplate:CiscoOmpFeatureTemplate example "f6b2c44c-693c-4763-b010-895aa3d236bd"
* ```
*/
class CiscoOmpFeatureTemplate extends pulumi.CustomResource {
/**
* Get an existing CiscoOmpFeatureTemplate 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 CiscoOmpFeatureTemplate(name, state, { ...opts, id: id });
}
/**
* Returns true if the given object is an instance of CiscoOmpFeatureTemplate. 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'] === CiscoOmpFeatureTemplate.__pulumiType;
}
constructor(name, argsOrState, opts) {
let resourceInputs = {};
opts = opts || {};
if (opts.id) {
const state = argsOrState;
resourceInputs["advertiseIpv4Routes"] = state?.advertiseIpv4Routes;
resourceInputs["advertiseIpv6Routes"] = state?.advertiseIpv6Routes;
resourceInputs["advertisementInterval"] = state?.advertisementInterval;
resourceInputs["advertisementIntervalVariable"] = state?.advertisementIntervalVariable;
resourceInputs["description"] = state?.description;
resourceInputs["deviceTypes"] = state?.deviceTypes;
resourceInputs["ecmpLimit"] = state?.ecmpLimit;
resourceInputs["ecmpLimitVariable"] = state?.ecmpLimitVariable;
resourceInputs["eorTimer"] = state?.eorTimer;
resourceInputs["eorTimerVariable"] = state?.eorTimerVariable;
resourceInputs["gracefulRestart"] = state?.gracefulRestart;
resourceInputs["gracefulRestartTimer"] = state?.gracefulRestartTimer;
resourceInputs["gracefulRestartTimerVariable"] = state?.gracefulRestartTimerVariable;
resourceInputs["gracefulRestartVariable"] = state?.gracefulRestartVariable;
resourceInputs["holdtime"] = state?.holdtime;
resourceInputs["holdtimeVariable"] = state?.holdtimeVariable;
resourceInputs["ignoreRegionPathLength"] = state?.ignoreRegionPathLength;
resourceInputs["ignoreRegionPathLengthVariable"] = state?.ignoreRegionPathLengthVariable;
resourceInputs["name"] = state?.name;
resourceInputs["ompAdminDistanceIpv4"] = state?.ompAdminDistanceIpv4;
resourceInputs["ompAdminDistanceIpv4Variable"] = state?.ompAdminDistanceIpv4Variable;
resourceInputs["ompAdminDistanceIpv6"] = state?.ompAdminDistanceIpv6;
resourceInputs["ompAdminDistanceIpv6Variable"] = state?.ompAdminDistanceIpv6Variable;
resourceInputs["overlayAs"] = state?.overlayAs;
resourceInputs["overlayAsVariable"] = state?.overlayAsVariable;
resourceInputs["sendPathLimit"] = state?.sendPathLimit;
resourceInputs["sendPathLimitVariable"] = state?.sendPathLimitVariable;
resourceInputs["shutdown"] = state?.shutdown;
resourceInputs["shutdownVariable"] = state?.shutdownVariable;
resourceInputs["templateType"] = state?.templateType;
resourceInputs["transportGateway"] = state?.transportGateway;
resourceInputs["transportGatewayVariable"] = state?.transportGatewayVariable;
resourceInputs["version"] = state?.version;
}
else {
const args = argsOrState;
if (args?.description === undefined && !opts.urn) {
throw new Error("Missing required property 'description'");
}
if (args?.deviceTypes === undefined && !opts.urn) {
throw new Error("Missing required property 'deviceTypes'");
}
resourceInputs["advertiseIpv4Routes"] = args?.advertiseIpv4Routes;
resourceInputs["advertiseIpv6Routes"] = args?.advertiseIpv6Routes;
resourceInputs["advertisementInterval"] = args?.advertisementInterval;
resourceInputs["advertisementIntervalVariable"] = args?.advertisementIntervalVariable;
resourceInputs["description"] = args?.description;
resourceInputs["deviceTypes"] = args?.deviceTypes;
resourceInputs["ecmpLimit"] = args?.ecmpLimit;
resourceInputs["ecmpLimitVariable"] = args?.ecmpLimitVariable;
resourceInputs["eorTimer"] = args?.eorTimer;
resourceInputs["eorTimerVariable"] = args?.eorTimerVariable;
resourceInputs["gracefulRestart"] = args?.gracefulRestart;
resourceInputs["gracefulRestartTimer"] = args?.gracefulRestartTimer;
resourceInputs["gracefulRestartTimerVariable"] = args?.gracefulRestartTimerVariable;
resourceInputs["gracefulRestartVariable"] = args?.gracefulRestartVariable;
resourceInputs["holdtime"] = args?.holdtime;
resourceInputs["holdtimeVariable"] = args?.holdtimeVariable;
resourceInputs["ignoreRegionPathLength"] = args?.ignoreRegionPathLength;
resourceInputs["ignoreRegionPathLengthVariable"] = args?.ignoreRegionPathLengthVariable;
resourceInputs["name"] = args?.name;
resourceInputs["ompAdminDistanceIpv4"] = args?.ompAdminDistanceIpv4;
resourceInputs["ompAdminDistanceIpv4Variable"] = args?.ompAdminDistanceIpv4Variable;
resourceInputs["ompAdminDistanceIpv6"] = args?.ompAdminDistanceIpv6;
resourceInputs["ompAdminDistanceIpv6Variable"] = args?.ompAdminDistanceIpv6Variable;
resourceInputs["overlayAs"] = args?.overlayAs;
resourceInputs["overlayAsVariable"] = args?.overlayAsVariable;
resourceInputs["sendPathLimit"] = args?.sendPathLimit;
resourceInputs["sendPathLimitVariable"] = args?.sendPathLimitVariable;
resourceInputs["shutdown"] = args?.shutdown;
resourceInputs["shutdownVariable"] = args?.shutdownVariable;
resourceInputs["transportGateway"] = args?.transportGateway;
resourceInputs["transportGatewayVariable"] = args?.transportGatewayVariable;
resourceInputs["templateType"] = undefined /*out*/;
resourceInputs["version"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(CiscoOmpFeatureTemplate.__pulumiType, name, resourceInputs, opts);
}
}
exports.CiscoOmpFeatureTemplate = CiscoOmpFeatureTemplate;
/** @internal */
CiscoOmpFeatureTemplate.__pulumiType = 'sdwan:index/ciscoOmpFeatureTemplate:CiscoOmpFeatureTemplate';
//# sourceMappingURL=ciscoOmpFeatureTemplate.js.map