@pulumi/scm
Version:
A Pulumi package for managing resources on Strata Cloud Manager.. Based on terraform-provider-scm: version v0.2.1
259 lines (258 loc) • 7.25 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
/**
* Zone resource
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as scm from "@pulumi/scm";
*
* //
* // Creates an empty layer3 zone
* //
* const scmLayer3Zone = new scm.Zone("scm_layer3_zone", {
* name: "scm_layer3_zone",
* folder: "ngfw-shared",
* network: {
* layer3s: [],
* },
* });
* //
* // Creates an empty layer2 zone
* //
* const scmLayer2Zone = new scm.Zone("scm_layer2_zone", {
* name: "scm_layer2_zone",
* folder: "ngfw-shared",
* network: {
* layer2s: [],
* },
* });
* //
* // Creates an empty tap zone
* //
* const scmTapZone = new scm.Zone("scm_tap_zone", {
* name: "scm_tap_zone",
* folder: "ngfw-shared",
* network: {
* taps: [],
* },
* });
* //
* // Creates an empty vwire zone
* //
* const scmVwireZone = new scm.Zone("scm_vwire_zone", {
* name: "scm_vwire_zone",
* folder: "ngfw-shared",
* network: {
* virtualWires: [],
* },
* });
* //
* // Creates a layer3 zone
* // Requires Interface $scm_l3_interface to exist
* //
* const scmLayer3ZoneComplex = new scm.Zone("scm_layer3_zone_complex", {
* name: "scm_layer3_zone_complex",
* folder: "ngfw-shared",
* network: {
* layer3s: ["$scm_l3_interface"],
* zoneProtectionProfile: "best-practice",
* enablePacketBufferProtection: true,
* },
* enableDeviceIdentification: true,
* deviceAcl: {
* includeLists: ["198.18.1.0/24"],
* excludeLists: ["198.18.2.0/24"],
* },
* enableUserIdentification: true,
* userAcl: {
* includeLists: ["198.18.3.0/24"],
* excludeLists: ["198.18.4.0/24"],
* },
* });
* ```
*/
export declare class Zone extends pulumi.CustomResource {
/**
* Get an existing Zone 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?: ZoneState, opts?: pulumi.CustomResourceOptions): Zone;
/**
* Returns true if the given object is an instance of Zone. 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 Zone;
/**
* The device in which the resource is defined
*/
readonly device: pulumi.Output<string | undefined>;
/**
* Device acl
*/
readonly deviceAcl: pulumi.Output<outputs.ZoneDeviceAcl | undefined>;
/**
* Dos log setting
*/
readonly dosLogSetting: pulumi.Output<string | undefined>;
/**
* Dos profile
*/
readonly dosProfile: pulumi.Output<string | undefined>;
/**
* Enable device identification
*/
readonly enableDeviceIdentification: pulumi.Output<boolean | undefined>;
/**
* Enable user identification
*/
readonly enableUserIdentification: pulumi.Output<boolean | undefined>;
/**
* Folder
*
* > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
*/
readonly folder: pulumi.Output<string | undefined>;
/**
* Alphanumeric string begin with letter: [0-9a-zA-Z._-]
*/
readonly name: pulumi.Output<string>;
/**
* Network
*/
readonly network: pulumi.Output<outputs.ZoneNetwork | 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>;
readonly tfid: pulumi.Output<string>;
/**
* User acl
*/
readonly userAcl: pulumi.Output<outputs.ZoneUserAcl | undefined>;
/**
* Create a Zone 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?: ZoneArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering Zone resources.
*/
export interface ZoneState {
/**
* The device in which the resource is defined
*/
device?: pulumi.Input<string>;
/**
* Device acl
*/
deviceAcl?: pulumi.Input<inputs.ZoneDeviceAcl>;
/**
* Dos log setting
*/
dosLogSetting?: pulumi.Input<string>;
/**
* Dos profile
*/
dosProfile?: pulumi.Input<string>;
/**
* Enable device identification
*/
enableDeviceIdentification?: pulumi.Input<boolean>;
/**
* Enable user identification
*/
enableUserIdentification?: pulumi.Input<boolean>;
/**
* Folder
*
* > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
*/
folder?: pulumi.Input<string>;
/**
* Alphanumeric string begin with letter: [0-9a-zA-Z._-]
*/
name?: pulumi.Input<string>;
/**
* Network
*/
network?: pulumi.Input<inputs.ZoneNetwork>;
/**
* The snippet in which the resource is defined
*
* > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
*/
snippet?: pulumi.Input<string>;
tfid?: pulumi.Input<string>;
/**
* User acl
*/
userAcl?: pulumi.Input<inputs.ZoneUserAcl>;
}
/**
* The set of arguments for constructing a Zone resource.
*/
export interface ZoneArgs {
/**
* The device in which the resource is defined
*/
device?: pulumi.Input<string>;
/**
* Device acl
*/
deviceAcl?: pulumi.Input<inputs.ZoneDeviceAcl>;
/**
* Dos log setting
*/
dosLogSetting?: pulumi.Input<string>;
/**
* Dos profile
*/
dosProfile?: pulumi.Input<string>;
/**
* Enable device identification
*/
enableDeviceIdentification?: pulumi.Input<boolean>;
/**
* Enable user identification
*/
enableUserIdentification?: pulumi.Input<boolean>;
/**
* Folder
*
* > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
*/
folder?: pulumi.Input<string>;
/**
* Alphanumeric string begin with letter: [0-9a-zA-Z._-]
*/
name?: pulumi.Input<string>;
/**
* Network
*/
network?: pulumi.Input<inputs.ZoneNetwork>;
/**
* The snippet in which the resource is defined
*
* > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
*/
snippet?: pulumi.Input<string>;
/**
* User acl
*/
userAcl?: pulumi.Input<inputs.ZoneUserAcl>;
}