UNPKG

@pulumi/scm

Version:

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

283 lines (282 loc) 8.9 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * Layer3Subinterface resource * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scm from "@pulumi/scm"; * * // * // Creates a ethernet interface used as parent-interface for subsequent examples * // * const scmParentInterface = new scm.EthernetInterface("scm_parent_interface", { * name: "$scm_parent_interface", * comment: "Managed by Pulumi", * folder: "ngfw-shared", * layer3: {}, * }); * // * // Creates a layer3 sub-interface with static ip address * // * const scmL3Subinterface = new scm.Layer3Subinterface("scm_l3_subinterface", { * name: "$scm_parent_interface.100", * comment: "Managed by Pulumi", * folder: "ngfw-shared", * tag: 100, * parentInterface: "$scm_parent_interface", * ips: [{ * name: "198.18.1.1/32", * }], * }, { * dependsOn: [scmParentInterface], * }); * const scmParentDhcpInterface = new scm.EthernetInterface("scm_parent_dhcp_interface", { * name: "$scm_parent_dhcp_interface", * comment: "Managed by Pulumi", * folder: "All", * layer3: {}, * }); * // * // Creates a layer3 sub-interface with dhcp * // * const scmL3DhcpSubinterface = new scm.Layer3Subinterface("scm_l3_dhcp_subinterface", { * name: "$scm_parent_dhcp_interface.100", * comment: "Managed by Pulumi", * folder: "All", * tag: 100, * parentInterface: "$scm_parent_dhcp_interface", * dhcpClient: { * enable: true, * createDefaultRoute: true, * defaultRouteMetric: 20, * sendHostname: { * enable: true, * hostname: "client-vlan50-host", * }, * }, * }, { * dependsOn: [scmParentDhcpInterface], * }); * ``` */ export declare class Layer3Subinterface extends pulumi.CustomResource { /** * Get an existing Layer3Subinterface 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: string, id: pulumi.Input<pulumi.ID>, state?: Layer3SubinterfaceState, opts?: pulumi.CustomResourceOptions): Layer3Subinterface; /** * Returns true if the given object is an instance of Layer3Subinterface. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is Layer3Subinterface; /** * Layer 3 sub Interfaces ARP configuration */ readonly arps: pulumi.Output<outputs.Layer3SubinterfaceArp[] | undefined>; /** * Description */ readonly comment: pulumi.Output<string | undefined>; /** * Dynamic DNS configuration specific to the Layer 3 sub Interfaces. */ readonly ddnsConfig: pulumi.Output<outputs.Layer3SubinterfaceDdnsConfig>; /** * The device in which the resource is defined */ readonly device: pulumi.Output<string | undefined>; /** * Layer3 sub interfaces DHCP Client Object * * > ℹ️ **Note:** You must specify exactly one of `dhcpClient` and `ip`. */ readonly dhcpClient: pulumi.Output<outputs.Layer3SubinterfaceDhcpClient>; /** * The folder in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ readonly folder: pulumi.Output<string | undefined>; /** * Interface management profile */ readonly interfaceManagementProfile: pulumi.Output<string | undefined>; /** * L3 sub-interface IP Parent * * > ℹ️ **Note:** You must specify exactly one of `dhcpClient` and `ip`. */ readonly ips: pulumi.Output<outputs.Layer3SubinterfaceIp[] | undefined>; /** * MTU */ readonly mtu: pulumi.Output<number | undefined>; /** * L3 sub-interface name */ readonly name: pulumi.Output<string>; /** * Parent interface */ readonly parentInterface: pulumi.Output<string | undefined>; /** * The snippet in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ readonly snippet: pulumi.Output<string | undefined>; /** * VLAN tag */ readonly tag: pulumi.Output<number | undefined>; readonly tfid: pulumi.Output<string>; /** * Create a Layer3Subinterface resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args?: Layer3SubinterfaceArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Layer3Subinterface resources. */ export interface Layer3SubinterfaceState { /** * Layer 3 sub Interfaces ARP configuration */ arps?: pulumi.Input<pulumi.Input<inputs.Layer3SubinterfaceArp>[]>; /** * Description */ comment?: pulumi.Input<string>; /** * Dynamic DNS configuration specific to the Layer 3 sub Interfaces. */ ddnsConfig?: pulumi.Input<inputs.Layer3SubinterfaceDdnsConfig>; /** * The device in which the resource is defined */ device?: pulumi.Input<string>; /** * Layer3 sub interfaces DHCP Client Object * * > ℹ️ **Note:** You must specify exactly one of `dhcpClient` and `ip`. */ dhcpClient?: pulumi.Input<inputs.Layer3SubinterfaceDhcpClient>; /** * The folder in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ folder?: pulumi.Input<string>; /** * Interface management profile */ interfaceManagementProfile?: pulumi.Input<string>; /** * L3 sub-interface IP Parent * * > ℹ️ **Note:** You must specify exactly one of `dhcpClient` and `ip`. */ ips?: pulumi.Input<pulumi.Input<inputs.Layer3SubinterfaceIp>[]>; /** * MTU */ mtu?: pulumi.Input<number>; /** * L3 sub-interface name */ name?: pulumi.Input<string>; /** * Parent interface */ parentInterface?: pulumi.Input<string>; /** * The snippet in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ snippet?: pulumi.Input<string>; /** * VLAN tag */ tag?: pulumi.Input<number>; tfid?: pulumi.Input<string>; } /** * The set of arguments for constructing a Layer3Subinterface resource. */ export interface Layer3SubinterfaceArgs { /** * Layer 3 sub Interfaces ARP configuration */ arps?: pulumi.Input<pulumi.Input<inputs.Layer3SubinterfaceArp>[]>; /** * Description */ comment?: pulumi.Input<string>; /** * Dynamic DNS configuration specific to the Layer 3 sub Interfaces. */ ddnsConfig?: pulumi.Input<inputs.Layer3SubinterfaceDdnsConfig>; /** * The device in which the resource is defined */ device?: pulumi.Input<string>; /** * Layer3 sub interfaces DHCP Client Object * * > ℹ️ **Note:** You must specify exactly one of `dhcpClient` and `ip`. */ dhcpClient?: pulumi.Input<inputs.Layer3SubinterfaceDhcpClient>; /** * The folder in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ folder?: pulumi.Input<string>; /** * Interface management profile */ interfaceManagementProfile?: pulumi.Input<string>; /** * L3 sub-interface IP Parent * * > ℹ️ **Note:** You must specify exactly one of `dhcpClient` and `ip`. */ ips?: pulumi.Input<pulumi.Input<inputs.Layer3SubinterfaceIp>[]>; /** * MTU */ mtu?: pulumi.Input<number>; /** * L3 sub-interface name */ name?: pulumi.Input<string>; /** * Parent interface */ parentInterface?: pulumi.Input<string>; /** * The snippet in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ snippet?: pulumi.Input<string>; /** * VLAN tag */ tag?: pulumi.Input<number>; }