@pulumi/azure-native
Version:
[](https://slack.pulumi.com) [](https://npmjs.com/package/@pulumi/azure-native) [;
exports.VirtualNetworkGateway = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../utilities");
/**
* 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, 2024-10-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.
*/
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, id, opts) {
return new VirtualNetworkGateway(name, undefined, { ...opts, id: id });
}
/**
* 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) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === VirtualNetworkGateway.__pulumiType;
}
/**
* 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, args, opts) {
let resourceInputs = {};
opts = opts || {};
if (!opts.id) {
if (args?.resourceGroupName === undefined && !opts.urn) {
throw new Error("Missing required property 'resourceGroupName'");
}
resourceInputs["activeActive"] = args?.activeActive;
resourceInputs["adminState"] = args?.adminState;
resourceInputs["allowRemoteVnetTraffic"] = args?.allowRemoteVnetTraffic;
resourceInputs["allowVirtualWanTraffic"] = args?.allowVirtualWanTraffic;
resourceInputs["autoScaleConfiguration"] = args?.autoScaleConfiguration;
resourceInputs["bgpSettings"] = args?.bgpSettings;
resourceInputs["customRoutes"] = args?.customRoutes;
resourceInputs["disableIPSecReplayProtection"] = args?.disableIPSecReplayProtection;
resourceInputs["enableBgp"] = args?.enableBgp;
resourceInputs["enableBgpRouteTranslationForNat"] = args?.enableBgpRouteTranslationForNat;
resourceInputs["enableDnsForwarding"] = args?.enableDnsForwarding;
resourceInputs["enablePrivateIpAddress"] = args?.enablePrivateIpAddress;
resourceInputs["extendedLocation"] = args?.extendedLocation;
resourceInputs["gatewayDefaultSite"] = args?.gatewayDefaultSite;
resourceInputs["gatewayType"] = args?.gatewayType;
resourceInputs["id"] = args?.id;
resourceInputs["identity"] = args?.identity;
resourceInputs["ipConfigurations"] = args?.ipConfigurations;
resourceInputs["location"] = args?.location;
resourceInputs["natRules"] = args?.natRules;
resourceInputs["resiliencyModel"] = args?.resiliencyModel;
resourceInputs["resourceGroupName"] = args?.resourceGroupName;
resourceInputs["sku"] = args?.sku;
resourceInputs["tags"] = args?.tags;
resourceInputs["vNetExtendedLocationResourceId"] = args?.vNetExtendedLocationResourceId;
resourceInputs["virtualNetworkGatewayName"] = args?.virtualNetworkGatewayName;
resourceInputs["virtualNetworkGatewayPolicyGroups"] = args?.virtualNetworkGatewayPolicyGroups;
resourceInputs["vpnClientConfiguration"] = args?.vpnClientConfiguration;
resourceInputs["vpnGatewayGeneration"] = args?.vpnGatewayGeneration;
resourceInputs["vpnType"] = args?.vpnType;
resourceInputs["azureApiVersion"] = undefined /*out*/;
resourceInputs["etag"] = undefined /*out*/;
resourceInputs["inboundDnsForwardingEndpoint"] = undefined /*out*/;
resourceInputs["name"] = undefined /*out*/;
resourceInputs["provisioningState"] = undefined /*out*/;
resourceInputs["resourceGuid"] = undefined /*out*/;
resourceInputs["type"] = undefined /*out*/;
}
else {
resourceInputs["activeActive"] = undefined /*out*/;
resourceInputs["adminState"] = undefined /*out*/;
resourceInputs["allowRemoteVnetTraffic"] = undefined /*out*/;
resourceInputs["allowVirtualWanTraffic"] = undefined /*out*/;
resourceInputs["autoScaleConfiguration"] = undefined /*out*/;
resourceInputs["azureApiVersion"] = undefined /*out*/;
resourceInputs["bgpSettings"] = undefined /*out*/;
resourceInputs["customRoutes"] = undefined /*out*/;
resourceInputs["disableIPSecReplayProtection"] = undefined /*out*/;
resourceInputs["enableBgp"] = undefined /*out*/;
resourceInputs["enableBgpRouteTranslationForNat"] = undefined /*out*/;
resourceInputs["enableDnsForwarding"] = undefined /*out*/;
resourceInputs["enablePrivateIpAddress"] = undefined /*out*/;
resourceInputs["etag"] = undefined /*out*/;
resourceInputs["extendedLocation"] = undefined /*out*/;
resourceInputs["gatewayDefaultSite"] = undefined /*out*/;
resourceInputs["gatewayType"] = undefined /*out*/;
resourceInputs["identity"] = undefined /*out*/;
resourceInputs["inboundDnsForwardingEndpoint"] = undefined /*out*/;
resourceInputs["ipConfigurations"] = undefined /*out*/;
resourceInputs["location"] = undefined /*out*/;
resourceInputs["name"] = undefined /*out*/;
resourceInputs["natRules"] = undefined /*out*/;
resourceInputs["provisioningState"] = undefined /*out*/;
resourceInputs["resiliencyModel"] = undefined /*out*/;
resourceInputs["resourceGuid"] = undefined /*out*/;
resourceInputs["sku"] = undefined /*out*/;
resourceInputs["tags"] = undefined /*out*/;
resourceInputs["type"] = undefined /*out*/;
resourceInputs["vNetExtendedLocationResourceId"] = undefined /*out*/;
resourceInputs["virtualNetworkGatewayPolicyGroups"] = undefined /*out*/;
resourceInputs["vpnClientConfiguration"] = undefined /*out*/;
resourceInputs["vpnGatewayGeneration"] = undefined /*out*/;
resourceInputs["vpnType"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
const aliasOpts = { aliases: [{ type: "azure-native:network/v20150615:VirtualNetworkGateway" }, { type: "azure-native:network/v20160330:VirtualNetworkGateway" }, { type: "azure-native:network/v20160601:VirtualNetworkGateway" }, { type: "azure-native:network/v20160901:VirtualNetworkGateway" }, { type: "azure-native:network/v20161201:VirtualNetworkGateway" }, { type: "azure-native:network/v20170301:VirtualNetworkGateway" }, { type: "azure-native:network/v20170601:VirtualNetworkGateway" }, { type: "azure-native:network/v20170801:VirtualNetworkGateway" }, { type: "azure-native:network/v20170901:VirtualNetworkGateway" }, { type: "azure-native:network/v20171001:VirtualNetworkGateway" }, { type: "azure-native:network/v20171101:VirtualNetworkGateway" }, { type: "azure-native:network/v20180101:VirtualNetworkGateway" }, { type: "azure-native:network/v20180201:VirtualNetworkGateway" }, { type: "azure-native:network/v20180401:VirtualNetworkGateway" }, { type: "azure-native:network/v20180601:VirtualNetworkGateway" }, { type: "azure-native:network/v20180701:VirtualNetworkGateway" }, { type: "azure-native:network/v20180801:VirtualNetworkGateway" }, { type: "azure-native:network/v20181001:VirtualNetworkGateway" }, { type: "azure-native:network/v20181101:VirtualNetworkGateway" }, { type: "azure-native:network/v20181201:VirtualNetworkGateway" }, { type: "azure-native:network/v20190201:VirtualNetworkGateway" }, { type: "azure-native:network/v20190401:VirtualNetworkGateway" }, { type: "azure-native:network/v20190601:VirtualNetworkGateway" }, { type: "azure-native:network/v20190701:VirtualNetworkGateway" }, { type: "azure-native:network/v20190801:VirtualNetworkGateway" }, { type: "azure-native:network/v20190901:VirtualNetworkGateway" }, { type: "azure-native:network/v20191101:VirtualNetworkGateway" }, { type: "azure-native:network/v20191201:VirtualNetworkGateway" }, { type: "azure-native:network/v20200301:VirtualNetworkGateway" }, { type: "azure-native:network/v20200401:VirtualNetworkGateway" }, { type: "azure-native:network/v20200501:VirtualNetworkGateway" }, { type: "azure-native:network/v20200601:VirtualNetworkGateway" }, { type: "azure-native:network/v20200701:VirtualNetworkGateway" }, { type: "azure-native:network/v20200801:VirtualNetworkGateway" }, { type: "azure-native:network/v20201101:VirtualNetworkGateway" }, { type: "azure-native:network/v20210201:VirtualNetworkGateway" }, { type: "azure-native:network/v20210301:VirtualNetworkGateway" }, { type: "azure-native:network/v20210501:VirtualNetworkGateway" }, { type: "azure-native:network/v20210801:VirtualNetworkGateway" }, { type: "azure-native:network/v20220101:VirtualNetworkGateway" }, { type: "azure-native:network/v20220501:VirtualNetworkGateway" }, { type: "azure-native:network/v20220701:VirtualNetworkGateway" }, { type: "azure-native:network/v20220901:VirtualNetworkGateway" }, { type: "azure-native:network/v20221101:VirtualNetworkGateway" }, { type: "azure-native:network/v20230201:VirtualNetworkGateway" }, { type: "azure-native:network/v20230401:VirtualNetworkGateway" }, { type: "azure-native:network/v20230501:VirtualNetworkGateway" }, { type: "azure-native:network/v20230601:VirtualNetworkGateway" }, { type: "azure-native:network/v20230901:VirtualNetworkGateway" }, { type: "azure-native:network/v20231101:VirtualNetworkGateway" }, { type: "azure-native:network/v20240101:VirtualNetworkGateway" }, { type: "azure-native:network/v20240301:VirtualNetworkGateway" }, { type: "azure-native:network/v20240501:VirtualNetworkGateway" }, { type: "azure-native:network/v20240701:VirtualNetworkGateway" }, { type: "azure-native:network/v20241001:VirtualNetworkGateway" }] };
opts = pulumi.mergeOptions(opts, aliasOpts);
super(VirtualNetworkGateway.__pulumiType, name, resourceInputs, opts);
}
}
exports.VirtualNetworkGateway = VirtualNetworkGateway;
/** @internal */
VirtualNetworkGateway.__pulumiType = 'azure-native:network:VirtualNetworkGateway';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlydHVhbE5ldHdvcmtHYXRld2F5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbmV0d29yay92aXJ0dWFsTmV0d29ya0dhdGV3YXkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHNFQUFzRTtBQUN0RSxpRkFBaUY7OztBQUVqRix5Q0FBeUM7QUFJekMsMENBQTBDO0FBRTFDOzs7Ozs7R0FNRztBQUNILE1BQWEscUJBQXNCLFNBQVEsTUFBTSxDQUFDLGNBQWM7SUFDNUQ7Ozs7Ozs7T0FPRztJQUNJLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBWSxFQUFFLEVBQTJCLEVBQUUsSUFBbUM7UUFDNUYsT0FBTyxJQUFJLHFCQUFxQixDQUFDLElBQUksRUFBRSxTQUFnQixFQUFFLEVBQUUsR0FBRyxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDbEYsQ0FBQztJQUtEOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBUTtRQUM3QixJQUFJLEdBQUcsS0FBSyxTQUFTLElBQUksR0FBRyxLQUFLLElBQUksRUFBRTtZQUNuQyxPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUNELE9BQU8sR0FBRyxDQUFDLGNBQWMsQ0FBQyxLQUFLLHFCQUFxQixDQUFDLFlBQVksQ0FBQztJQUN0RSxDQUFDO0lBMklEOzs7Ozs7T0FNRztJQUNILFlBQVksSUFBWSxFQUFFLElBQStCLEVBQUUsSUFBbUM7UUFDMUYsSUFBSSxjQUFjLEdBQWtCLEVBQUUsQ0FBQztRQUN2QyxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRTtZQUNWLElBQUksSUFBSSxFQUFFLGlCQUFpQixLQUFLLFNBQVMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ3BELE1BQU0sSUFBSSxLQUFLLENBQUMsK0NBQStDLENBQUMsQ0FBQzthQUNwRTtZQUNELGNBQWMsQ0FB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QUFFLHNEQUFzRCxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsc0RBQXNELEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxzREFBc0QsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLHNEQUFzRCxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsc0RBQXNELEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxzREFBc0QsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLHNEQUFzRCxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsc0RBQXNELEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxzREFBc0QsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLHNEQUFzRCxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsc0RBQXNELEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxzREFBc0QsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLHNEQUFzRCxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsc0RBQXNELEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxzREFBc0QsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLHNEQUFzRCxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsc0RBQXNELEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxzREFBc0QsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLHNEQUFzRCxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsc0RBQXNELEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxzREFBc0QsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLHNEQUFzRCxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsc0RBQXNELEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxzREFBc0QsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLHNEQUFzRCxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsc0RBQXNELEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxzREFBc0QsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLHNEQUFzRCxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsc0RBQXNELEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxzREFBc0QsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLHNEQUFzRCxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsc0RBQXNELEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxzREFBc0QsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLHNEQUFzRCxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsc0RBQXNELEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDOWtILElBQUksR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQztRQUM1QyxLQUFLLENBQUMscUJBQXFCLENBQUMsWUFBWSxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDMUUsQ0FBQzs7QUEvUEwsc0RBZ1FDO0FBblBHLGdCQUFnQjtBQUNPLGtDQUFZLEdBQUcsNENBQTRDLENBQUMifQ==