ProtectedItemArgs

data class ProtectedItemArgs(val containerName: Output<String>? = null, val eTag: Output<String>? = null, val fabricName: Output<String>? = null, val location: Output<String>? = null, val properties: Output<Any>? = null, val protectedItemName: Output<String>? = null, val resourceGroupName: Output<String>? = null, val tags: Output<Map<String, String>>? = null, val vaultName: Output<String>? = null) : ConvertibleToJava<ProtectedItemArgs>

Base class for backup items. Uses Azure REST API version 2024-10-01. In version 2.x of the Azure Native provider, it used API version 2023-04-01. Other available API versions: 2023-02-01, 2023-04-01, 2023-06-01, 2023-08-01, 2024-01-01, 2024-02-01, 2024-04-01, 2024-04-30-preview, 2024-07-30-preview, 2024-11-01-preview, 2025-01-01, 2025-02-01, 2025-02-28-preview. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native recoveryservices [ApiVersion]. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.

Example Usage

Enable Protection on Azure IaasVm

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var protectedItem = new AzureNative.RecoveryServices.ProtectedItem("protectedItem", new()
{
ContainerName = "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1",
FabricName = "Azure",
Properties = new AzureNative.RecoveryServices.Inputs.AzureIaaSComputeVMProtectedItemArgs
{
PolicyId = "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/DefaultPolicy",
ProtectedItemType = "Microsoft.Compute/virtualMachines",
SourceResourceId = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1",
},
ProtectedItemName = "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1",
ResourceGroupName = "SwaggerTestRg",
VaultName = "NetSDKTestRsVault",
});
});
package main
import (
recoveryservices "github.com/pulumi/pulumi-azure-native-sdk/recoveryservices/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := recoveryservices.NewProtectedItem(ctx, "protectedItem", &recoveryservices.ProtectedItemArgs{
ContainerName: pulumi.String("IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1"),
FabricName: pulumi.String("Azure"),
Properties: &recoveryservices.AzureIaaSComputeVMProtectedItemArgs{
PolicyId: pulumi.String("/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/DefaultPolicy"),
ProtectedItemType: pulumi.String("Microsoft.Compute/virtualMachines"),
SourceResourceId: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1"),
},
ProtectedItemName: pulumi.String("VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1"),
ResourceGroupName: pulumi.String("SwaggerTestRg"),
VaultName: pulumi.String("NetSDKTestRsVault"),
})
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.azurenative.recoveryservices.ProtectedItem;
import com.pulumi.azurenative.recoveryservices.ProtectedItemArgs;
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 protectedItem = new ProtectedItem("protectedItem", ProtectedItemArgs.builder()
.containerName("IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1")
.fabricName("Azure")
.properties(AzureIaaSComputeVMProtectedItemArgs.builder()
.policyId("/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/DefaultPolicy")
.protectedItemType("Microsoft.Compute/virtualMachines")
.sourceResourceId("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1")
.build())
.protectedItemName("VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1")
.resourceGroupName("SwaggerTestRg")
.vaultName("NetSDKTestRsVault")
.build());
}
}

Stop Protection with retain data on Azure IaasVm

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var protectedItem = new AzureNative.RecoveryServices.ProtectedItem("protectedItem", new()
{
ContainerName = "IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1",
FabricName = "Azure",
Properties = new AzureNative.RecoveryServices.Inputs.AzureIaaSComputeVMProtectedItemArgs
{
ProtectedItemType = "Microsoft.Compute/virtualMachines",
ProtectionState = AzureNative.RecoveryServices.ProtectionState.ProtectionStopped,
SourceResourceId = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1",
},
ProtectedItemName = "VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1",
ResourceGroupName = "SwaggerTestRg",
VaultName = "NetSDKTestRsVault",
});
});
package main
import (
recoveryservices "github.com/pulumi/pulumi-azure-native-sdk/recoveryservices/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := recoveryservices.NewProtectedItem(ctx, "protectedItem", &recoveryservices.ProtectedItemArgs{
ContainerName: pulumi.String("IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1"),
FabricName: pulumi.String("Azure"),
Properties: &recoveryservices.AzureIaaSComputeVMProtectedItemArgs{
ProtectedItemType: pulumi.String("Microsoft.Compute/virtualMachines"),
ProtectionState: pulumi.String(recoveryservices.ProtectionStateProtectionStopped),
SourceResourceId: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1"),
},
ProtectedItemName: pulumi.String("VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1"),
ResourceGroupName: pulumi.String("SwaggerTestRg"),
VaultName: pulumi.String("NetSDKTestRsVault"),
})
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.azurenative.recoveryservices.ProtectedItem;
import com.pulumi.azurenative.recoveryservices.ProtectedItemArgs;
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 protectedItem = new ProtectedItem("protectedItem", ProtectedItemArgs.builder()
.containerName("IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1")
.fabricName("Azure")
.properties(AzureIaaSComputeVMProtectedItemArgs.builder()
.protectedItemType("Microsoft.Compute/virtualMachines")
.protectionState("ProtectionStopped")
.sourceResourceId("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1")
.build())
.protectedItemName("VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1")
.resourceGroupName("SwaggerTestRg")
.vaultName("NetSDKTestRsVault")
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:recoveryservices:ProtectedItem VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}

Constructors

Link copied to clipboard
constructor(containerName: Output<String>? = null, eTag: Output<String>? = null, fabricName: Output<String>? = null, location: Output<String>? = null, properties: Output<Any>? = null, protectedItemName: Output<String>? = null, resourceGroupName: Output<String>? = null, tags: Output<Map<String, String>>? = null, vaultName: Output<String>? = null)

Properties

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

Container name associated with the backup item.

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

Optional ETag.

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

Fabric name associated with the backup item.

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

Resource location.

Link copied to clipboard
val properties: Output<Any>? = null

ProtectedItemResource properties

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

Item name to be backed up.

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

The name of the resource group where the recovery services vault is present.

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

Resource tags.

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

The name of the recovery services vault.

Functions

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