@pulumiverse/fortios
Version:
A Pulumi package for creating and managing Fortios resources. Based on terraform-provider-fortios: version v1.16.0
253 lines (252 loc) • 14.2 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* Configure redundant internet connections using SD-WAN (formerly virtual WAN link). Applies to FortiOS Version `<= 6.4.0`.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as fortios from "@pulumiverse/fortios";
*
* const trname = new fortios.system.Virtualwanlink("trname", {
* failDetect: "disable",
* loadBalanceMode: "source-ip-based",
* status: "disable",
* });
* ```
*
* ## Import
*
* System VirtualWanLink can be imported using any of these accepted formats:
*
* ```sh
* $ pulumi import fortios:system/virtualwanlink:Virtualwanlink labelname SystemVirtualWanLink
* ```
*
* If you do not want to import arguments of block:
*
* $ export "FORTIOS_IMPORT_TABLE"="false"
*
* ```sh
* $ pulumi import fortios:system/virtualwanlink:Virtualwanlink labelname SystemVirtualWanLink
* ```
*
* $ unset "FORTIOS_IMPORT_TABLE"
*/
export declare class Virtualwanlink extends pulumi.CustomResource {
/**
* Get an existing Virtualwanlink 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?: VirtualwanlinkState, opts?: pulumi.CustomResourceOptions): Virtualwanlink;
/**
* Returns true if the given object is an instance of Virtualwanlink. 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 Virtualwanlink;
/**
* Sort sub-tables, please do not set this parameter when configuring static sub-tables. Options: [ false, true, natural, alphabetical ]. false: Default value, do not sort tables; true/natural: sort tables in natural order. For example: [ a10, a2 ] -> [ a2, a10 ]; alphabetical: sort tables in alphabetical order. For example: [ a10, a2 ] -> [ a10, a2 ].
*/
readonly dynamicSortSubtable: pulumi.Output<string | undefined>;
/**
* Physical interfaces that will be alerted. The structure of `failAlertInterfaces` block is documented below.
*/
readonly failAlertInterfaces: pulumi.Output<outputs.system.VirtualwanlinkFailAlertInterface[] | undefined>;
/**
* Enable/disable SD-WAN Internet connection status checking (failure detection). Valid values: `enable`, `disable`.
*/
readonly failDetect: pulumi.Output<string>;
/**
* Get all sub-tables including unconfigured tables. Do not set this variable to true if you configure sub-table in another resource, otherwise, conflicts and overwrite will occur. Options: [ false, true ]. false: Default value, do not get unconfigured tables; true: get all tables including unconfigured tables.
*/
readonly getAllTables: pulumi.Output<string | undefined>;
/**
* SD-WAN status checking or health checking. Identify a server on the Internet and determine how SD-WAN verifies that the FortiGate can communicate with it. The structure of `healthCheck` block is documented below.
*/
readonly healthChecks: pulumi.Output<outputs.system.VirtualwanlinkHealthCheck[] | undefined>;
/**
* Algorithm or mode to use for load balancing Internet traffic to SD-WAN members. Valid values: `source-ip-based`, `weight-based`, `usage-based`, `source-dest-ip-based`, `measured-volume-based`.
*/
readonly loadBalanceMode: pulumi.Output<string>;
/**
* Physical FortiGate interfaces added to the virtual-wan-link. The structure of `members` block is documented below.
*/
readonly members: pulumi.Output<outputs.system.VirtualwanlinkMember[] | undefined>;
/**
* Waiting period in seconds when switching from the primary neighbor to the secondary neighbor from the neighbor start. (0 - 10000000, default = 0).
*/
readonly neighborHoldBootTime: pulumi.Output<number>;
/**
* Enable/disable hold switching from the secondary neighbor to the primary neighbor. Valid values: `enable`, `disable`.
*/
readonly neighborHoldDown: pulumi.Output<string>;
/**
* Waiting period in seconds when switching from the secondary neighbor to the primary neighbor when hold-down is disabled. (0 - 10000000, default = 0).
*/
readonly neighborHoldDownTime: pulumi.Output<number>;
/**
* Create SD-WAN neighbor from BGP neighbor table to control route advertisements according to SLA status. The structure of `neighbor` block is documented below.
*/
readonly neighbors: pulumi.Output<outputs.system.VirtualwanlinkNeighbor[] | undefined>;
/**
* Create SD-WAN rules or priority rules (also called services) to control how sessions are distributed to physical interfaces in the SD-WAN. The structure of `service` block is documented below.
*/
readonly services: pulumi.Output<outputs.system.VirtualwanlinkService[] | undefined>;
/**
* Enable/disable SD-WAN. Valid values: `disable`, `enable`.
*/
readonly status: pulumi.Output<string>;
/**
* Specifies the vdom to which the resource will be applied when the FortiGate unit is running in VDOM mode. Only one vdom can be specified. If you want to inherit the vdom configuration of the provider, please do not set this parameter.
*/
readonly vdomparam: pulumi.Output<string>;
/**
* Configure SD-WAN zones. The structure of `zone` block is documented below.
*/
readonly zones: pulumi.Output<outputs.system.VirtualwanlinkZone[] | undefined>;
/**
* Create a Virtualwanlink 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?: VirtualwanlinkArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering Virtualwanlink resources.
*/
export interface VirtualwanlinkState {
/**
* Sort sub-tables, please do not set this parameter when configuring static sub-tables. Options: [ false, true, natural, alphabetical ]. false: Default value, do not sort tables; true/natural: sort tables in natural order. For example: [ a10, a2 ] -> [ a2, a10 ]; alphabetical: sort tables in alphabetical order. For example: [ a10, a2 ] -> [ a10, a2 ].
*/
dynamicSortSubtable?: pulumi.Input<string>;
/**
* Physical interfaces that will be alerted. The structure of `failAlertInterfaces` block is documented below.
*/
failAlertInterfaces?: pulumi.Input<pulumi.Input<inputs.system.VirtualwanlinkFailAlertInterface>[]>;
/**
* Enable/disable SD-WAN Internet connection status checking (failure detection). Valid values: `enable`, `disable`.
*/
failDetect?: pulumi.Input<string>;
/**
* Get all sub-tables including unconfigured tables. Do not set this variable to true if you configure sub-table in another resource, otherwise, conflicts and overwrite will occur. Options: [ false, true ]. false: Default value, do not get unconfigured tables; true: get all tables including unconfigured tables.
*/
getAllTables?: pulumi.Input<string>;
/**
* SD-WAN status checking or health checking. Identify a server on the Internet and determine how SD-WAN verifies that the FortiGate can communicate with it. The structure of `healthCheck` block is documented below.
*/
healthChecks?: pulumi.Input<pulumi.Input<inputs.system.VirtualwanlinkHealthCheck>[]>;
/**
* Algorithm or mode to use for load balancing Internet traffic to SD-WAN members. Valid values: `source-ip-based`, `weight-based`, `usage-based`, `source-dest-ip-based`, `measured-volume-based`.
*/
loadBalanceMode?: pulumi.Input<string>;
/**
* Physical FortiGate interfaces added to the virtual-wan-link. The structure of `members` block is documented below.
*/
members?: pulumi.Input<pulumi.Input<inputs.system.VirtualwanlinkMember>[]>;
/**
* Waiting period in seconds when switching from the primary neighbor to the secondary neighbor from the neighbor start. (0 - 10000000, default = 0).
*/
neighborHoldBootTime?: pulumi.Input<number>;
/**
* Enable/disable hold switching from the secondary neighbor to the primary neighbor. Valid values: `enable`, `disable`.
*/
neighborHoldDown?: pulumi.Input<string>;
/**
* Waiting period in seconds when switching from the secondary neighbor to the primary neighbor when hold-down is disabled. (0 - 10000000, default = 0).
*/
neighborHoldDownTime?: pulumi.Input<number>;
/**
* Create SD-WAN neighbor from BGP neighbor table to control route advertisements according to SLA status. The structure of `neighbor` block is documented below.
*/
neighbors?: pulumi.Input<pulumi.Input<inputs.system.VirtualwanlinkNeighbor>[]>;
/**
* Create SD-WAN rules or priority rules (also called services) to control how sessions are distributed to physical interfaces in the SD-WAN. The structure of `service` block is documented below.
*/
services?: pulumi.Input<pulumi.Input<inputs.system.VirtualwanlinkService>[]>;
/**
* Enable/disable SD-WAN. Valid values: `disable`, `enable`.
*/
status?: pulumi.Input<string>;
/**
* Specifies the vdom to which the resource will be applied when the FortiGate unit is running in VDOM mode. Only one vdom can be specified. If you want to inherit the vdom configuration of the provider, please do not set this parameter.
*/
vdomparam?: pulumi.Input<string>;
/**
* Configure SD-WAN zones. The structure of `zone` block is documented below.
*/
zones?: pulumi.Input<pulumi.Input<inputs.system.VirtualwanlinkZone>[]>;
}
/**
* The set of arguments for constructing a Virtualwanlink resource.
*/
export interface VirtualwanlinkArgs {
/**
* Sort sub-tables, please do not set this parameter when configuring static sub-tables. Options: [ false, true, natural, alphabetical ]. false: Default value, do not sort tables; true/natural: sort tables in natural order. For example: [ a10, a2 ] -> [ a2, a10 ]; alphabetical: sort tables in alphabetical order. For example: [ a10, a2 ] -> [ a10, a2 ].
*/
dynamicSortSubtable?: pulumi.Input<string>;
/**
* Physical interfaces that will be alerted. The structure of `failAlertInterfaces` block is documented below.
*/
failAlertInterfaces?: pulumi.Input<pulumi.Input<inputs.system.VirtualwanlinkFailAlertInterface>[]>;
/**
* Enable/disable SD-WAN Internet connection status checking (failure detection). Valid values: `enable`, `disable`.
*/
failDetect?: pulumi.Input<string>;
/**
* Get all sub-tables including unconfigured tables. Do not set this variable to true if you configure sub-table in another resource, otherwise, conflicts and overwrite will occur. Options: [ false, true ]. false: Default value, do not get unconfigured tables; true: get all tables including unconfigured tables.
*/
getAllTables?: pulumi.Input<string>;
/**
* SD-WAN status checking or health checking. Identify a server on the Internet and determine how SD-WAN verifies that the FortiGate can communicate with it. The structure of `healthCheck` block is documented below.
*/
healthChecks?: pulumi.Input<pulumi.Input<inputs.system.VirtualwanlinkHealthCheck>[]>;
/**
* Algorithm or mode to use for load balancing Internet traffic to SD-WAN members. Valid values: `source-ip-based`, `weight-based`, `usage-based`, `source-dest-ip-based`, `measured-volume-based`.
*/
loadBalanceMode?: pulumi.Input<string>;
/**
* Physical FortiGate interfaces added to the virtual-wan-link. The structure of `members` block is documented below.
*/
members?: pulumi.Input<pulumi.Input<inputs.system.VirtualwanlinkMember>[]>;
/**
* Waiting period in seconds when switching from the primary neighbor to the secondary neighbor from the neighbor start. (0 - 10000000, default = 0).
*/
neighborHoldBootTime?: pulumi.Input<number>;
/**
* Enable/disable hold switching from the secondary neighbor to the primary neighbor. Valid values: `enable`, `disable`.
*/
neighborHoldDown?: pulumi.Input<string>;
/**
* Waiting period in seconds when switching from the secondary neighbor to the primary neighbor when hold-down is disabled. (0 - 10000000, default = 0).
*/
neighborHoldDownTime?: pulumi.Input<number>;
/**
* Create SD-WAN neighbor from BGP neighbor table to control route advertisements according to SLA status. The structure of `neighbor` block is documented below.
*/
neighbors?: pulumi.Input<pulumi.Input<inputs.system.VirtualwanlinkNeighbor>[]>;
/**
* Create SD-WAN rules or priority rules (also called services) to control how sessions are distributed to physical interfaces in the SD-WAN. The structure of `service` block is documented below.
*/
services?: pulumi.Input<pulumi.Input<inputs.system.VirtualwanlinkService>[]>;
/**
* Enable/disable SD-WAN. Valid values: `disable`, `enable`.
*/
status?: pulumi.Input<string>;
/**
* Specifies the vdom to which the resource will be applied when the FortiGate unit is running in VDOM mode. Only one vdom can be specified. If you want to inherit the vdom configuration of the provider, please do not set this parameter.
*/
vdomparam?: pulumi.Input<string>;
/**
* Configure SD-WAN zones. The structure of `zone` block is documented below.
*/
zones?: pulumi.Input<pulumi.Input<inputs.system.VirtualwanlinkZone>[]>;
}