@pulumi/scm
Version:
A Pulumi package for managing resources on Strata Cloud Manager.. Based on terraform-provider-scm: version v0.2.1
163 lines • 5.85 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.AggregateInterface = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("./utilities");
/**
* AggregateInterface resource
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as scm from "@pulumi/scm";
*
* //
* // Creates a layer 2 aggregate interface without vlan configuration
* //
* const scmAggregateIntfL2 = new scm.AggregateInterface("scm_aggregate_intf_l2", {
* name: "$scm_aggregate_intf_l2",
* comment: "Managed by Pulumi",
* folder: "ngfw-shared",
* layer2: {},
* });
* //
* // Creates a layer 2 aggregate interface with vlan and lacp configuration
* //
* const scmAggregateIntfL2Lacp = new scm.AggregateInterface("scm_aggregate_intf_l2_lacp", {
* name: "$scm_aggregate_intf_l2_lacp",
* comment: "Managed by Pulumi",
* folder: "ngfw-shared",
* layer2: {
* vlanTag: "1234",
* lacp: {
* enable: true,
* fastFailover: true,
* systenPriority: 32768,
* transmissionRate: "fast",
* },
* lldp: {
* enable: false,
* },
* },
* });
* //
* // Creates a layer3 aggregate interface without ip configuration
* //
* const scmAggregateIntfL3 = new scm.AggregateInterface("scm_aggregate_intf_l3", {
* name: "$scm_aggregate_intf_l3",
* comment: "Managed by Pulumi",
* folder: "ngfw-shared",
* layer3: {},
* });
* //
* // Creates a layer3 aggregate interface with static ip address and lacp
* //
* const scmAggregateIntfL3Static = new scm.AggregateInterface("scm_aggregate_intf_l3_static", {
* name: "$scm_aggregate_intf_l3_static",
* comment: "Managed by Pulumi",
* folder: "ngfw-shared",
* layer3: {
* ips: [{
* name: "198.18.1.1/24",
* }],
* lacp: {
* enable: true,
* fastFailover: true,
* systenPriority: 32768,
* transmissionRate: "fast",
* },
* },
* });
* //
* // Creates a layer3 aggregate interface with dhcp-assigned ip address
* //
* const scmAggregateIntfL3Dhcp = new scm.AggregateInterface("scm_aggregate_intf_l3_dhcp", {
* name: "$scm_aggregate_intf_l3_dhcp",
* comment: "Managed by Pulumi",
* folder: "ngfw-shared",
* layer3: {
* dhcpClient: {
* enable: true,
* createDefaultRoute: true,
* defaultRouteMetric: 10,
* },
* },
* });
* //
* // Creates a layer3 aggregate interface with multiple static ip addresses
* //
* const scmAggregateIntfL3Complex = new scm.AggregateInterface("scm_aggregate_intf_l3_complex", {
* name: "$scm_aggregate_intf_l3_complex",
* comment: "Managed by Pulumi",
* folder: "ngfw-shared",
* layer3: {
* ips: [{
* name: "198.18.1.1/24",
* name: "198.18.1.2/32",
* }],
* mtu: 1500,
* },
* });
* ```
*/
class AggregateInterface extends pulumi.CustomResource {
/**
* Get an existing AggregateInterface 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 AggregateInterface(name, state, { ...opts, id: id });
}
/**
* Returns true if the given object is an instance of AggregateInterface. 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'] === AggregateInterface.__pulumiType;
}
constructor(name, argsOrState, opts) {
let resourceInputs = {};
opts = opts || {};
if (opts.id) {
const state = argsOrState;
resourceInputs["comment"] = state?.comment;
resourceInputs["defaultValue"] = state?.defaultValue;
resourceInputs["device"] = state?.device;
resourceInputs["folder"] = state?.folder;
resourceInputs["layer2"] = state?.layer2;
resourceInputs["layer3"] = state?.layer3;
resourceInputs["name"] = state?.name;
resourceInputs["snippet"] = state?.snippet;
resourceInputs["tfid"] = state?.tfid;
}
else {
const args = argsOrState;
resourceInputs["comment"] = args?.comment;
resourceInputs["defaultValue"] = args?.defaultValue;
resourceInputs["device"] = args?.device;
resourceInputs["folder"] = args?.folder;
resourceInputs["layer2"] = args?.layer2;
resourceInputs["layer3"] = args?.layer3;
resourceInputs["name"] = args?.name;
resourceInputs["snippet"] = args?.snippet;
resourceInputs["tfid"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(AggregateInterface.__pulumiType, name, resourceInputs, opts);
}
}
exports.AggregateInterface = AggregateInterface;
/** @internal */
AggregateInterface.__pulumiType = 'scm:index/aggregateInterface:AggregateInterface';
//# sourceMappingURL=aggregateInterface.js.map