UNPKG

@pulumi/azure-native

Version:

[![Slack](http://www.pulumi.com/images/docs/badges/slack.svg)](https://slack.pulumi.com) [![NPM version](https://badge.fury.io/js/%40pulumi%2Fazure-native.svg)](https://npmjs.com/package/@pulumi/azure-native) [![Python version](https://badge.fury.io/py/pu

302 lines (301 loc) • 13.4 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; import * as enums from "../types/enums"; /** * A common class for general resource information. * * Uses Azure REST API version 2024-05-01. In version 2.x of the Azure Native provider, it used API version 2023-02-01. * * Other available API versions: 2018-06-01, 2018-07-01, 2018-08-01, 2018-10-01, 2018-11-01, 2018-12-01, 2019-02-01, 2019-04-01, 2019-06-01, 2019-07-01, 2019-08-01, 2019-09-01, 2019-11-01, 2019-12-01, 2020-03-01, 2020-04-01, 2020-05-01, 2020-06-01, 2020-07-01, 2020-08-01, 2020-11-01, 2021-02-01, 2021-03-01, 2021-05-01, 2021-08-01, 2022-01-01, 2022-05-01, 2022-07-01, 2022-09-01, 2022-11-01, 2023-02-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01, 2024-07-01. These can be accessed by generating a local SDK package using the CLI command `pulumi package add azure-native network [ApiVersion]`. See the [version guide](../../../version-guide/#accessing-any-api-version-via-local-packages) for details. */ export declare class VirtualNetworkGateway extends pulumi.CustomResource { /** * Get an existing VirtualNetworkGateway 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 opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): VirtualNetworkGateway; /** * Returns true if the given object is an instance of VirtualNetworkGateway. 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 VirtualNetworkGateway; /** * ActiveActive flag. */ readonly activeActive: pulumi.Output<boolean | undefined>; /** * Property to indicate if the Express Route Gateway serves traffic when there are multiple Express Route Gateways in the vnet */ readonly adminState: pulumi.Output<string | undefined>; /** * Configure this gateway to accept traffic from other Azure Virtual Networks. This configuration does not support connectivity to Azure Virtual WAN. */ readonly allowRemoteVnetTraffic: pulumi.Output<boolean | undefined>; /** * Configures this gateway to accept traffic from remote Virtual WAN networks. */ readonly allowVirtualWanTraffic: pulumi.Output<boolean | undefined>; /** * Autoscale configuration for virutal network gateway */ readonly autoScaleConfiguration: pulumi.Output<outputs.network.VirtualNetworkGatewayAutoScaleConfigurationResponse | undefined>; /** * The Azure API version of the resource. */ readonly azureApiVersion: pulumi.Output<string>; /** * Virtual network gateway's BGP speaker settings. */ readonly bgpSettings: pulumi.Output<outputs.network.BgpSettingsResponse | undefined>; /** * The reference to the address space resource which represents the custom routes address space specified by the customer for virtual network gateway and VpnClient. */ readonly customRoutes: pulumi.Output<outputs.network.AddressSpaceResponse | undefined>; /** * disableIPSecReplayProtection flag. */ readonly disableIPSecReplayProtection: pulumi.Output<boolean | undefined>; /** * Whether BGP is enabled for this virtual network gateway or not. */ readonly enableBgp: pulumi.Output<boolean | undefined>; /** * EnableBgpRouteTranslationForNat flag. */ readonly enableBgpRouteTranslationForNat: pulumi.Output<boolean | undefined>; /** * Whether dns forwarding is enabled or not. */ readonly enableDnsForwarding: pulumi.Output<boolean | undefined>; /** * Whether private IP needs to be enabled on this gateway for connections or not. */ readonly enablePrivateIpAddress: pulumi.Output<boolean | undefined>; /** * A unique read-only string that changes whenever the resource is updated. */ readonly etag: pulumi.Output<string>; /** * The extended location of type local virtual network gateway. */ readonly extendedLocation: pulumi.Output<outputs.network.ExtendedLocationResponse | undefined>; /** * The reference to the LocalNetworkGateway resource which represents local network site having default routes. Assign Null value in case of removing existing default site setting. */ readonly gatewayDefaultSite: pulumi.Output<outputs.network.SubResourceResponse | undefined>; /** * The type of this virtual network gateway. */ readonly gatewayType: pulumi.Output<string | undefined>; /** * The identity of the virtual network gateway, if configured. */ readonly identity: pulumi.Output<outputs.network.ManagedServiceIdentityResponse | undefined>; /** * The IP address allocated by the gateway to which dns requests can be sent. */ readonly inboundDnsForwardingEndpoint: pulumi.Output<string>; /** * IP configurations for virtual network gateway. */ readonly ipConfigurations: pulumi.Output<outputs.network.VirtualNetworkGatewayIPConfigurationResponse[] | undefined>; /** * Resource location. */ readonly location: pulumi.Output<string | undefined>; /** * Resource name. */ readonly name: pulumi.Output<string>; /** * NatRules for virtual network gateway. */ readonly natRules: pulumi.Output<outputs.network.VirtualNetworkGatewayNatRuleResponse[] | undefined>; /** * The provisioning state of the virtual network gateway resource. */ readonly provisioningState: pulumi.Output<string>; /** * Property to indicate if the Express Route Gateway has resiliency model of MultiHomed or SingleHomed */ readonly resiliencyModel: pulumi.Output<string | undefined>; /** * The resource GUID property of the virtual network gateway resource. */ readonly resourceGuid: pulumi.Output<string>; /** * The reference to the VirtualNetworkGatewaySku resource which represents the SKU selected for Virtual network gateway. */ readonly sku: pulumi.Output<outputs.network.VirtualNetworkGatewaySkuResponse | undefined>; /** * Resource tags. */ readonly tags: pulumi.Output<{ [key: string]: string; } | undefined>; /** * Resource type. */ readonly type: pulumi.Output<string>; /** * Customer vnet resource id. VirtualNetworkGateway of type local gateway is associated with the customer vnet. */ readonly vNetExtendedLocationResourceId: pulumi.Output<string | undefined>; /** * The reference to the VirtualNetworkGatewayPolicyGroup resource which represents the available VirtualNetworkGatewayPolicyGroup for the gateway. */ readonly virtualNetworkGatewayPolicyGroups: pulumi.Output<outputs.network.VirtualNetworkGatewayPolicyGroupResponse[] | undefined>; /** * The reference to the VpnClientConfiguration resource which represents the P2S VpnClient configurations. */ readonly vpnClientConfiguration: pulumi.Output<outputs.network.VpnClientConfigurationResponse | undefined>; /** * The generation for this VirtualNetworkGateway. Must be None if gatewayType is not VPN. */ readonly vpnGatewayGeneration: pulumi.Output<string | undefined>; /** * The type of this virtual network gateway. */ readonly vpnType: pulumi.Output<string | undefined>; /** * Create a VirtualNetworkGateway 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: VirtualNetworkGatewayArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a VirtualNetworkGateway resource. */ export interface VirtualNetworkGatewayArgs { /** * ActiveActive flag. */ activeActive?: pulumi.Input<boolean>; /** * Property to indicate if the Express Route Gateway serves traffic when there are multiple Express Route Gateways in the vnet */ adminState?: pulumi.Input<string | enums.network.AdminState>; /** * Configure this gateway to accept traffic from other Azure Virtual Networks. This configuration does not support connectivity to Azure Virtual WAN. */ allowRemoteVnetTraffic?: pulumi.Input<boolean>; /** * Configures this gateway to accept traffic from remote Virtual WAN networks. */ allowVirtualWanTraffic?: pulumi.Input<boolean>; /** * Autoscale configuration for virutal network gateway */ autoScaleConfiguration?: pulumi.Input<inputs.network.VirtualNetworkGatewayAutoScaleConfigurationArgs>; /** * Virtual network gateway's BGP speaker settings. */ bgpSettings?: pulumi.Input<inputs.network.BgpSettingsArgs>; /** * The reference to the address space resource which represents the custom routes address space specified by the customer for virtual network gateway and VpnClient. */ customRoutes?: pulumi.Input<inputs.network.AddressSpaceArgs>; /** * disableIPSecReplayProtection flag. */ disableIPSecReplayProtection?: pulumi.Input<boolean>; /** * Whether BGP is enabled for this virtual network gateway or not. */ enableBgp?: pulumi.Input<boolean>; /** * EnableBgpRouteTranslationForNat flag. */ enableBgpRouteTranslationForNat?: pulumi.Input<boolean>; /** * Whether dns forwarding is enabled or not. */ enableDnsForwarding?: pulumi.Input<boolean>; /** * Whether private IP needs to be enabled on this gateway for connections or not. */ enablePrivateIpAddress?: pulumi.Input<boolean>; /** * The extended location of type local virtual network gateway. */ extendedLocation?: pulumi.Input<inputs.network.ExtendedLocationArgs>; /** * The reference to the LocalNetworkGateway resource which represents local network site having default routes. Assign Null value in case of removing existing default site setting. */ gatewayDefaultSite?: pulumi.Input<inputs.network.SubResourceArgs>; /** * The type of this virtual network gateway. */ gatewayType?: pulumi.Input<string | enums.network.VirtualNetworkGatewayType>; /** * Resource ID. */ id?: pulumi.Input<string>; /** * The identity of the virtual network gateway, if configured. */ identity?: pulumi.Input<inputs.network.ManagedServiceIdentityArgs>; /** * IP configurations for virtual network gateway. */ ipConfigurations?: pulumi.Input<pulumi.Input<inputs.network.VirtualNetworkGatewayIPConfigurationArgs>[]>; /** * Resource location. */ location?: pulumi.Input<string>; /** * NatRules for virtual network gateway. * These are also available as standalone resources. Do not mix inline and standalone resource as they will conflict with each other, leading to resources deletion. */ natRules?: pulumi.Input<pulumi.Input<inputs.network.VirtualNetworkGatewayNatRuleArgs>[]>; /** * Property to indicate if the Express Route Gateway has resiliency model of MultiHomed or SingleHomed */ resiliencyModel?: pulumi.Input<string | enums.network.ResiliencyModel>; /** * The name of the resource group. */ resourceGroupName: pulumi.Input<string>; /** * The reference to the VirtualNetworkGatewaySku resource which represents the SKU selected for Virtual network gateway. */ sku?: pulumi.Input<inputs.network.VirtualNetworkGatewaySkuArgs>; /** * Resource tags. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * Customer vnet resource id. VirtualNetworkGateway of type local gateway is associated with the customer vnet. */ vNetExtendedLocationResourceId?: pulumi.Input<string>; /** * The name of the virtual network gateway. */ virtualNetworkGatewayName?: pulumi.Input<string>; /** * The reference to the VirtualNetworkGatewayPolicyGroup resource which represents the available VirtualNetworkGatewayPolicyGroup for the gateway. */ virtualNetworkGatewayPolicyGroups?: pulumi.Input<pulumi.Input<inputs.network.VirtualNetworkGatewayPolicyGroupArgs>[]>; /** * The reference to the VpnClientConfiguration resource which represents the P2S VpnClient configurations. */ vpnClientConfiguration?: pulumi.Input<inputs.network.VpnClientConfigurationArgs>; /** * The generation for this VirtualNetworkGateway. Must be None if gatewayType is not VPN. */ vpnGatewayGeneration?: pulumi.Input<string | enums.network.VpnGatewayGeneration>; /** * The type of this virtual network gateway. */ vpnType?: pulumi.Input<string | enums.network.VpnType>; }