@pulumi/azure-native
Version:
[](https://slack.pulumi.com) [](https://npmjs.com/package/@pulumi/azure-native) [;
exports.FirewallRule = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../utilities");
/**
* Firewall rule.
*
* Uses Azure REST API version 2024-08-01. In version 2.x of the Azure Native provider, it used API version 2022-12-01.
*
* Other available API versions: 2022-12-01, 2023-03-01-preview, 2023-06-01-preview, 2023-12-01-preview, 2024-03-01-preview, 2024-11-01-preview, 2025-01-01-preview, 2025-06-01-preview, 2025-08-01. These can be accessed by generating a local SDK package using the CLI command `pulumi package add azure-native dbforpostgresql [ApiVersion]`. See the [version guide](../../../version-guide/#accessing-any-api-version-via-local-packages) for details.
*/
class FirewallRule extends pulumi.CustomResource {
/**
* Get an existing FirewallRule 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 FirewallRule(name, undefined, { ...opts, id: id });
}
/**
* Returns true if the given object is an instance of FirewallRule. 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'] === FirewallRule.__pulumiType;
}
/**
* Create a FirewallRule 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?.endIpAddress === undefined && !opts.urn) {
throw new Error("Missing required property 'endIpAddress'");
}
if (args?.resourceGroupName === undefined && !opts.urn) {
throw new Error("Missing required property 'resourceGroupName'");
}
if (args?.serverName === undefined && !opts.urn) {
throw new Error("Missing required property 'serverName'");
}
if (args?.startIpAddress === undefined && !opts.urn) {
throw new Error("Missing required property 'startIpAddress'");
}
resourceInputs["endIpAddress"] = args?.endIpAddress;
resourceInputs["firewallRuleName"] = args?.firewallRuleName;
resourceInputs["resourceGroupName"] = args?.resourceGroupName;
resourceInputs["serverName"] = args?.serverName;
resourceInputs["startIpAddress"] = args?.startIpAddress;
resourceInputs["azureApiVersion"] = undefined /*out*/;
resourceInputs["name"] = undefined /*out*/;
resourceInputs["systemData"] = undefined /*out*/;
resourceInputs["type"] = undefined /*out*/;
}
else {
resourceInputs["azureApiVersion"] = undefined /*out*/;
resourceInputs["endIpAddress"] = undefined /*out*/;
resourceInputs["name"] = undefined /*out*/;
resourceInputs["startIpAddress"] = undefined /*out*/;
resourceInputs["systemData"] = undefined /*out*/;
resourceInputs["type"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
const aliasOpts = { aliases: [{ type: "azure-native:dbforpostgresql/v20171201:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20200214preview:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20200214privatepreview:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20201005privatepreview:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20210410privatepreview:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20210601:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20210601preview:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20210615privatepreview:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20220120preview:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20220308preview:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20221108:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20221201:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20230301preview:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20230302preview:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20230601preview:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20231201preview:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20240301preview:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20240801:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20241101preview:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20250101preview:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20250601preview:FirewallRule" }, { type: "azure-native:dbforpostgresql/v20250801:FirewallRule" }] };
opts = pulumi.mergeOptions(opts, aliasOpts);
super(FirewallRule.__pulumiType, name, resourceInputs, opts);
}
}
exports.FirewallRule = FirewallRule;
/** @internal */
FirewallRule.__pulumiType = 'azure-native:dbforpostgresql:FirewallRule';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZXdhbGxSdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vZGJmb3Jwb3N0Z3Jlc3FsL2ZpcmV3YWxsUnVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsc0VBQXNFO0FBQ3RFLGlGQUFpRjs7O0FBRWpGLHlDQUF5QztBQUl6QywwQ0FBMEM7QUFFMUM7Ozs7OztHQU1HO0FBQ0gsTUFBYSxZQUFhLFNBQVEsTUFBTSxDQUFDLGNBQWM7SUFDbkQ7Ozs7Ozs7T0FPRztJQUNJLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBWSxFQUFFLEVBQTJCLEVBQUUsSUFBbUM7UUFDNUYsT0FBTyxJQUFJLFlBQVksQ0FBQyxJQUFJLEVBQUUsU0FBZ0IsRUFBRSxFQUFFLEdBQUcsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFLRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQVE7UUFDN0IsSUFBSSxHQUFHLEtBQUssU0FBUyxJQUFJLEdBQUcsS0FBSyxJQUFJLEVBQUU7WUFDbkMsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFDRCxPQUFPLEdBQUcsQ0FBQyxjQUFjLENBQUMsS0FBSyxZQUFZLENBQUMsWUFBWSxDQUFDO0lBQzdELENBQUM7SUEyQkQ7Ozs7OztPQU1HO0lBQ0gsWUFBWSxJQUFZLEVBQUUsSUFBc0IsRUFBRSxJQUFtQztRQUNqRixJQUFJLGNBQWMsR0FBa0IsRUFBRSxDQUFDO1FBQ3ZDLElBQUksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFO1lBQ1YsSUFBSSxJQUFJLEVBQUUsWUFBWSxLQUFLLFNBQVMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQy9DLE1BQU0sSUFBSSxLQUFLLENBQUMsMENBQTBDLENBQUMsQ0FBQzthQUMvRDtZQUNELElBQUksSUFBSSxFQUFFLGlCQUFpQixLQUFL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