UNPKG

@pulumiverse/fortios

Version:

A Pulumi package for creating and managing Fortios resources. Based on terraform-provider-fortios: version v1.16.0

345 lines (344 loc) 13.2 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Configure IPv4 to IPv6 virtual IPs. Applies to FortiOS Version `<= 7.0.0`. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as fortios from "@pulumiverse/fortios"; * * const trname = new fortios.firewall.Vip46("trname", { * arpReply: "enable", * color: 0, * extip: "10.202.1.200", * extport: "0-65535", * fosid: 0, * ldbMethod: "static", * mappedip: "2001:1:1:2::200", * mappedport: "0-65535", * portforward: "disable", * protocol: "tcp", * type: "static-nat", * }); * ``` * * ## Import * * Firewall Vip46 can be imported using any of these accepted formats: * * ```sh * $ pulumi import fortios:firewall/vip46:Vip46 labelname {{name}} * ``` * * If you do not want to import arguments of block: * * $ export "FORTIOS_IMPORT_TABLE"="false" * * ```sh * $ pulumi import fortios:firewall/vip46:Vip46 labelname {{name}} * ``` * * $ unset "FORTIOS_IMPORT_TABLE" */ export declare class Vip46 extends pulumi.CustomResource { /** * Get an existing Vip46 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?: Vip46State, opts?: pulumi.CustomResourceOptions): Vip46; /** * Returns true if the given object is an instance of Vip46. 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 Vip46; /** * Enable ARP reply. Valid values: `disable`, `enable`. */ readonly arpReply: pulumi.Output<string>; /** * Color of icon on the GUI. */ readonly color: pulumi.Output<number>; /** * Comment. */ readonly comment: pulumi.Output<string | undefined>; /** * 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>; /** * Start-external-IP [-end-external-IP]. */ readonly extip: pulumi.Output<string>; /** * External service port. */ readonly extport: pulumi.Output<string>; /** * Custom defined id. */ readonly fosid: pulumi.Output<number>; /** * 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>; /** * Load balance method. Valid values: `static`, `round-robin`, `weighted`, `least-session`, `least-rtt`, `first-alive`. */ readonly ldbMethod: pulumi.Output<string>; /** * Start-mapped-IP [-end mapped-IP]. */ readonly mappedip: pulumi.Output<string>; /** * Mapped service port. */ readonly mappedport: pulumi.Output<string>; /** * Health monitors. The structure of `monitor` block is documented below. */ readonly monitors: pulumi.Output<outputs.firewall.Vip46Monitor[] | undefined>; /** * VIP46 name. */ readonly name: pulumi.Output<string>; /** * Enable port forwarding. Valid values: `disable`, `enable`. */ readonly portforward: pulumi.Output<string>; /** * Mapped port protocol. Valid values: `tcp`, `udp`. */ readonly protocol: pulumi.Output<string>; /** * Real servers. The structure of `realservers` block is documented below. */ readonly realservers: pulumi.Output<outputs.firewall.Vip46Realserver[] | undefined>; /** * Server type. Valid values: `http`, `tcp`, `udp`, `ip`. */ readonly serverType: pulumi.Output<string>; /** * Source IP filter (x.x.x.x/x). The structure of `srcFilter` block is documented below. */ readonly srcFilters: pulumi.Output<outputs.firewall.Vip46SrcFilter[] | undefined>; /** * Interfaces to which the VIP46 applies. Separate the names with spaces. The structure of `srcintfFilter` block is documented below. */ readonly srcintfFilters: pulumi.Output<outputs.firewall.Vip46SrcintfFilter[] | undefined>; /** * VIP type: static NAT or server load balance. Valid values: `static-nat`, `server-load-balance`. */ readonly type: pulumi.Output<string>; /** * Universally Unique Identifier (UUID; automatically assigned but can be manually reset). */ readonly uuid: 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>; /** * Create a Vip46 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: Vip46Args, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Vip46 resources. */ export interface Vip46State { /** * Enable ARP reply. Valid values: `disable`, `enable`. */ arpReply?: pulumi.Input<string>; /** * Color of icon on the GUI. */ color?: pulumi.Input<number>; /** * Comment. */ comment?: pulumi.Input<string>; /** * 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>; /** * Start-external-IP [-end-external-IP]. */ extip?: pulumi.Input<string>; /** * External service port. */ extport?: pulumi.Input<string>; /** * Custom defined id. */ fosid?: pulumi.Input<number>; /** * 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>; /** * Load balance method. Valid values: `static`, `round-robin`, `weighted`, `least-session`, `least-rtt`, `first-alive`. */ ldbMethod?: pulumi.Input<string>; /** * Start-mapped-IP [-end mapped-IP]. */ mappedip?: pulumi.Input<string>; /** * Mapped service port. */ mappedport?: pulumi.Input<string>; /** * Health monitors. The structure of `monitor` block is documented below. */ monitors?: pulumi.Input<pulumi.Input<inputs.firewall.Vip46Monitor>[]>; /** * VIP46 name. */ name?: pulumi.Input<string>; /** * Enable port forwarding. Valid values: `disable`, `enable`. */ portforward?: pulumi.Input<string>; /** * Mapped port protocol. Valid values: `tcp`, `udp`. */ protocol?: pulumi.Input<string>; /** * Real servers. The structure of `realservers` block is documented below. */ realservers?: pulumi.Input<pulumi.Input<inputs.firewall.Vip46Realserver>[]>; /** * Server type. Valid values: `http`, `tcp`, `udp`, `ip`. */ serverType?: pulumi.Input<string>; /** * Source IP filter (x.x.x.x/x). The structure of `srcFilter` block is documented below. */ srcFilters?: pulumi.Input<pulumi.Input<inputs.firewall.Vip46SrcFilter>[]>; /** * Interfaces to which the VIP46 applies. Separate the names with spaces. The structure of `srcintfFilter` block is documented below. */ srcintfFilters?: pulumi.Input<pulumi.Input<inputs.firewall.Vip46SrcintfFilter>[]>; /** * VIP type: static NAT or server load balance. Valid values: `static-nat`, `server-load-balance`. */ type?: pulumi.Input<string>; /** * Universally Unique Identifier (UUID; automatically assigned but can be manually reset). */ uuid?: 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>; } /** * The set of arguments for constructing a Vip46 resource. */ export interface Vip46Args { /** * Enable ARP reply. Valid values: `disable`, `enable`. */ arpReply?: pulumi.Input<string>; /** * Color of icon on the GUI. */ color?: pulumi.Input<number>; /** * Comment. */ comment?: pulumi.Input<string>; /** * 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>; /** * Start-external-IP [-end-external-IP]. */ extip: pulumi.Input<string>; /** * External service port. */ extport?: pulumi.Input<string>; /** * Custom defined id. */ fosid?: pulumi.Input<number>; /** * 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>; /** * Load balance method. Valid values: `static`, `round-robin`, `weighted`, `least-session`, `least-rtt`, `first-alive`. */ ldbMethod?: pulumi.Input<string>; /** * Start-mapped-IP [-end mapped-IP]. */ mappedip: pulumi.Input<string>; /** * Mapped service port. */ mappedport?: pulumi.Input<string>; /** * Health monitors. The structure of `monitor` block is documented below. */ monitors?: pulumi.Input<pulumi.Input<inputs.firewall.Vip46Monitor>[]>; /** * VIP46 name. */ name?: pulumi.Input<string>; /** * Enable port forwarding. Valid values: `disable`, `enable`. */ portforward?: pulumi.Input<string>; /** * Mapped port protocol. Valid values: `tcp`, `udp`. */ protocol?: pulumi.Input<string>; /** * Real servers. The structure of `realservers` block is documented below. */ realservers?: pulumi.Input<pulumi.Input<inputs.firewall.Vip46Realserver>[]>; /** * Server type. Valid values: `http`, `tcp`, `udp`, `ip`. */ serverType?: pulumi.Input<string>; /** * Source IP filter (x.x.x.x/x). The structure of `srcFilter` block is documented below. */ srcFilters?: pulumi.Input<pulumi.Input<inputs.firewall.Vip46SrcFilter>[]>; /** * Interfaces to which the VIP46 applies. Separate the names with spaces. The structure of `srcintfFilter` block is documented below. */ srcintfFilters?: pulumi.Input<pulumi.Input<inputs.firewall.Vip46SrcintfFilter>[]>; /** * VIP type: static NAT or server load balance. Valid values: `static-nat`, `server-load-balance`. */ type?: pulumi.Input<string>; /** * Universally Unique Identifier (UUID; automatically assigned but can be manually reset). */ uuid?: 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>; }