ACSSBackupConnectionArgs

data class ACSSBackupConnectionArgs(val backupData: Output<Any>? = null, val backupName: Output<String>? = null, val connectorName: Output<String>? = null, val location: Output<String>? = null, val resourceGroupName: Output<String>? = null, val tags: Output<Map<String, String>>? = null) : ConvertibleToJava<ACSSBackupConnectionArgs>

Define the backup connection resource of virtual instance for SAP.. Uses Azure REST API version 2023-10-01-preview. In version 2.x of the Azure Native provider, it used API version 2023-10-01-preview.

Example Usage

Create a HANA backup connection with a new backup policy.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var acssBackupConnection = new AzureNative.Workloads.ACSSBackupConnection("acssBackupConnection", new()
{
BackupData = new AzureNative.Workloads.Inputs.HanaBackupDataArgs
{
BackupPolicy = new AzureNative.Workloads.Inputs.DBBackupPolicyPropertiesArgs
{
BackupManagementType = "AzureWorkload",
Name = "defaultHanaPolicy",
ProtectedItemsCount = 0,
Settings = new AzureNative.Workloads.Inputs.SettingsArgs
{
IsCompression = false,
Issqlcompression = false,
TimeZone = "UTC",
},
SubProtectionPolicy = new[]
{
new AzureNative.Workloads.Inputs.SubProtectionPolicyArgs
{
PolicyType = AzureNative.Workloads.PolicyType.Full,
RetentionPolicy = new AzureNative.Workloads.Inputs.LongTermRetentionPolicyArgs
{
MonthlySchedule = new AzureNative.Workloads.Inputs.MonthlyRetentionScheduleArgs
{
RetentionDuration = new AzureNative.Workloads.Inputs.RetentionDurationArgs
{
Count = 60,
DurationType = AzureNative.Workloads.RetentionDurationType.Months,
},
RetentionScheduleFormatType = AzureNative.Workloads.RetentionScheduleFormat.Weekly,
RetentionScheduleWeekly = new AzureNative.Workloads.Inputs.WeeklyRetentionFormatArgs
{
DaysOfTheWeek = new[]
{
AzureNative.Workloads.DayOfWeek.Sunday,
},
WeeksOfTheMonth = new[]
{
AzureNative.Workloads.WeekOfMonth.First,
},
},
RetentionTimes = new[]
{
"2022-11-29T19:30:00.000Z",
},
},
RetentionPolicyType = "LongTermRetentionPolicy",
WeeklySchedule = new AzureNative.Workloads.Inputs.WeeklyRetentionScheduleArgs
{
DaysOfTheWeek = new[]
{
AzureNative.Workloads.DayOfWeek.Sunday,
},
RetentionDuration = new AzureNative.Workloads.Inputs.RetentionDurationArgs
{
Count = 104,
DurationType = AzureNative.Workloads.RetentionDurationType.Weeks,
},
RetentionTimes = new[]
{
"2022-11-29T19:30:00.000Z",
},
},
YearlySchedule = new AzureNative.Workloads.Inputs.YearlyRetentionScheduleArgs
{
MonthsOfYear = new[]
{
AzureNative.Workloads.MonthOfYear.January,
},
RetentionDuration = new AzureNative.Workloads.Inputs.RetentionDurationArgs
{
Count = 10,
DurationType = AzureNative.Workloads.RetentionDurationType.Years,
},
RetentionScheduleFormatType = AzureNative.Workloads.RetentionScheduleFormat.Weekly,
RetentionScheduleWeekly = new AzureNative.Workloads.Inputs.WeeklyRetentionFormatArgs
{
DaysOfTheWeek = new[]
{
AzureNative.Workloads.DayOfWeek.Sunday,
},
WeeksOfTheMonth = new[]
{
AzureNative.Workloads.WeekOfMonth.First,
},
},
RetentionTimes = new[]
{
"2022-11-29T19:30:00.000Z",
},
},
},
SchedulePolicy = new AzureNative.Workloads.Inputs.SimpleSchedulePolicyArgs
{
SchedulePolicyType = "SimpleSchedulePolicy",
ScheduleRunDays = new[]
{
AzureNative.Workloads.DayOfWeek.Sunday,
},
ScheduleRunFrequency = AzureNative.Workloads.ScheduleRunType.Weekly,
ScheduleRunTimes = new[]
{
"2022-11-29T19:30:00.000Z",
},
},
TieringPolicy =
{
{ "ArchivedRP", new AzureNative.Workloads.Inputs.TieringPolicyArgs
{
TieringMode = AzureNative.Workloads.TieringMode.DoNotTier,
} },
},
},
new AzureNative.Workloads.Inputs.SubProtectionPolicyArgs
{
PolicyType = AzureNative.Workloads.PolicyType.Differential,
RetentionPolicy = new AzureNative.Workloads.Inputs.SimpleRetentionPolicyArgs
{
RetentionDuration = new AzureNative.Workloads.Inputs.RetentionDurationArgs
{
Count = 30,
DurationType = AzureNative.Workloads.RetentionDurationType.Days,
},
RetentionPolicyType = "SimpleRetentionPolicy",
},
SchedulePolicy = new AzureNative.Workloads.Inputs.SimpleSchedulePolicyArgs
{
SchedulePolicyType = "SimpleSchedulePolicy",
ScheduleRunDays = new[]
{
AzureNative.Workloads.DayOfWeek.Monday,
},
ScheduleRunFrequency = AzureNative.Workloads.ScheduleRunType.Weekly,
ScheduleRunTimes = new[]
{
"2022-09-29T02:00:00Z",
},
ScheduleWeeklyFrequency = 0,
},
},
new AzureNative.Workloads.Inputs.SubProtectionPolicyArgs
{
PolicyType = AzureNative.Workloads.PolicyType.Log,
RetentionPolicy = new AzureNative.Workloads.Inputs.SimpleRetentionPolicyArgs
{
RetentionDuration = new AzureNative.Workloads.Inputs.RetentionDurationArgs
{
Count = 20,
DurationType = AzureNative.Workloads.RetentionDurationType.Days,
},
RetentionPolicyType = "SimpleRetentionPolicy",
},
SchedulePolicy = new AzureNative.Workloads.Inputs.LogSchedulePolicyArgs
{
ScheduleFrequencyInMins = 120,
SchedulePolicyType = "LogSchedulePolicy",
},
},
},
WorkLoadType = AzureNative.Workloads.WorkloadType.SAPHanaDatabase,
},
BackupType = "HANA",
DbInstanceSnapshotBackupPolicy = new AzureNative.Workloads.Inputs.DBBackupPolicyPropertiesArgs
{
BackupManagementType = "AzureWorkload",
Name = "defaultDbInstanceSnapshotPolicy",
Settings = new AzureNative.Workloads.Inputs.SettingsArgs
{
IsCompression = false,
Issqlcompression = false,
TimeZone = "UTC",
},
SubProtectionPolicy = new[]
{
new AzureNative.Workloads.Inputs.SubProtectionPolicyArgs
{
PolicyType = AzureNative.Workloads.PolicyType.SnapshotFull,
SchedulePolicy = new AzureNative.Workloads.Inputs.SimpleSchedulePolicyArgs
{
SchedulePolicyType = "SimpleSchedulePolicy",
ScheduleRunFrequency = AzureNative.Workloads.ScheduleRunType.Daily,
ScheduleRunTimes = new[]
{
"2023-09-18T06:30:00.000Z",
},
},
SnapshotBackupAdditionalDetails = new AzureNative.Workloads.Inputs.SnapshotBackupAdditionalDetailsArgs
{
InstantRPDetails = "test-rg",
InstantRpRetentionRangeInDays = 1,
UserAssignedManagedIdentityDetails = new AzureNative.Workloads.Inputs.UserAssignedManagedIdentityDetailsArgs
{
IdentityArmId = "/subscriptions/6d875e77-e412-4d7d-9af4-8895278b4443/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testMsi",
IdentityName = "testMsi",
UserAssignedIdentityProperties = new AzureNative.Workloads.Inputs.UserAssignedIdentityPropertiesArgs
{
ClientId = "c3a877cf-51f8-4031-8f17-ab562d1e7737",
PrincipalId = "2f5834bd-4b86-4d85-a8df-6dd829a6418c",
},
},
},
},
},
WorkLoadType = AzureNative.Workloads.WorkloadType.SAPHanaDBInstance,
},
HdbuserstoreKeyName = "abcd",
InstanceNumber = "00",
RecoveryServicesVault = new AzureNative.Workloads.Inputs.NewRecoveryServicesVaultArgs
{
Name = "test-vault",
ResourceGroup = "test-rg",
VaultType = "New",
},
SslConfiguration = new AzureNative.Workloads.Inputs.SSLConfigurationArgs
{
SslCryptoProvider = AzureNative.Workloads.SslCryptoProvider.Commoncrypto,
SslHostNameInCertificate = "hostname",
SslKeyStore = "sapsrv.pse",
SslTrustStore = "sapsrv.pse",
},
},
BackupName = "dbBackup",
ConnectorName = "C1",
Location = "westcentralus",
ResourceGroupName = "test-rg",
Tags = null,
});
});
package main
import (
workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := workloads.NewACSSBackupConnection(ctx, "acssBackupConnection", &workloads.ACSSBackupConnectionArgs{
BackupData: &workloads.HanaBackupDataArgs{
BackupPolicy: &workloads.DBBackupPolicyPropertiesArgs{
BackupManagementType: pulumi.String("AzureWorkload"),
Name: pulumi.String("defaultHanaPolicy"),
ProtectedItemsCount: pulumi.Int(0),
Settings: &workloads.SettingsArgs{
IsCompression: pulumi.Bool(false),
Issqlcompression: pulumi.Bool(false),
TimeZone: pulumi.String("UTC"),
},
SubProtectionPolicy: workloads.SubProtectionPolicyArray{
&workloads.SubProtectionPolicyArgs{
PolicyType: pulumi.String(workloads.PolicyTypeFull),
RetentionPolicy: workloads.LongTermRetentionPolicy{
MonthlySchedule: workloads.MonthlyRetentionSchedule{
RetentionDuration: workloads.RetentionDuration{
Count: 60,
DurationType: workloads.RetentionDurationTypeMonths,
},
RetentionScheduleFormatType: workloads.RetentionScheduleFormatWeekly,
RetentionScheduleWeekly: workloads.WeeklyRetentionFormat{
DaysOfTheWeek: []workloads.DayOfWeek{
workloads.DayOfWeekSunday,
},
WeeksOfTheMonth: []workloads.WeekOfMonth{
workloads.WeekOfMonthFirst,
},
},
RetentionTimes: []string{
"2022-11-29T19:30:00.000Z",
},
},
RetentionPolicyType: "LongTermRetentionPolicy",
WeeklySchedule: workloads.WeeklyRetentionSchedule{
DaysOfTheWeek: []workloads.DayOfWeek{
workloads.DayOfWeekSunday,
},
RetentionDuration: workloads.RetentionDuration{
Count: 104,
DurationType: workloads.RetentionDurationTypeWeeks,
},
RetentionTimes: []string{
"2022-11-29T19:30:00.000Z",
},
},
YearlySchedule: workloads.YearlyRetentionSchedule{
MonthsOfYear: []workloads.MonthOfYear{
workloads.MonthOfYearJanuary,
},
RetentionDuration: workloads.RetentionDuration{
Count: 10,
DurationType: workloads.RetentionDurationTypeYears,
},
RetentionScheduleFormatType: workloads.RetentionScheduleFormatWeekly,
RetentionScheduleWeekly: workloads.WeeklyRetentionFormat{
DaysOfTheWeek: []workloads.DayOfWeek{
workloads.DayOfWeekSunday,
},
WeeksOfTheMonth: []workloads.WeekOfMonth{
workloads.WeekOfMonthFirst,
},
},
RetentionTimes: []string{
"2022-11-29T19:30:00.000Z",
},
},
},
SchedulePolicy: workloads.SimpleSchedulePolicy{
SchedulePolicyType: "SimpleSchedulePolicy",
ScheduleRunDays: []workloads.DayOfWeek{
workloads.DayOfWeekSunday,
},
ScheduleRunFrequency: workloads.ScheduleRunTypeWeekly,
ScheduleRunTimes: []string{
"2022-11-29T19:30:00.000Z",
},
},
TieringPolicy: workloads.TieringPolicyMap{
"ArchivedRP": &workloads.TieringPolicyArgs{
TieringMode: pulumi.String(workloads.TieringModeDoNotTier),
},
},
},
&workloads.SubProtectionPolicyArgs{
PolicyType: pulumi.String(workloads.PolicyTypeDifferential),
RetentionPolicy: workloads.SimpleRetentionPolicy{
RetentionDuration: workloads.RetentionDuration{
Count: 30,
DurationType: workloads.RetentionDurationTypeDays,
},
RetentionPolicyType: "SimpleRetentionPolicy",
},
SchedulePolicy: workloads.SimpleSchedulePolicy{
SchedulePolicyType: "SimpleSchedulePolicy",
ScheduleRunDays: []workloads.DayOfWeek{
workloads.DayOfWeekMonday,
},
ScheduleRunFrequency: workloads.ScheduleRunTypeWeekly,
ScheduleRunTimes: []string{
"2022-09-29T02:00:00Z",
},
ScheduleWeeklyFrequency: 0,
},
},
&workloads.SubProtectionPolicyArgs{
PolicyType: pulumi.String(workloads.PolicyTypeLog),
RetentionPolicy: workloads.SimpleRetentionPolicy{
RetentionDuration: workloads.RetentionDuration{
Count: 20,
DurationType: workloads.RetentionDurationTypeDays,
},
RetentionPolicyType: "SimpleRetentionPolicy",
},
SchedulePolicy: workloads.LogSchedulePolicy{
ScheduleFrequencyInMins: 120,
SchedulePolicyType: "LogSchedulePolicy",
},
},
},
WorkLoadType: pulumi.String(workloads.WorkloadTypeSAPHanaDatabase),
},
BackupType: pulumi.String("HANA"),
DbInstanceSnapshotBackupPolicy: &workloads.DBBackupPolicyPropertiesArgs{
BackupManagementType: pulumi.String("AzureWorkload"),
Name: pulumi.String("defaultDbInstanceSnapshotPolicy"),
Settings: &workloads.SettingsArgs{
IsCompression: pulumi.Bool(false),
Issqlcompression: pulumi.Bool(false),
TimeZone: pulumi.String("UTC"),
},
SubProtectionPolicy: workloads.SubProtectionPolicyArray{
&workloads.SubProtectionPolicyArgs{
PolicyType: pulumi.String(workloads.PolicyTypeSnapshotFull),
SchedulePolicy: workloads.SimpleSchedulePolicy{
SchedulePolicyType: "SimpleSchedulePolicy",
ScheduleRunFrequency: workloads.ScheduleRunTypeDaily,
ScheduleRunTimes: []string{
"2023-09-18T06:30:00.000Z",
},
},
SnapshotBackupAdditionalDetails: &workloads.SnapshotBackupAdditionalDetailsArgs{
InstantRPDetails: pulumi.String("test-rg"),
InstantRpRetentionRangeInDays: pulumi.Int(1),
UserAssignedManagedIdentityDetails: &workloads.UserAssignedManagedIdentityDetailsArgs{
IdentityArmId: pulumi.String("/subscriptions/6d875e77-e412-4d7d-9af4-8895278b4443/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testMsi"),
IdentityName: pulumi.String("testMsi"),
UserAssignedIdentityProperties: &workloads.UserAssignedIdentityPropertiesArgs{
ClientId: pulumi.String("c3a877cf-51f8-4031-8f17-ab562d1e7737"),
PrincipalId: pulumi.String("2f5834bd-4b86-4d85-a8df-6dd829a6418c"),
},
},
},
},
},
WorkLoadType: pulumi.String(workloads.WorkloadTypeSAPHanaDBInstance),
},
HdbuserstoreKeyName: pulumi.String("abcd"),
InstanceNumber: pulumi.String("00"),
RecoveryServicesVault: workloads.NewRecoveryServicesVault{
Name: "test-vault",
ResourceGroup: "test-rg",
VaultType: "New",
},
SslConfiguration: &workloads.SSLConfigurationArgs{
SslCryptoProvider: pulumi.String(workloads.SslCryptoProviderCommoncrypto),
SslHostNameInCertificate: pulumi.String("hostname"),
SslKeyStore: pulumi.String("sapsrv.pse"),
SslTrustStore: pulumi.String("sapsrv.pse"),
},
},
BackupName: pulumi.String("dbBackup"),
ConnectorName: pulumi.String("C1"),
Location: pulumi.String("westcentralus"),
ResourceGroupName: pulumi.String("test-rg"),
Tags: pulumi.StringMap{},
})
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.workloads.ACSSBackupConnection;
import com.pulumi.azurenative.workloads.ACSSBackupConnectionArgs;
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 acssBackupConnection = new ACSSBackupConnection("acssBackupConnection", ACSSBackupConnectionArgs.builder()
.backupData(HanaBackupDataArgs.builder()
.backupPolicy(Map.ofEntries(
Map.entry("backupManagementType", "AzureWorkload"),
Map.entry("name", "defaultHanaPolicy"),
Map.entry("protectedItemsCount", 0),
Map.entry("settings", SettingsArgs.builder()
.isCompression(false)
.issqlcompression(false)
.timeZone("UTC")
.build()),
Map.entry("subProtectionPolicy",
SubProtectionPolicyArgs.builder()
.policyType("Full")
.retentionPolicy(LongTermRetentionPolicyArgs.builder()
.monthlySchedule(MonthlyRetentionScheduleArgs.builder()
.retentionDuration(RetentionDurationArgs.builder()
.count(60)
.durationType("Months")
.build())
.retentionScheduleFormatType("Weekly")
.retentionScheduleWeekly(WeeklyRetentionFormatArgs.builder()
.daysOfTheWeek("Sunday")
.weeksOfTheMonth("First")
.build())
.retentionTimes("2022-11-29T19:30:00.000Z")
.build())
.retentionPolicyType("LongTermRetentionPolicy")
.weeklySchedule(WeeklyRetentionScheduleArgs.builder()
.daysOfTheWeek("Sunday")
.retentionDuration(RetentionDurationArgs.builder()
.count(104)
.durationType("Weeks")
.build())
.retentionTimes("2022-11-29T19:30:00.000Z")
.build())
.yearlySchedule(YearlyRetentionScheduleArgs.builder()
.monthsOfYear("January")
.retentionDuration(RetentionDurationArgs.builder()
.count(10)
.durationType("Years")
.build())
.retentionScheduleFormatType("Weekly")
.retentionScheduleWeekly(WeeklyRetentionFormatArgs.builder()
.daysOfTheWeek("Sunday")
.weeksOfTheMonth("First")
.build())
.retentionTimes("2022-11-29T19:30:00.000Z")
.build())
.build())
.schedulePolicy(SimpleSchedulePolicyArgs.builder()
.schedulePolicyType("SimpleSchedulePolicy")
.scheduleRunDays("Sunday")
.scheduleRunFrequency("Weekly")
.scheduleRunTimes("2022-11-29T19:30:00.000Z")
.build())
.tieringPolicy(Map.of("ArchivedRP", TieringPolicyArgs.builder()
.tieringMode("DoNotTier")
.build()))
.build(),
SubProtectionPolicyArgs.builder()
.policyType("Differential")
.retentionPolicy(SimpleRetentionPolicyArgs.builder()
.retentionDuration(RetentionDurationArgs.builder()
.count(30)
.durationType("Days")
.build())
.retentionPolicyType("SimpleRetentionPolicy")
.build())
.schedulePolicy(SimpleSchedulePolicyArgs.builder()
.schedulePolicyType("SimpleSchedulePolicy")
.scheduleRunDays("Monday")
.scheduleRunFrequency("Weekly")
.scheduleRunTimes("2022-09-29T02:00:00Z")
.scheduleWeeklyFrequency(0)
.build())
.build(),
SubProtectionPolicyArgs.builder()
.policyType("Log")
.retentionPolicy(SimpleRetentionPolicyArgs.builder()
.retentionDuration(RetentionDurationArgs.builder()
.count(20)
.durationType("Days")
.build())
.retentionPolicyType("SimpleRetentionPolicy")
.build())
.schedulePolicy(LogSchedulePolicyArgs.builder()
.scheduleFrequencyInMins(120)
.schedulePolicyType("LogSchedulePolicy")
.build())
.build()),
Map.entry("workLoadType", "SAPHanaDatabase")
))
.backupType("HANA")
.dbInstanceSnapshotBackupPolicy(Map.ofEntries(
Map.entry("backupManagementType", "AzureWorkload"),
Map.entry("name", "defaultDbInstanceSnapshotPolicy"),
Map.entry("settings", SettingsArgs.builder()
.isCompression(false)
.issqlcompression(false)
.timeZone("UTC")
.build()),
Map.entry("subProtectionPolicy", SubProtectionPolicyArgs.builder()
.policyType("SnapshotFull")
.schedulePolicy(SimpleSchedulePolicyArgs.builder()
.schedulePolicyType("SimpleSchedulePolicy")
.scheduleRunFrequency("Daily")
.scheduleRunTimes("2023-09-18T06:30:00.000Z")
.build())
.snapshotBackupAdditionalDetails(SnapshotBackupAdditionalDetailsArgs.builder()
.instantRPDetails("test-rg")
.instantRpRetentionRangeInDays(1)
.userAssignedManagedIdentityDetails(UserAssignedManagedIdentityDetailsArgs.builder()
.identityArmId("/subscriptions/6d875e77-e412-4d7d-9af4-8895278b4443/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testMsi")
.identityName("testMsi")
.userAssignedIdentityProperties(UserAssignedIdentityPropertiesArgs.builder()
.clientId("c3a877cf-51f8-4031-8f17-ab562d1e7737")
.principalId("2f5834bd-4b86-4d85-a8df-6dd829a6418c")
.build())
.build())
.build())
.build()),
Map.entry("workLoadType", "SAPHanaDBInstance")
))
.hdbuserstoreKeyName("abcd")
.instanceNumber("00")
.recoveryServicesVault(NewRecoveryServicesVaultArgs.builder()
.name("test-vault")
.resourceGroup("test-rg")
.vaultType("New")
.build())
.sslConfiguration(SSLConfigurationArgs.builder()
.sslCryptoProvider("commoncrypto")
.sslHostNameInCertificate("hostname")
.sslKeyStore("sapsrv.pse")
.sslTrustStore("sapsrv.pse")
.build())
.build())
.backupName("dbBackup")
.connectorName("C1")
.location("westcentralus")
.resourceGroupName("test-rg")
.tags(Map.ofEntries(
))
.build());
}
}

Create a SQL backup connection with a new backup policy.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var acssBackupConnection = new AzureNative.Workloads.ACSSBackupConnection("acssBackupConnection", new()
{
BackupData = new AzureNative.Workloads.Inputs.SqlBackupDataArgs
{
BackupPolicy = new AzureNative.Workloads.Inputs.DBBackupPolicyPropertiesArgs
{
BackupManagementType = "AzureWorkload",
Name = "defaultSqlPolicy",
ProtectedItemsCount = 0,
Settings = new AzureNative.Workloads.Inputs.SettingsArgs
{
IsCompression = true,
Issqlcompression = true,
TimeZone = "UTC",
},
SubProtectionPolicy = new[]
{
new AzureNative.Workloads.Inputs.SubProtectionPolicyArgs
{
PolicyType = AzureNative.Workloads.PolicyType.Full,
RetentionPolicy = new AzureNative.Workloads.Inputs.LongTermRetentionPolicyArgs
{
MonthlySchedule = new AzureNative.Workloads.Inputs.MonthlyRetentionScheduleArgs
{
RetentionDuration = new AzureNative.Workloads.Inputs.RetentionDurationArgs
{
Count = 60,
DurationType = AzureNative.Workloads.RetentionDurationType.Months,
},
RetentionScheduleFormatType = AzureNative.Workloads.RetentionScheduleFormat.Weekly,
RetentionScheduleWeekly = new AzureNative.Workloads.Inputs.WeeklyRetentionFormatArgs
{
DaysOfTheWeek = new[]
{
AzureNative.Workloads.DayOfWeek.Sunday,
},
WeeksOfTheMonth = new[]
{
AzureNative.Workloads.WeekOfMonth.First,
},
},
RetentionTimes = new[]
{
"2022-11-29T19:30:00.000Z",
},
},
RetentionPolicyType = "LongTermRetentionPolicy",
WeeklySchedule = new AzureNative.Workloads.Inputs.WeeklyRetentionScheduleArgs
{
DaysOfTheWeek = new[]
{
AzureNative.Workloads.DayOfWeek.Sunday,
},
RetentionDuration = new AzureNative.Workloads.Inputs.RetentionDurationArgs
{
Count = 104,
DurationType = AzureNative.Workloads.RetentionDurationType.Weeks,
},
RetentionTimes = new[]
{
"2022-11-29T19:30:00.000Z",
},
},
YearlySchedule = new AzureNative.Workloads.Inputs.YearlyRetentionScheduleArgs
{
MonthsOfYear = new[]
{
AzureNative.Workloads.MonthOfYear.January,
},
RetentionDuration = new AzureNative.Workloads.Inputs.RetentionDurationArgs
{
Count = 10,
DurationType = AzureNative.Workloads.RetentionDurationType.Years,
},
RetentionScheduleFormatType = AzureNative.Workloads.RetentionScheduleFormat.Weekly,
RetentionScheduleWeekly = new AzureNative.Workloads.Inputs.WeeklyRetentionFormatArgs
{
DaysOfTheWeek = new[]
{
AzureNative.Workloads.DayOfWeek.Sunday,
},
WeeksOfTheMonth = new[]
{
AzureNative.Workloads.WeekOfMonth.First,
},
},
RetentionTimes = new[]
{
"2022-11-29T19:30:00.000Z",
},
},
},
SchedulePolicy = new AzureNative.Workloads.Inputs.SimpleSchedulePolicyArgs
{
SchedulePolicyType = "SimpleSchedulePolicy",
ScheduleRunDays = new[]
{
AzureNative.Workloads.DayOfWeek.Sunday,
},
ScheduleRunFrequency = AzureNative.Workloads.ScheduleRunType.Weekly,
ScheduleRunTimes = new[]
{
"2022-11-29T19:30:00.000Z",
},
},
TieringPolicy =
{
{ "ArchivedRP", new AzureNative.Workloads.Inputs.TieringPolicyArgs
{
Duration = 45,
DurationType = AzureNative.Workloads.RetentionDurationType.Days,
TieringMode = AzureNative.Workloads.TieringMode.TierAfter,
} },
},
},
new AzureNative.Workloads.Inputs.SubProtectionPolicyArgs
{
PolicyType = AzureNative.Workloads.PolicyType.Differential,
RetentionPolicy = new AzureNative.Workloads.Inputs.SimpleRetentionPolicyArgs
{
RetentionDuration = new AzureNative.Workloads.Inputs.RetentionDurationArgs
{
Count = 30,
DurationType = AzureNative.Workloads.RetentionDurationType.Days,
},
RetentionPolicyType = "SimpleRetentionPolicy",
},
SchedulePolicy = new AzureNative.Workloads.Inputs.SimpleSchedulePolicyArgs
{
SchedulePolicyType = "SimpleSchedulePolicy",
ScheduleRunDays = new[]
{
AzureNative.Workloads.DayOfWeek.Monday,
},
ScheduleRunFrequency = AzureNative.Workloads.ScheduleRunType.Weekly,
ScheduleRunTimes = new[]
{
"2022-09-29T02:00:00Z",
},
ScheduleWeeklyFrequency = 0,
},
},
new AzureNative.Workloads.Inputs.SubProtectionPolicyArgs
{
PolicyType = AzureNative.Workloads.PolicyType.Log,
RetentionPolicy = new AzureNative.Workloads.Inputs.SimpleRetentionPolicyArgs
{
RetentionDuration = new AzureNative.Workloads.Inputs.RetentionDurationArgs
{
Count = 20,
DurationType = AzureNative.Workloads.RetentionDurationType.Days,
},
RetentionPolicyType = "SimpleRetentionPolicy",
},
SchedulePolicy = new AzureNative.Workloads.Inputs.LogSchedulePolicyArgs
{
ScheduleFrequencyInMins = 120,
SchedulePolicyType = "LogSchedulePolicy",
},
},
},
WorkLoadType = AzureNative.Workloads.WorkloadType.SQLDataBase,
},
BackupType = "SQL",
RecoveryServicesVault = new AzureNative.Workloads.Inputs.NewRecoveryServicesVaultArgs
{
Name = "test-vault",
ResourceGroup = "test-rg",
VaultType = "New",
},
},
BackupName = "dbBackup",
ConnectorName = "C1",
Location = "westcentralus",
ResourceGroupName = "test-rg",
Tags = null,
});
});
package main
import (
workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := workloads.NewACSSBackupConnection(ctx, "acssBackupConnection", &workloads.ACSSBackupConnectionArgs{
BackupData: &workloads.SqlBackupDataArgs{
BackupPolicy: &workloads.DBBackupPolicyPropertiesArgs{
BackupManagementType: pulumi.String("AzureWorkload"),
Name: pulumi.String("defaultSqlPolicy"),
ProtectedItemsCount: pulumi.Int(0),
Settings: &workloads.SettingsArgs{
IsCompression: pulumi.Bool(true),
Issqlcompression: pulumi.Bool(true),
TimeZone: pulumi.String("UTC"),
},
SubProtectionPolicy: workloads.SubProtectionPolicyArray{
&workloads.SubProtectionPolicyArgs{
PolicyType: pulumi.String(workloads.PolicyTypeFull),
RetentionPolicy: workloads.LongTermRetentionPolicy{
MonthlySchedule: workloads.MonthlyRetentionSchedule{
RetentionDuration: workloads.RetentionDuration{
Count: 60,
DurationType: workloads.RetentionDurationTypeMonths,
},
RetentionScheduleFormatType: workloads.RetentionScheduleFormatWeekly,
RetentionScheduleWeekly: workloads.WeeklyRetentionFormat{
DaysOfTheWeek: []workloads.DayOfWeek{
workloads.DayOfWeekSunday,
},
WeeksOfTheMonth: []workloads.WeekOfMonth{
workloads.WeekOfMonthFirst,
},
},
RetentionTimes: []string{
"2022-11-29T19:30:00.000Z",
},
},
RetentionPolicyType: "LongTermRetentionPolicy",
WeeklySchedule: workloads.WeeklyRetentionSchedule{
DaysOfTheWeek: []workloads.DayOfWeek{
workloads.DayOfWeekSunday,
},
RetentionDuration: workloads.RetentionDuration{
Count: 104,
DurationType: workloads.RetentionDurationTypeWeeks,
},
RetentionTimes: []string{
"2022-11-29T19:30:00.000Z",
},
},
YearlySchedule: workloads.YearlyRetentionSchedule{
MonthsOfYear: []workloads.MonthOfYear{
workloads.MonthOfYearJanuary,
},
RetentionDuration: workloads.RetentionDuration{
Count: 10,
DurationType: workloads.RetentionDurationTypeYears,
},
RetentionScheduleFormatType: workloads.RetentionScheduleFormatWeekly,
RetentionScheduleWeekly: workloads.WeeklyRetentionFormat{
DaysOfTheWeek: []workloads.DayOfWeek{
workloads.DayOfWeekSunday,
},
WeeksOfTheMonth: []workloads.WeekOfMonth{
workloads.WeekOfMonthFirst,
},
},
RetentionTimes: []string{
"2022-11-29T19:30:00.000Z",
},
},
},
SchedulePolicy: workloads.SimpleSchedulePolicy{
SchedulePolicyType: "SimpleSchedulePolicy",
ScheduleRunDays: []workloads.DayOfWeek{
workloads.DayOfWeekSunday,
},
ScheduleRunFrequency: workloads.ScheduleRunTypeWeekly,
ScheduleRunTimes: []string{
"2022-11-29T19:30:00.000Z",
},
},
TieringPolicy: workloads.TieringPolicyMap{
"ArchivedRP": &workloads.TieringPolicyArgs{
Duration: pulumi.Int(45),
DurationType: pulumi.String(workloads.RetentionDurationTypeDays),
TieringMode: pulumi.String(workloads.TieringModeTierAfter),
},
},
},
&workloads.SubProtectionPolicyArgs{
PolicyType: pulumi.String(workloads.PolicyTypeDifferential),
RetentionPolicy: workloads.SimpleRetentionPolicy{
RetentionDuration: workloads.RetentionDuration{
Count: 30,
DurationType: workloads.RetentionDurationTypeDays,
},
RetentionPolicyType: "SimpleRetentionPolicy",
},
SchedulePolicy: workloads.SimpleSchedulePolicy{
SchedulePolicyType: "SimpleSchedulePolicy",
ScheduleRunDays: []workloads.DayOfWeek{
workloads.DayOfWeekMonday,
},
ScheduleRunFrequency: workloads.ScheduleRunTypeWeekly,
ScheduleRunTimes: []string{
"2022-09-29T02:00:00Z",
},
ScheduleWeeklyFrequency: 0,
},
},
&workloads.SubProtectionPolicyArgs{
PolicyType: pulumi.String(workloads.PolicyTypeLog),
RetentionPolicy: workloads.SimpleRetentionPolicy{
RetentionDuration: workloads.RetentionDuration{
Count: 20,
DurationType: workloads.RetentionDurationTypeDays,
},
RetentionPolicyType: "SimpleRetentionPolicy",
},
SchedulePolicy: workloads.LogSchedulePolicy{
ScheduleFrequencyInMins: 120,
SchedulePolicyType: "LogSchedulePolicy",
},
},
},
WorkLoadType: pulumi.String(workloads.WorkloadTypeSQLDataBase),
},
BackupType: pulumi.String("SQL"),
RecoveryServicesVault: workloads.NewRecoveryServicesVault{
Name: "test-vault",
ResourceGroup: "test-rg",
VaultType: "New",
},
},
BackupName: pulumi.String("dbBackup"),
ConnectorName: pulumi.String("C1"),
Location: pulumi.String("westcentralus"),
ResourceGroupName: pulumi.String("test-rg"),
Tags: pulumi.StringMap{},
})
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.workloads.ACSSBackupConnection;
import com.pulumi.azurenative.workloads.ACSSBackupConnectionArgs;
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 acssBackupConnection = new ACSSBackupConnection("acssBackupConnection", ACSSBackupConnectionArgs.builder()
.backupData(SqlBackupDataArgs.builder()
.backupPolicy(Map.ofEntries(
Map.entry("backupManagementType", "AzureWorkload"),
Map.entry("name", "defaultSqlPolicy"),
Map.entry("protectedItemsCount", 0),
Map.entry("settings", SettingsArgs.builder()
.isCompression(true)
.issqlcompression(true)
.timeZone("UTC")
.build()),
Map.entry("subProtectionPolicy",
SubProtectionPolicyArgs.builder()
.policyType("Full")
.retentionPolicy(LongTermRetentionPolicyArgs.builder()
.monthlySchedule(MonthlyRetentionScheduleArgs.builder()
.retentionDuration(RetentionDurationArgs.builder()
.count(60)
.durationType("Months")
.build())
.retentionScheduleFormatType("Weekly")
.retentionScheduleWeekly(WeeklyRetentionFormatArgs.builder()
.daysOfTheWeek("Sunday")
.weeksOfTheMonth("First")
.build())
.retentionTimes("2022-11-29T19:30:00.000Z")
.build())
.retentionPolicyType("LongTermRetentionPolicy")
.weeklySchedule(WeeklyRetentionScheduleArgs.builder()
.daysOfTheWeek("Sunday")
.retentionDuration(RetentionDurationArgs.builder()
.count(104)
.durationType("Weeks")
.build())
.retentionTimes("2022-11-29T19:30:00.000Z")
.build())
.yearlySchedule(YearlyRetentionScheduleArgs.builder()
.monthsOfYear("January")
.retentionDuration(RetentionDurationArgs.builder()
.count(10)
.durationType("Years")
.build())
.retentionScheduleFormatType("Weekly")
.retentionScheduleWeekly(WeeklyRetentionFormatArgs.builder()
.daysOfTheWeek("Sunday")
.weeksOfTheMonth("First")
.build())
.retentionTimes("2022-11-29T19:30:00.000Z")
.build())
.build())
.schedulePolicy(SimpleSchedulePolicyArgs.builder()
.schedulePolicyType("SimpleSchedulePolicy")
.scheduleRunDays("Sunday")
.scheduleRunFrequency("Weekly")
.scheduleRunTimes("2022-11-29T19:30:00.000Z")
.build())
.tieringPolicy(Map.of("ArchivedRP", TieringPolicyArgs.builder()
.duration(45)
.durationType("Days")
.tieringMode("TierAfter")
.build()))
.build(),
SubProtectionPolicyArgs.builder()
.policyType("Differential")
.retentionPolicy(SimpleRetentionPolicyArgs.builder()
.retentionDuration(RetentionDurationArgs.builder()
.count(30)
.durationType("Days")
.build())
.retentionPolicyType("SimpleRetentionPolicy")
.build())
.schedulePolicy(SimpleSchedulePolicyArgs.builder()
.schedulePolicyType("SimpleSchedulePolicy")
.scheduleRunDays("Monday")
.scheduleRunFrequency("Weekly")
.scheduleRunTimes("2022-09-29T02:00:00Z")
.scheduleWeeklyFrequency(0)
.build())
.build(),
SubProtectionPolicyArgs.builder()
.policyType("Log")
.retentionPolicy(SimpleRetentionPolicyArgs.builder()
.retentionDuration(RetentionDurationArgs.builder()
.count(20)
.durationType("Days")
.build())
.retentionPolicyType("SimpleRetentionPolicy")
.build())
.schedulePolicy(LogSchedulePolicyArgs.builder()
.scheduleFrequencyInMins(120)
.schedulePolicyType("LogSchedulePolicy")
.build())
.build()),
Map.entry("workLoadType", "SQLDataBase")
))
.backupType("SQL")
.recoveryServicesVault(NewRecoveryServicesVaultArgs.builder()
.name("test-vault")
.resourceGroup("test-rg")
.vaultType("New")
.build())
.build())
.backupName("dbBackup")
.connectorName("C1")
.location("westcentralus")
.resourceGroupName("test-rg")
.tags(Map.ofEntries(
))
.build());
}
}

Create a VM backup connection with a new backup policy with tieringPolicy.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var acssBackupConnection = new AzureNative.Workloads.ACSSBackupConnection("acssBackupConnection", new()
{
BackupData = new AzureNative.Workloads.Inputs.VMBackupDataArgs
{
BackupPolicy = new AzureNative.Workloads.Inputs.VMBackupPolicyPropertiesArgs
{
BackupManagementType = "AzureIaasVM",
InstantRPDetails = new AzureNative.Workloads.Inputs.InstantRPAdditionalDetailsArgs
{
AzureBackupRGNamePrefix = "dasas",
AzureBackupRGNameSuffix = "a",
},
InstantRpRetentionRangeInDays = 2,
Name = "defaultVmPolicy",
PolicyType = AzureNative.Workloads.IAASVMPolicyType.V1,
ProtectedItemsCount = 0,
RetentionPolicy = new AzureNative.Workloads.Inputs.LongTermRetentionPolicyArgs
{
DailySchedule = new AzureNative.Workloads.Inputs.DailyRetentionScheduleArgs
{
RetentionDuration = new AzureNative.Workloads.Inputs.RetentionDurationArgs
{
Count = 30,
DurationType = AzureNative.Workloads.RetentionDurationType.Days,
},
RetentionTimes = new[]
{
"2022-11-29T19:30:00.000Z",
},
},
MonthlySchedule = new AzureNative.Workloads.Inputs.MonthlyRetentionScheduleArgs
{
RetentionDuration = new AzureNative.Workloads.Inputs.RetentionDurationArgs
{
Count = 60,
DurationType = AzureNative.Workloads.RetentionDurationType.Months,
},
RetentionScheduleFormatType = AzureNative.Workloads.RetentionScheduleFormat.Weekly,
RetentionScheduleWeekly = new AzureNative.Workloads.Inputs.WeeklyRetentionFormatArgs
{
DaysOfTheWeek = new[]
{
AzureNative.Workloads.DayOfWeek.Sunday,
},
WeeksOfTheMonth = new[]
{
AzureNative.Workloads.WeekOfMonth.First,
},
},
RetentionTimes = new[]
{
"2022-11-29T19:30:00.000Z",
},
},
RetentionPolicyType = "LongTermRetentionPolicy",
WeeklySchedule = new AzureNative.Workloads.Inputs.WeeklyRetentionScheduleArgs
{
DaysOfTheWeek = new[]
{
AzureNative.Workloads.DayOfWeek.Sunday,
},
RetentionDuration = new AzureNative.Workloads.Inputs.RetentionDurationArgs
{
Count = 12,
DurationType = AzureNative.Workloads.RetentionDurationType.Weeks,
},
RetentionTimes = new[]
{
"2022-11-29T19:30:00.000Z",
},
},
YearlySchedule = new AzureNative.Workloads.Inputs.YearlyRetentionScheduleArgs
{
MonthsOfYear = new[]
{
AzureNative.Workloads.MonthOfYear.January,
},
RetentionDuration = new AzureNative.Workloads.Inputs.RetentionDurationArgs
{
Count = 10,
DurationType = AzureNative.Workloads.RetentionDurationType.Years,
},
RetentionScheduleFormatType = AzureNative.Workloads.RetentionScheduleFormat.Weekly,
RetentionScheduleWeekly = new AzureNative.Workloads.Inputs.WeeklyRetentionFormatArgs
{
DaysOfTheWeek = new[]
{
AzureNative.Workloads.DayOfWeek.Sunday,
},
WeeksOfTheMonth = new[]
{
AzureNative.Workloads.WeekOfMonth.First,
},
},
RetentionTimes = new[]
{
"2022-11-29T19:30:00.000Z",
},
},
},
SchedulePolicy = new AzureNative.Workloads.Inputs.SimpleSchedulePolicyArgs
{
SchedulePolicyType = "SimpleSchedulePolicy",
ScheduleRunFrequency = AzureNative.Workloads.ScheduleRunType.Daily,
ScheduleRunTimes = new[]
{
"2022-11-29T19:30:00.000Z",
},
},
TieringPolicy =
{
{ "ArchivedRP", new AzureNative.Workloads.Inputs.TieringPolicyArgs
{
Duration = 3,
DurationType = AzureNative.Workloads.RetentionDurationType.Months,
TieringMode = AzureNative.Workloads.TieringMode.TierAfter,
} },
},
TimeZone = "UTC",
},
BackupType = "VM",
DiskExclusionProperties = new AzureNative.Workloads.Inputs.DiskExclusionPropertiesArgs
{
DiskLunList = new() { },
IsInclusionList = true,
},
RecoveryServicesVault = new AzureNative.Workloads.Inputs.NewRecoveryServicesVaultArgs
{
Name = "test-vault",
ResourceGroup = "test-rg",
VaultType = "New",
},
},
BackupName = "vmBackup",
ConnectorName = "C1",
Location = "westcentralus",
ResourceGroupName = "test-rg",
Tags = null,
});
});
package main
import (
workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := workloads.NewACSSBackupConnection(ctx, "acssBackupConnection", &workloads.ACSSBackupConnectionArgs{
BackupData: &workloads.VMBackupDataArgs{
BackupPolicy: &workloads.VMBackupPolicyPropertiesArgs{
BackupManagementType: pulumi.String("AzureIaasVM"),
InstantRPDetails: &workloads.InstantRPAdditionalDetailsArgs{
AzureBackupRGNamePrefix: pulumi.String("dasas"),
AzureBackupRGNameSuffix: pulumi.String("a"),
},
InstantRpRetentionRangeInDays: pulumi.Int(2),
Name: pulumi.String("defaultVmPolicy"),
PolicyType: pulumi.String(workloads.IAASVMPolicyTypeV1),
ProtectedItemsCount: pulumi.Int(0),
RetentionPolicy: workloads.LongTermRetentionPolicy{
DailySchedule: workloads.DailyRetentionSchedule{
RetentionDuration: workloads.RetentionDuration{
Count: 30,
DurationType: workloads.RetentionDurationTypeDays,
},
RetentionTimes: []string{
"2022-11-29T19:30:00.000Z",
},
},
MonthlySchedule: workloads.MonthlyRetentionSchedule{
RetentionDuration: workloads.RetentionDuration{
Count: 60,
DurationType: workloads.RetentionDurationTypeMonths,
},
RetentionScheduleFormatType: workloads.RetentionScheduleFormatWeekly,
RetentionScheduleWeekly: workloads.WeeklyRetentionFormat{
DaysOfTheWeek: []workloads.DayOfWeek{
workloads.DayOfWeekSunday,
},
WeeksOfTheMonth: []workloads.WeekOfMonth{
workloads.WeekOfMonthFirst,
},
},
RetentionTimes: []string{
"2022-11-29T19:30:00.000Z",
},
},
RetentionPolicyType: "LongTermRetentionPolicy",
WeeklySchedule: workloads.WeeklyRetentionSchedule{
DaysOfTheWeek: []workloads.DayOfWeek{
workloads.DayOfWeekSunday,
},
RetentionDuration: workloads.RetentionDuration{
Count: 12,
DurationType: workloads.RetentionDurationTypeWeeks,
},
RetentionTimes: []string{
"2022-11-29T19:30:00.000Z",
},
},
YearlySchedule: workloads.YearlyRetentionSchedule{
MonthsOfYear: []workloads.MonthOfYear{
workloads.MonthOfYearJanuary,
},
RetentionDuration: workloads.RetentionDuration{
Count: 10,
DurationType: workloads.RetentionDurationTypeYears,
},
RetentionScheduleFormatType: workloads.RetentionScheduleFormatWeekly,
RetentionScheduleWeekly: workloads.WeeklyRetentionFormat{
DaysOfTheWeek: []workloads.DayOfWeek{
workloads.DayOfWeekSunday,
},
WeeksOfTheMonth: []workloads.WeekOfMonth{
workloads.WeekOfMonthFirst,
},
},
RetentionTimes: []string{
"2022-11-29T19:30:00.000Z",
},
},
},
SchedulePolicy: workloads.SimpleSchedulePolicy{
SchedulePolicyType: "SimpleSchedulePolicy",
ScheduleRunFrequency: workloads.ScheduleRunTypeDaily,
ScheduleRunTimes: []string{
"2022-11-29T19:30:00.000Z",
},
},
TieringPolicy: workloads.TieringPolicyMap{
"ArchivedRP": &workloads.TieringPolicyArgs{
Duration: pulumi.Int(3),
DurationType: pulumi.String(workloads.RetentionDurationTypeMonths),
TieringMode: pulumi.String(workloads.TieringModeTierAfter),
},
},
TimeZone: pulumi.String("UTC"),
},
BackupType: pulumi.String("VM"),
DiskExclusionProperties: &workloads.DiskExclusionPropertiesArgs{
DiskLunList: pulumi.IntArray{},
IsInclusionList: pulumi.Bool(true),
},
RecoveryServicesVault: workloads.NewRecoveryServicesVault{
Name: "test-vault",
ResourceGroup: "test-rg",
VaultType: "New",
},
},
BackupName: pulumi.String("vmBackup"),
ConnectorName: pulumi.String("C1"),
Location: pulumi.String("westcentralus"),
ResourceGroupName: pulumi.String("test-rg"),
Tags: pulumi.StringMap{},
})
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.workloads.ACSSBackupConnection;
import com.pulumi.azurenative.workloads.ACSSBackupConnectionArgs;
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 acssBackupConnection = new ACSSBackupConnection("acssBackupConnection", ACSSBackupConnectionArgs.builder()
.backupData(VMBackupDataArgs.builder()
.backupPolicy(Map.ofEntries(
Map.entry("backupManagementType", "AzureIaasVM"),
Map.entry("instantRPDetails", InstantRPAdditionalDetailsArgs.builder()
.azureBackupRGNamePrefix("dasas")
.azureBackupRGNameSuffix("a")
.build()),
Map.entry("instantRpRetentionRangeInDays", 2),
Map.entry("name", "defaultVmPolicy"),
Map.entry("policyType", "V1"),
Map.entry("protectedItemsCount", 0),
Map.entry("retentionPolicy", LongTermRetentionPolicyArgs.builder()
.dailySchedule(DailyRetentionScheduleArgs.builder()
.retentionDuration(RetentionDurationArgs.builder()
.count(30)
.durationType("Days")
.build())
.retentionTimes("2022-11-29T19:30:00.000Z")
.build())
.monthlySchedule(MonthlyRetentionScheduleArgs.builder()
.retentionDuration(RetentionDurationArgs.builder()
.count(60)
.durationType("Months")
.build())
.retentionScheduleFormatType("Weekly")
.retentionScheduleWeekly(WeeklyRetentionFormatArgs.builder()
.daysOfTheWeek("Sunday")
.weeksOfTheMonth("First")
.build())
.retentionTimes("2022-11-29T19:30:00.000Z")
.build())
.retentionPolicyType("LongTermRetentionPolicy")
.weeklySchedule(WeeklyRetentionScheduleArgs.builder()
.daysOfTheWeek("Sunday")
.retentionDuration(RetentionDurationArgs.builder()
.count(12)
.durationType("Weeks")
.build())
.retentionTimes("2022-11-29T19:30:00.000Z")
.build())
.yearlySchedule(YearlyRetentionScheduleArgs.builder()
.monthsOfYear("January")
.retentionDuration(RetentionDurationArgs.builder()
.count(10)
.durationType("Years")
.build())
.retentionScheduleFormatType("Weekly")
.retentionScheduleWeekly(WeeklyRetentionFormatArgs.builder()
.daysOfTheWeek("Sunday")
.weeksOfTheMonth("First")
.build())
.retentionTimes("2022-11-29T19:30:00.000Z")
.build())
.build()),
Map.entry("schedulePolicy", SimpleSchedulePolicyArgs.builder()
.schedulePolicyType("SimpleSchedulePolicy")
.scheduleRunFrequency("Daily")
.scheduleRunTimes("2022-11-29T19:30:00.000Z")
.build()),
Map.entry("tieringPolicy", Map.of("ArchivedRP", TieringPolicyArgs.builder()
.duration(3)
.durationType("Months")
.tieringMode("TierAfter")
.build())),
Map.entry("timeZone", "UTC")
))
.backupType("VM")
.diskExclusionProperties(DiskExclusionPropertiesArgs.builder()
.diskLunList()
.isInclusionList(true)
.build())
.recoveryServicesVault(NewRecoveryServicesVaultArgs.builder()
.name("test-vault")
.resourceGroup("test-rg")
.vaultType("New")
.build())
.build())
.backupName("vmBackup")
.connectorName("C1")
.location("westcentralus")
.resourceGroupName("test-rg")
.tags(Map.ofEntries(
))
.build());
}
}

Create a db backup connection with a new backup policy.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var acssBackupConnection = new AzureNative.Workloads.ACSSBackupConnection("acssBackupConnection", new()
{
BackupData = new AzureNative.Workloads.Inputs.SqlBackupDataArgs
{
BackupPolicy = new AzureNative.Workloads.Inputs.DBBackupPolicyPropertiesArgs
{
BackupManagementType = "AzureWorkload",
Name = "defaultDbPolicy",
ProtectedItemsCount = 0,
Settings = new AzureNative.Workloads.Inputs.SettingsArgs
{
IsCompression = false,
Issqlcompression = false,
TimeZone = "UTC",
},
SubProtectionPolicy = new[]
{
new AzureNative.Workloads.Inputs.SubProtectionPolicyArgs
{
PolicyType = AzureNative.Workloads.PolicyType.Full,
RetentionPolicy = new AzureNative.Workloads.Inputs.LongTermRetentionPolicyArgs
{
DailySchedule = new AzureNative.Workloads.Inputs.DailyRetentionScheduleArgs
{
RetentionDuration = new AzureNative.Workloads.Inputs.RetentionDurationArgs
{
Count = 30,
DurationType = AzureNative.Workloads.RetentionDurationType.Days,
},
RetentionTimes = new[]
{
"2018-01-10T18:30:00Z",
},
},
RetentionPolicyType = "LongTermRetentionPolicy",
},
SchedulePolicy = new AzureNative.Workloads.Inputs.SimpleSchedulePolicyArgs
{
SchedulePolicyType = "SimpleSchedulePolicy",
ScheduleRunFrequency = AzureNative.Workloads.ScheduleRunType.Daily,
ScheduleRunTimes = new[]
{
"2018-01-10T18:30:00Z",
},
ScheduleWeeklyFrequency = 0,
},
},
new AzureNative.Workloads.Inputs.SubProtectionPolicyArgs
{
PolicyType = AzureNative.Workloads.PolicyType.Log,
RetentionPolicy = new AzureNative.Workloads.Inputs.SimpleRetentionPolicyArgs
{
RetentionDuration = new AzureNative.Workloads.Inputs.RetentionDurationArgs
{
Count = 30,
DurationType = AzureNative.Workloads.RetentionDurationType.Days,
},
RetentionPolicyType = "SimpleRetentionPolicy",
},
SchedulePolicy = new AzureNative.Workloads.Inputs.LogSchedulePolicyArgs
{
ScheduleFrequencyInMins = 60,
SchedulePolicyType = "LogSchedulePolicy",
},
},
},
WorkLoadType = AzureNative.Workloads.WorkloadType.SQLDataBase,
},
BackupType = "SQL",
RecoveryServicesVault = new AzureNative.Workloads.Inputs.ExistingRecoveryServicesVaultArgs
{
Id = "/subscriptions/6d875e77-e412-4d7d-9af4-8895278b4443/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/test-vault",
VaultType = "Existing",
},
},
BackupName = "dbBackup",
ConnectorName = "C1",
Location = "westcentralus",
ResourceGroupName = "test-rg",
Tags = null,
});
});
package main
import (
workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := workloads.NewACSSBackupConnection(ctx, "acssBackupConnection", &workloads.ACSSBackupConnectionArgs{
BackupData: &workloads.SqlBackupDataArgs{
BackupPolicy: &workloads.DBBackupPolicyPropertiesArgs{
BackupManagementType: pulumi.String("AzureWorkload"),
Name: pulumi.String("defaultDbPolicy"),
ProtectedItemsCount: pulumi.Int(0),
Settings: &workloads.SettingsArgs{
IsCompression: pulumi.Bool(false),
Issqlcompression: pulumi.Bool(false),
TimeZone: pulumi.String("UTC"),
},
SubProtectionPolicy: workloads.SubProtectionPolicyArray{
&workloads.SubProtectionPolicyArgs{
PolicyType: pulumi.String(workloads.PolicyTypeFull),
RetentionPolicy: workloads.LongTermRetentionPolicy{
DailySchedule: workloads.DailyRetentionSchedule{
RetentionDuration: workloads.RetentionDuration{
Count: 30,
DurationType: workloads.RetentionDurationTypeDays,
},
RetentionTimes: []string{
"2018-01-10T18:30:00Z",
},
},
RetentionPolicyType: "LongTermRetentionPolicy",
},
SchedulePolicy: workloads.SimpleSchedulePolicy{
SchedulePolicyType: "SimpleSchedulePolicy",
ScheduleRunFrequency: workloads.ScheduleRunTypeDaily,
ScheduleRunTimes: []string{
"2018-01-10T18:30:00Z",
},
ScheduleWeeklyFrequency: 0,
},
},
&workloads.SubProtectionPolicyArgs{
PolicyType: pulumi.String(workloads.PolicyTypeLog),
RetentionPolicy: workloads.SimpleRetentionPolicy{
RetentionDuration: workloads.RetentionDuration{
Count: 30,
DurationType: workloads.RetentionDurationTypeDays,
},
RetentionPolicyType: "SimpleRetentionPolicy",
},
SchedulePolicy: workloads.LogSchedulePolicy{
ScheduleFrequencyInMins: 60,
SchedulePolicyType: "LogSchedulePolicy",
},
},
},
WorkLoadType: pulumi.String(workloads.WorkloadTypeSQLDataBase),
},
BackupType: pulumi.String("SQL"),
RecoveryServicesVault: workloads.ExistingRecoveryServicesVault{
Id: "/subscriptions/6d875e77-e412-4d7d-9af4-8895278b4443/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/test-vault",
VaultType: "Existing",
},
},
BackupName: pulumi.String("dbBackup"),
ConnectorName: pulumi.String("C1"),
Location: pulumi.String("westcentralus"),
ResourceGroupName: pulumi.String("test-rg"),
Tags: pulumi.StringMap{},
})
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.workloads.ACSSBackupConnection;
import com.pulumi.azurenative.workloads.ACSSBackupConnectionArgs;
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 acssBackupConnection = new ACSSBackupConnection("acssBackupConnection", ACSSBackupConnectionArgs.builder()
.backupData(SqlBackupDataArgs.builder()
.backupPolicy(Map.ofEntries(
Map.entry("backupManagementType", "AzureWorkload"),
Map.entry("name", "defaultDbPolicy"),
Map.entry("protectedItemsCount", 0),
Map.entry("settings", SettingsArgs.builder()
.isCompression(false)
.issqlcompression(false)
.timeZone("UTC")
.build()),
Map.entry("subProtectionPolicy",
SubProtectionPolicyArgs.builder()
.policyType("Full")
.retentionPolicy(LongTermRetentionPolicyArgs.builder()
.dailySchedule(DailyRetentionScheduleArgs.builder()
.retentionDuration(RetentionDurationArgs.builder()
.count(30)
.durationType("Days")
.build())
.retentionTimes("2018-01-10T18:30:00Z")
.build())
.retentionPolicyType("LongTermRetentionPolicy")
.build())
.schedulePolicy(SimpleSchedulePolicyArgs.builder()
.schedulePolicyType("SimpleSchedulePolicy")
.scheduleRunFrequency("Daily")
.scheduleRunTimes("2018-01-10T18:30:00Z")
.scheduleWeeklyFrequency(0)
.build())
.build(),
SubProtectionPolicyArgs.builder()
.policyType("Log")
.retentionPolicy(SimpleRetentionPolicyArgs.builder()
.retentionDuration(RetentionDurationArgs.builder()
.count(30)
.durationType("Days")
.build())
.retentionPolicyType("SimpleRetentionPolicy")
.build())
.schedulePolicy(LogSchedulePolicyArgs.builder()
.scheduleFrequencyInMins(60)
.schedulePolicyType("LogSchedulePolicy")
.build())
.build()),
Map.entry("workLoadType", "SQLDataBase")
))
.backupType("SQL")
.recoveryServicesVault(ExistingRecoveryServicesVaultArgs.builder()
.id("/subscriptions/6d875e77-e412-4d7d-9af4-8895278b4443/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/test-vault")
.vaultType("Existing")
.build())
.build())
.backupName("dbBackup")
.connectorName("C1")
.location("westcentralus")
.resourceGroupName("test-rg")
.tags(Map.ofEntries(
))
.build());
}
}

Create a db backup connection with an existing backup policy.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var acssBackupConnection = new AzureNative.Workloads.ACSSBackupConnection("acssBackupConnection", new()
{
BackupData = new AzureNative.Workloads.Inputs.SqlBackupDataArgs
{
BackupPolicy = new AzureNative.Workloads.Inputs.DBBackupPolicyPropertiesArgs
{
Name = "defaultDbPolicy",
},
BackupType = "SQL",
RecoveryServicesVault = new AzureNative.Workloads.Inputs.ExistingRecoveryServicesVaultArgs
{
Id = "/subscriptions/6d875e77-e412-4d7d-9af4-8895278b4443/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/test-vault",
VaultType = "Existing",
},
},
BackupName = "dbBackup",
ConnectorName = "C1",
Location = "westcentralus",
ResourceGroupName = "test-rg",
Tags = null,
});
});
package main
import (
workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := workloads.NewACSSBackupConnection(ctx, "acssBackupConnection", &workloads.ACSSBackupConnectionArgs{
BackupData: &workloads.SqlBackupDataArgs{
BackupPolicy: &workloads.DBBackupPolicyPropertiesArgs{
Name: pulumi.String("defaultDbPolicy"),
},
BackupType: pulumi.String("SQL"),
RecoveryServicesVault: workloads.ExistingRecoveryServicesVault{
Id: "/subscriptions/6d875e77-e412-4d7d-9af4-8895278b4443/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/test-vault",
VaultType: "Existing",
},
},
BackupName: pulumi.String("dbBackup"),
ConnectorName: pulumi.String("C1"),
Location: pulumi.String("westcentralus"),
ResourceGroupName: pulumi.String("test-rg"),
Tags: pulumi.StringMap{},
})
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.workloads.ACSSBackupConnection;
import com.pulumi.azurenative.workloads.ACSSBackupConnectionArgs;
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 acssBackupConnection = new ACSSBackupConnection("acssBackupConnection", ACSSBackupConnectionArgs.builder()
.backupData(SqlBackupDataArgs.builder()
.backupPolicy(DBBackupPolicyPropertiesArgs.builder()
.name("defaultDbPolicy")
.build())
.backupType("SQL")
.recoveryServicesVault(ExistingRecoveryServicesVaultArgs.builder()
.id("/subscriptions/6d875e77-e412-4d7d-9af4-8895278b4443/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/test-vault")
.vaultType("Existing")
.build())
.build())
.backupName("dbBackup")
.connectorName("C1")
.location("westcentralus")
.resourceGroupName("test-rg")
.tags(Map.ofEntries(
))
.build());
}
}

Create a vm backup connection with a new backup policy.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var acssBackupConnection = new AzureNative.Workloads.ACSSBackupConnection("acssBackupConnection", new()
{
BackupData = new AzureNative.Workloads.Inputs.VMBackupDataArgs
{
BackupPolicy = new AzureNative.Workloads.Inputs.VMBackupPolicyPropertiesArgs
{
BackupManagementType = "AzureIaasVM",
InstantRPDetails = null,
InstantRpRetentionRangeInDays = 2,
Name = "defaultVmPolicy",
ProtectedItemsCount = 0,
RetentionPolicy = new AzureNative.Workloads.Inputs.LongTermRetentionPolicyArgs
{
DailySchedule = new AzureNative.Workloads.Inputs.DailyRetentionScheduleArgs
{
RetentionDuration = new AzureNative.Workloads.Inputs.RetentionDurationArgs
{
Count = 30,
DurationType = AzureNative.Workloads.RetentionDurationType.Days,
},
RetentionTimes = new[]
{
"2018-01-10T18:30:00Z",
},
},
RetentionPolicyType = "LongTermRetentionPolicy",
},
SchedulePolicy = new AzureNative.Workloads.Inputs.SimpleSchedulePolicyArgs
{
SchedulePolicyType = "SimpleSchedulePolicy",
ScheduleRunFrequency = AzureNative.Workloads.ScheduleRunType.Daily,
ScheduleRunTimes = new[]
{
"2018-01-10T18:30:00Z",
},
ScheduleWeeklyFrequency = 0,
},
},
BackupType = "VM",
DiskExclusionProperties = new AzureNative.Workloads.Inputs.DiskExclusionPropertiesArgs
{
DiskLunList = new() { },
IsInclusionList = true,
},
RecoveryServicesVault = new AzureNative.Workloads.Inputs.NewRecoveryServicesVaultArgs
{
Name = "test-vault",
ResourceGroup = "test-rg",
VaultType = "New",
},
},
BackupName = "vmBackup",
ConnectorName = "C1",
Location = "westcentralus",
ResourceGroupName = "test-rg",
Tags = null,
});
});
package main
import (
workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := workloads.NewACSSBackupConnection(ctx, "acssBackupConnection", &workloads.ACSSBackupConnectionArgs{
BackupData: &workloads.VMBackupDataArgs{
BackupPolicy: &workloads.VMBackupPolicyPropertiesArgs{
BackupManagementType: pulumi.String("AzureIaasVM"),
InstantRPDetails: &workloads.InstantRPAdditionalDetailsArgs{},
InstantRpRetentionRangeInDays: pulumi.Int(2),
Name: pulumi.String("defaultVmPolicy"),
ProtectedItemsCount: pulumi.Int(0),
RetentionPolicy: workloads.LongTermRetentionPolicy{
DailySchedule: workloads.DailyRetentionSchedule{
RetentionDuration: workloads.RetentionDuration{
Count: 30,
DurationType: workloads.RetentionDurationTypeDays,
},
RetentionTimes: []string{
"2018-01-10T18:30:00Z",
},
},
RetentionPolicyType: "LongTermRetentionPolicy",
},
SchedulePolicy: workloads.SimpleSchedulePolicy{
SchedulePolicyType: "SimpleSchedulePolicy",
ScheduleRunFrequency: workloads.ScheduleRunTypeDaily,
ScheduleRunTimes: []string{
"2018-01-10T18:30:00Z",
},
ScheduleWeeklyFrequency: 0,
},
},
BackupType: pulumi.String("VM"),
DiskExclusionProperties: &workloads.DiskExclusionPropertiesArgs{
DiskLunList: pulumi.IntArray{},
IsInclusionList: pulumi.Bool(true),
},
RecoveryServicesVault: workloads.NewRecoveryServicesVault{
Name: "test-vault",
ResourceGroup: "test-rg",
VaultType: "New",
},
},
BackupName: pulumi.String("vmBackup"),
ConnectorName: pulumi.String("C1"),
Location: pulumi.String("westcentralus"),
ResourceGroupName: pulumi.String("test-rg"),
Tags: pulumi.StringMap{},
})
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.workloads.ACSSBackupConnection;
import com.pulumi.azurenative.workloads.ACSSBackupConnectionArgs;
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 acssBackupConnection = new ACSSBackupConnection("acssBackupConnection", ACSSBackupConnectionArgs.builder()
.backupData(VMBackupDataArgs.builder()
.backupPolicy(Map.ofEntries(
Map.entry("backupManagementType", "AzureIaasVM"),
Map.entry("instantRPDetails", InstantRPAdditionalDetailsArgs.builder()
.build()),
Map.entry("instantRpRetentionRangeInDays", 2),
Map.entry("name", "defaultVmPolicy"),
Map.entry("protectedItemsCount", 0),
Map.entry("retentionPolicy", LongTermRetentionPolicyArgs.builder()
.dailySchedule(DailyRetentionScheduleArgs.builder()
.retentionDuration(RetentionDurationArgs.builder()
.count(30)
.durationType("Days")
.build())
.retentionTimes("2018-01-10T18:30:00Z")
.build())
.retentionPolicyType("LongTermRetentionPolicy")
.build()),
Map.entry("schedulePolicy", SimpleSchedulePolicyArgs.builder()
.schedulePolicyType("SimpleSchedulePolicy")
.scheduleRunFrequency("Daily")
.scheduleRunTimes("2018-01-10T18:30:00Z")
.scheduleWeeklyFrequency(0)
.build())
))
.backupType("VM")
.diskExclusionProperties(DiskExclusionPropertiesArgs.builder()
.diskLunList()
.isInclusionList(true)
.build())
.recoveryServicesVault(NewRecoveryServicesVaultArgs.builder()
.name("test-vault")
.resourceGroup("test-rg")
.vaultType("New")
.build())
.build())
.backupName("vmBackup")
.connectorName("C1")
.location("westcentralus")
.resourceGroupName("test-rg")
.tags(Map.ofEntries(
))
.build());
}
}

Create a vm backup connection with an existing backup policy.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var acssBackupConnection = new AzureNative.Workloads.ACSSBackupConnection("acssBackupConnection", new()
{
BackupData = new AzureNative.Workloads.Inputs.VMBackupDataArgs
{
BackupPolicy = new AzureNative.Workloads.Inputs.VMBackupPolicyPropertiesArgs
{
Name = "defaultVmPolicy",
},
BackupType = "VM",
DiskExclusionProperties = new AzureNative.Workloads.Inputs.DiskExclusionPropertiesArgs
{
DiskLunList = new() { },
IsInclusionList = true,
},
RecoveryServicesVault = new AzureNative.Workloads.Inputs.ExistingRecoveryServicesVaultArgs
{
Id = "/subscriptions/6d875e77-e412-4d7d-9af4-8895278b4443/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/test-vault",
VaultType = "Existing",
},
},
BackupName = "vmBackup",
ConnectorName = "C1",
Location = "westcentralus",
ResourceGroupName = "test-rg",
Tags = null,
});
});
package main
import (
workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := workloads.NewACSSBackupConnection(ctx, "acssBackupConnection", &workloads.ACSSBackupConnectionArgs{
BackupData: &workloads.VMBackupDataArgs{
BackupPolicy: &workloads.VMBackupPolicyPropertiesArgs{
Name: pulumi.String("defaultVmPolicy"),
},
BackupType: pulumi.String("VM"),
DiskExclusionProperties: &workloads.DiskExclusionPropertiesArgs{
DiskLunList: pulumi.IntArray{},
IsInclusionList: pulumi.Bool(true),
},
RecoveryServicesVault: workloads.ExistingRecoveryServicesVault{
Id: "/subscriptions/6d875e77-e412-4d7d-9af4-8895278b4443/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/test-vault",
VaultType: "Existing",
},
},
BackupName: pulumi.String("vmBackup"),
ConnectorName: pulumi.String("C1"),
Location: pulumi.String("westcentralus"),
ResourceGroupName: pulumi.String("test-rg"),
Tags: pulumi.StringMap{},
})
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.workloads.ACSSBackupConnection;
import com.pulumi.azurenative.workloads.ACSSBackupConnectionArgs;
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 acssBackupConnection = new ACSSBackupConnection("acssBackupConnection", ACSSBackupConnectionArgs.builder()
.backupData(VMBackupDataArgs.builder()
.backupPolicy(VMBackupPolicyPropertiesArgs.builder()
.name("defaultVmPolicy")
.build())
.backupType("VM")
.diskExclusionProperties(DiskExclusionPropertiesArgs.builder()
.diskLunList()
.isInclusionList(true)
.build())
.recoveryServicesVault(ExistingRecoveryServicesVaultArgs.builder()
.id("/subscriptions/6d875e77-e412-4d7d-9af4-8895278b4443/resourceGroups/test-rg/providers/Microsoft.RecoveryServices/vaults/test-vault")
.vaultType("Existing")
.build())
.build())
.backupName("vmBackup")
.connectorName("C1")
.location("westcentralus")
.resourceGroupName("test-rg")
.tags(Map.ofEntries(
))
.build());
}
}

Import

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

$ pulumi import azure-native:workloads:ACSSBackupConnection db1 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Workloads/connectors/{connectorName}/acssBackups/{backupName}

Constructors

Link copied to clipboard
constructor(backupData: Output<Any>? = null, backupName: Output<String>? = null, connectorName: Output<String>? = null, location: Output<String>? = null, resourceGroupName: Output<String>? = null, tags: Output<Map<String, String>>? = null)

Properties

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

Information about the recovery services vault and backup policy used for backup.

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

The name of the backup connection resource of virtual instance for SAP.

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

The name of the connector resource

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

The geo-location where the resource lives

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

The name of the resource group. The name is case insensitive.

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

Resource tags.

Functions

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