VaultArgs

data class VaultArgs(val classicVmwareReplicationEnabled: Output<Boolean>? = null, val crossRegionRestoreEnabled: Output<Boolean>? = null, val encryption: Output<VaultEncryptionArgs>? = null, val identity: Output<VaultIdentityArgs>? = null, val immutability: Output<String>? = null, val location: Output<String>? = null, val monitoring: Output<VaultMonitoringArgs>? = null, val name: Output<String>? = null, val publicNetworkAccessEnabled: Output<Boolean>? = null, val resourceGroupName: Output<String>? = null, val sku: Output<String>? = null, val softDeleteEnabled: Output<Boolean>? = null, val storageModeType: Output<String>? = null, val tags: Output<Map<String, String>>? = null) : ConvertibleToJava<VaultArgs>

Manages a Recovery Services Vault.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = new azure.core.ResourceGroup("example", {
name: "tfex-recovery_vault",
location: "West Europe",
});
const vault = new azure.recoveryservices.Vault("vault", {
name: "example-recovery-vault",
location: example.location,
resourceGroupName: example.name,
sku: "Standard",
softDeleteEnabled: true,
});
import pulumi
import pulumi_azure as azure
example = azure.core.ResourceGroup("example",
name="tfex-recovery_vault",
location="West Europe")
vault = azure.recoveryservices.Vault("vault",
name="example-recovery-vault",
location=example.location,
resource_group_name=example.name,
sku="Standard",
soft_delete_enabled=True)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() =>
{
var example = new Azure.Core.ResourceGroup("example", new()
{
Name = "tfex-recovery_vault",
Location = "West Europe",
});
var vault = new Azure.RecoveryServices.Vault("vault", new()
{
Name = "example-recovery-vault",
Location = example.Location,
ResourceGroupName = example.Name,
Sku = "Standard",
SoftDeleteEnabled = true,
});
});
package main
import (
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/recoveryservices"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
Name: pulumi.String("tfex-recovery_vault"),
Location: pulumi.String("West Europe"),
})
if err != nil {
return err
}
_, err = recoveryservices.NewVault(ctx, "vault", &recoveryservices.VaultArgs{
Name: pulumi.String("example-recovery-vault"),
Location: example.Location,
ResourceGroupName: example.Name,
Sku: pulumi.String("Standard"),
SoftDeleteEnabled: pulumi.Bool(true),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.recoveryservices.Vault;
import com.pulumi.azure.recoveryservices.VaultArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new ResourceGroup("example", ResourceGroupArgs.builder()
.name("tfex-recovery_vault")
.location("West Europe")
.build());
var vault = new Vault("vault", VaultArgs.builder()
.name("example-recovery-vault")
.location(example.location())
.resourceGroupName(example.name())
.sku("Standard")
.softDeleteEnabled(true)
.build());
}
}
resources:
example:
type: azure:core:ResourceGroup
properties:
name: tfex-recovery_vault
location: West Europe
vault:
type: azure:recoveryservices:Vault
properties:
name: example-recovery-vault
location: ${example.location}
resourceGroupName: ${example.name}
sku: Standard
softDeleteEnabled: true

Import

Recovery Services Vaults can be imported using the resource id, e.g.

$ pulumi import azure:recoveryservices/vault:Vault vault1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.RecoveryServices/vaults/vault1

Constructors

Link copied to clipboard
constructor(classicVmwareReplicationEnabled: Output<Boolean>? = null, crossRegionRestoreEnabled: Output<Boolean>? = null, encryption: Output<VaultEncryptionArgs>? = null, identity: Output<VaultIdentityArgs>? = null, immutability: Output<String>? = null, location: Output<String>? = null, monitoring: Output<VaultMonitoringArgs>? = null, name: Output<String>? = null, publicNetworkAccessEnabled: Output<Boolean>? = null, resourceGroupName: Output<String>? = null, sku: Output<String>? = null, softDeleteEnabled: Output<Boolean>? = null, storageModeType: Output<String>? = null, tags: Output<Map<String, String>>? = null)

Properties

Link copied to clipboard

Whether to enable the Classic experience for VMware replication. If set to false VMware machines will be protected using the new stateless ASR replication appliance. Changing this forces a new resource to be created.

Link copied to clipboard
val crossRegionRestoreEnabled: Output<Boolean>? = null

Is cross region restore enabled for this Vault? Only can be true, when storage_mode_type is GeoRedundant. Defaults to false.

Link copied to clipboard
val encryption: Output<VaultEncryptionArgs>? = null

An encryption block as defined below. Required with identity. !>Note: Once Encryption with your own key has been Enabled it's not possible to Disable it.

Link copied to clipboard
val identity: Output<VaultIdentityArgs>? = null

An identity block as defined below.

Link copied to clipboard
val immutability: Output<String>? = null

Immutability Settings of vault, possible values include: Locked, Unlocked and Disabled.

Link copied to clipboard
val location: Output<String>? = null

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

Link copied to clipboard
val monitoring: Output<VaultMonitoringArgs>? = null

A monitoring block as defined below.

Link copied to clipboard
val name: Output<String>? = null

Specifies the name of the Recovery Services Vault. Recovery Service Vault name must be 2 - 50 characters long, start with a letter, contain only letters, numbers and hyphens. Changing this forces a new resource to be created.

Link copied to clipboard
val publicNetworkAccessEnabled: Output<Boolean>? = null

Is it enabled to access the vault from public networks. Defaults to true.

Link copied to clipboard
val resourceGroupName: Output<String>? = null

The name of the resource group in which to create the Recovery Services Vault. Changing this forces a new resource to be created.

Link copied to clipboard
val sku: Output<String>? = null

Sets the vault's SKU. Possible values include: Standard, RS0.

Link copied to clipboard
val softDeleteEnabled: Output<Boolean>? = null

Is soft delete enable for this Vault? Defaults to true.

Link copied to clipboard
val storageModeType: Output<String>? = null

The storage type of the Recovery Services Vault. Possible values are GeoRedundant, LocallyRedundant and ZoneRedundant. Defaults to GeoRedundant.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

A mapping of tags to assign to the resource.

Functions

Link copied to clipboard
open override fun toJava(): VaultArgs