UNPKG

@pulumi/scm

Version:

A Pulumi package for managing resources on Strata Cloud Manager.. Based on terraform-provider-scm: version v0.2.1

229 lines 8.08 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.EthernetInterface = void 0; const pulumi = require("@pulumi/pulumi"); const utilities = require("./utilities"); /** * EthernetInterface resource * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scm from "@pulumi/scm"; * * // * // Creates various resources used for subsequent examples * // * const scmAeIntf = new scm.AggregateInterface("scm_ae_intf", { * name: "$scm_ae_intf", * comment: "Managed by Pulumi", * folder: "ngfw-shared", * layer2: {}, * }); * // * // Creates a layer 2 ethernet interface without vlan configuration * // * const scmL2Intf = new scm.EthernetInterface("scm_l2_intf", { * name: "$scm_l2_intf", * comment: "Managed by Pulumi", * folder: "ngfw-shared", * linkSpeed: "auto", * linkDuplex: "full", * linkState: "auto", * layer2: {}, * }); * // * // Creates a tap ethernet interface without vlan configuration * // * const scmTapIntf = new scm.EthernetInterface("scm_tap_intf", { * name: "$scm_tap_intf", * comment: "Managed by Pulumi", * folder: "ngfw-shared", * linkSpeed: "auto", * linkDuplex: "full", * linkState: "auto", * tap: {}, * }); * // * // Creates a layer3 ethernet interface without ip configuration * // * const scmL3Intf = new scm.EthernetInterface("scm_l3_intf", { * name: "$scm_l3_intf", * comment: "Managed by Pulumi", * folder: "ngfw-shared", * linkSpeed: "auto", * linkDuplex: "full", * linkState: "auto", * layer3: {}, * }); * // * // Creates a layer3 ethernet interface with static ip address * // * const scmL3IntfStatic = new scm.EthernetInterface("scm_l3_intf_static", { * name: "$scm_l3_intf_static", * comment: "Managed by Pulumi", * folder: "ngfw-shared", * layer3: { * ips: [{ * name: "198.18.1.1/24", * }], * }, * }); * // * // Creates a layer3 ethernet interface with dhcp-assigned ip address * // * const scmL3IntfDhcp = new scm.EthernetInterface("scm_l3_intf_dhcp", { * name: "$scm_l3_intf_dhcp", * comment: "Managed by Pulumi", * folder: "ngfw-shared", * layer3: { * dhcpClient: { * enable: true, * createDefaultRoute: true, * defaultRouteMetric: 10, * }, * }, * }); * // * // Creates a layer3 ethernet interface with pppoe * // * const scmL3IntfPppoe = new scm.EthernetInterface("scm_l3_intf_pppoe", { * name: "$scm_l3_intf_pppoe", * comment: "Managed by Pulumi", * folder: "ngfw-shared", * layer3: { * pppoe: { * authentication: "auto", * enable: true, * username: "testname", * password: "testpass", * createDefaultRoute: true, * defaultRouteMetric: 10, * }, * }, * }); * // * // Creates a layer3 ethernet interface with multiple static ip addresses * // * const scmL3IntfComplex = new scm.EthernetInterface("scm_l3_intf_complex", { * name: "$scm_l3_intf_complex", * comment: "Managed by Pulumi", * folder: "ngfw-shared", * linkSpeed: "auto", * linkDuplex: "full", * linkState: "auto", * layer3: { * ips: [{ * name: "198.18.1.1/24", * name: "198.18.1.2/32", * }], * mtu: 1500, * }, * }); * // * // Creates an ethernet interface assigned to an AggregateEthernet Interface * // * const scmAeMember1 = new scm.EthernetInterface("scm_ae_member_1", { * name: "$scm_ae_member_1", * comment: "Managed by Pulumi", * folder: "ngfw-shared", * aggregateGroup: "$scm_ae_intf", * linkSpeed: "auto", * linkDuplex: "full", * linkState: "auto", * }, { * dependsOn: [scmAeIntf], * }); * // * // Creates an ethernet interface assigned to an AggregateEthernet Interface * // * const scmAeMember2 = new scm.EthernetInterface("scm_ae_member_2", { * name: "$scm_ae_member_2", * comment: "Managed by Pulumi", * folder: "ngfw-shared", * aggregateGroup: "$scm_ae_intf", * linkSpeed: "auto", * linkDuplex: "full", * linkState: "auto", * }, { * dependsOn: [scmAeIntf], * }); * ``` */ class EthernetInterface extends pulumi.CustomResource { /** * Get an existing EthernetInterface 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 EthernetInterface(name, state, { ...opts, id: id }); } /** * Returns true if the given object is an instance of EthernetInterface. 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'] === EthernetInterface.__pulumiType; } constructor(name, argsOrState, opts) { let resourceInputs = {}; opts = opts || {}; if (opts.id) { const state = argsOrState; resourceInputs["aggregateGroup"] = state?.aggregateGroup; resourceInputs["comment"] = state?.comment; resourceInputs["defaultValue"] = state?.defaultValue; resourceInputs["device"] = state?.device; resourceInputs["encryptedValues"] = state?.encryptedValues; resourceInputs["folder"] = state?.folder; resourceInputs["layer2"] = state?.layer2; resourceInputs["layer3"] = state?.layer3; resourceInputs["linkDuplex"] = state?.linkDuplex; resourceInputs["linkSpeed"] = state?.linkSpeed; resourceInputs["linkState"] = state?.linkState; resourceInputs["name"] = state?.name; resourceInputs["poe"] = state?.poe; resourceInputs["snippet"] = state?.snippet; resourceInputs["tap"] = state?.tap; resourceInputs["tfid"] = state?.tfid; } else { const args = argsOrState; resourceInputs["aggregateGroup"] = args?.aggregateGroup; 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["linkDuplex"] = args?.linkDuplex; resourceInputs["linkSpeed"] = args?.linkSpeed; resourceInputs["linkState"] = args?.linkState; resourceInputs["name"] = args?.name; resourceInputs["poe"] = args?.poe; resourceInputs["snippet"] = args?.snippet; resourceInputs["tap"] = args?.tap; resourceInputs["encryptedValues"] = undefined /*out*/; resourceInputs["tfid"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); const secretOpts = { additionalSecretOutputs: ["encryptedValues"] }; opts = pulumi.mergeOptions(opts, secretOpts); super(EthernetInterface.__pulumiType, name, resourceInputs, opts); } } exports.EthernetInterface = EthernetInterface; /** @internal */ EthernetInterface.__pulumiType = 'scm:index/ethernetInterface:EthernetInterface'; //# sourceMappingURL=ethernetInterface.js.map