dataprotection

package
v5.57.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 28, 2023 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BackupInstanceBlogStorage

type BackupInstanceBlogStorage struct {
	pulumi.CustomResourceState

	// The ID of the Backup Policy.
	BackupPolicyId pulumi.StringOutput `pulumi:"backupPolicyId"`
	// The location of the source Storage Account. Changing this forces a new Backup Instance Blob Storage to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The name which should be used for this Backup Instance Blob Storage. Changing this forces a new Backup Instance Blob Storage to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the source Storage Account. Changing this forces a new Backup Instance Blob Storage to be created.
	StorageAccountId pulumi.StringOutput `pulumi:"storageAccountId"`
	// The ID of the Backup Vault within which the Backup Instance Blob Storage should exist. Changing this forces a new Backup Instance Blob Storage to be created.
	VaultId pulumi.StringOutput `pulumi:"vaultId"`
}

Manages a Backup Instance Blob Storage.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/authorization"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/dataprotection"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleAccount, err := storage.NewAccount(ctx, "exampleAccount", &storage.AccountArgs{
			ResourceGroupName:      exampleResourceGroup.Name,
			Location:               exampleResourceGroup.Location,
			AccountTier:            pulumi.String("Standard"),
			AccountReplicationType: pulumi.String("LRS"),
		})
		if err != nil {
			return err
		}
		exampleBackupVault, err := dataprotection.NewBackupVault(ctx, "exampleBackupVault", &dataprotection.BackupVaultArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
			DatastoreType:     pulumi.String("VaultStore"),
			Redundancy:        pulumi.String("LocallyRedundant"),
			Identity: &dataprotection.BackupVaultIdentityArgs{
				Type: pulumi.String("SystemAssigned"),
			},
		})
		if err != nil {
			return err
		}
		exampleAssignment, err := authorization.NewAssignment(ctx, "exampleAssignment", &authorization.AssignmentArgs{
			Scope:              exampleAccount.ID(),
			RoleDefinitionName: pulumi.String("Storage Account Backup Contributor"),
			PrincipalId: exampleBackupVault.Identity.ApplyT(func(identity dataprotection.BackupVaultIdentity) (*string, error) {
				return &identity.PrincipalId, nil
			}).(pulumi.StringPtrOutput),
		})
		if err != nil {
			return err
		}
		exampleBackupPolicyBlobStorage, err := dataprotection.NewBackupPolicyBlobStorage(ctx, "exampleBackupPolicyBlobStorage", &dataprotection.BackupPolicyBlobStorageArgs{
			VaultId:           exampleBackupVault.ID(),
			RetentionDuration: pulumi.String("P30D"),
		})
		if err != nil {
			return err
		}
		_, err = dataprotection.NewBackupInstanceBlogStorage(ctx, "exampleBackupInstanceBlogStorage", &dataprotection.BackupInstanceBlogStorageArgs{
			VaultId:          exampleBackupVault.ID(),
			Location:         exampleResourceGroup.Location,
			StorageAccountId: exampleAccount.ID(),
			BackupPolicyId:   exampleBackupPolicyBlobStorage.ID(),
		}, pulumi.DependsOn([]pulumi.Resource{
			exampleAssignment,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Backup Instance Blob Storages can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:dataprotection/backupInstanceBlogStorage:BackupInstanceBlogStorage example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.DataProtection/backupVaults/vault1/backupInstances/backupInstance1

```

func GetBackupInstanceBlogStorage

func GetBackupInstanceBlogStorage(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BackupInstanceBlogStorageState, opts ...pulumi.ResourceOption) (*BackupInstanceBlogStorage, error)

GetBackupInstanceBlogStorage gets an existing BackupInstanceBlogStorage resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewBackupInstanceBlogStorage

func NewBackupInstanceBlogStorage(ctx *pulumi.Context,
	name string, args *BackupInstanceBlogStorageArgs, opts ...pulumi.ResourceOption) (*BackupInstanceBlogStorage, error)

NewBackupInstanceBlogStorage registers a new resource with the given unique name, arguments, and options.

func (*BackupInstanceBlogStorage) ElementType

func (*BackupInstanceBlogStorage) ElementType() reflect.Type

func (*BackupInstanceBlogStorage) ToBackupInstanceBlogStorageOutput

func (i *BackupInstanceBlogStorage) ToBackupInstanceBlogStorageOutput() BackupInstanceBlogStorageOutput

func (*BackupInstanceBlogStorage) ToBackupInstanceBlogStorageOutputWithContext

func (i *BackupInstanceBlogStorage) ToBackupInstanceBlogStorageOutputWithContext(ctx context.Context) BackupInstanceBlogStorageOutput

type BackupInstanceBlogStorageArgs

type BackupInstanceBlogStorageArgs struct {
	// The ID of the Backup Policy.
	BackupPolicyId pulumi.StringInput
	// The location of the source Storage Account. Changing this forces a new Backup Instance Blob Storage to be created.
	Location pulumi.StringPtrInput
	// The name which should be used for this Backup Instance Blob Storage. Changing this forces a new Backup Instance Blob Storage to be created.
	Name pulumi.StringPtrInput
	// The ID of the source Storage Account. Changing this forces a new Backup Instance Blob Storage to be created.
	StorageAccountId pulumi.StringInput
	// The ID of the Backup Vault within which the Backup Instance Blob Storage should exist. Changing this forces a new Backup Instance Blob Storage to be created.
	VaultId pulumi.StringInput
}

The set of arguments for constructing a BackupInstanceBlogStorage resource.

func (BackupInstanceBlogStorageArgs) ElementType

type BackupInstanceBlogStorageArray

type BackupInstanceBlogStorageArray []BackupInstanceBlogStorageInput

func (BackupInstanceBlogStorageArray) ElementType

func (BackupInstanceBlogStorageArray) ToBackupInstanceBlogStorageArrayOutput

func (i BackupInstanceBlogStorageArray) ToBackupInstanceBlogStorageArrayOutput() BackupInstanceBlogStorageArrayOutput

func (BackupInstanceBlogStorageArray) ToBackupInstanceBlogStorageArrayOutputWithContext

func (i BackupInstanceBlogStorageArray) ToBackupInstanceBlogStorageArrayOutputWithContext(ctx context.Context) BackupInstanceBlogStorageArrayOutput

type BackupInstanceBlogStorageArrayInput

type BackupInstanceBlogStorageArrayInput interface {
	pulumi.Input

	ToBackupInstanceBlogStorageArrayOutput() BackupInstanceBlogStorageArrayOutput
	ToBackupInstanceBlogStorageArrayOutputWithContext(context.Context) BackupInstanceBlogStorageArrayOutput
}

BackupInstanceBlogStorageArrayInput is an input type that accepts BackupInstanceBlogStorageArray and BackupInstanceBlogStorageArrayOutput values. You can construct a concrete instance of `BackupInstanceBlogStorageArrayInput` via:

BackupInstanceBlogStorageArray{ BackupInstanceBlogStorageArgs{...} }

type BackupInstanceBlogStorageArrayOutput

type BackupInstanceBlogStorageArrayOutput struct{ *pulumi.OutputState }

func (BackupInstanceBlogStorageArrayOutput) ElementType

func (BackupInstanceBlogStorageArrayOutput) Index

func (BackupInstanceBlogStorageArrayOutput) ToBackupInstanceBlogStorageArrayOutput

func (o BackupInstanceBlogStorageArrayOutput) ToBackupInstanceBlogStorageArrayOutput() BackupInstanceBlogStorageArrayOutput

func (BackupInstanceBlogStorageArrayOutput) ToBackupInstanceBlogStorageArrayOutputWithContext

func (o BackupInstanceBlogStorageArrayOutput) ToBackupInstanceBlogStorageArrayOutputWithContext(ctx context.Context) BackupInstanceBlogStorageArrayOutput

type BackupInstanceBlogStorageInput

type BackupInstanceBlogStorageInput interface {
	pulumi.Input

	ToBackupInstanceBlogStorageOutput() BackupInstanceBlogStorageOutput
	ToBackupInstanceBlogStorageOutputWithContext(ctx context.Context) BackupInstanceBlogStorageOutput
}

type BackupInstanceBlogStorageMap

type BackupInstanceBlogStorageMap map[string]BackupInstanceBlogStorageInput

func (BackupInstanceBlogStorageMap) ElementType

func (BackupInstanceBlogStorageMap) ToBackupInstanceBlogStorageMapOutput

func (i BackupInstanceBlogStorageMap) ToBackupInstanceBlogStorageMapOutput() BackupInstanceBlogStorageMapOutput

func (BackupInstanceBlogStorageMap) ToBackupInstanceBlogStorageMapOutputWithContext

func (i BackupInstanceBlogStorageMap) ToBackupInstanceBlogStorageMapOutputWithContext(ctx context.Context) BackupInstanceBlogStorageMapOutput

type BackupInstanceBlogStorageMapInput

type BackupInstanceBlogStorageMapInput interface {
	pulumi.Input

	ToBackupInstanceBlogStorageMapOutput() BackupInstanceBlogStorageMapOutput
	ToBackupInstanceBlogStorageMapOutputWithContext(context.Context) BackupInstanceBlogStorageMapOutput
}

BackupInstanceBlogStorageMapInput is an input type that accepts BackupInstanceBlogStorageMap and BackupInstanceBlogStorageMapOutput values. You can construct a concrete instance of `BackupInstanceBlogStorageMapInput` via:

BackupInstanceBlogStorageMap{ "key": BackupInstanceBlogStorageArgs{...} }

type BackupInstanceBlogStorageMapOutput

type BackupInstanceBlogStorageMapOutput struct{ *pulumi.OutputState }

func (BackupInstanceBlogStorageMapOutput) ElementType

func (BackupInstanceBlogStorageMapOutput) MapIndex

func (BackupInstanceBlogStorageMapOutput) ToBackupInstanceBlogStorageMapOutput

func (o BackupInstanceBlogStorageMapOutput) ToBackupInstanceBlogStorageMapOutput() BackupInstanceBlogStorageMapOutput

func (BackupInstanceBlogStorageMapOutput) ToBackupInstanceBlogStorageMapOutputWithContext

func (o BackupInstanceBlogStorageMapOutput) ToBackupInstanceBlogStorageMapOutputWithContext(ctx context.Context) BackupInstanceBlogStorageMapOutput

type BackupInstanceBlogStorageOutput

type BackupInstanceBlogStorageOutput struct{ *pulumi.OutputState }

func (BackupInstanceBlogStorageOutput) BackupPolicyId added in v5.5.0

The ID of the Backup Policy.

func (BackupInstanceBlogStorageOutput) ElementType

func (BackupInstanceBlogStorageOutput) Location added in v5.5.0

The location of the source Storage Account. Changing this forces a new Backup Instance Blob Storage to be created.

func (BackupInstanceBlogStorageOutput) Name added in v5.5.0

The name which should be used for this Backup Instance Blob Storage. Changing this forces a new Backup Instance Blob Storage to be created.

func (BackupInstanceBlogStorageOutput) StorageAccountId added in v5.5.0

The ID of the source Storage Account. Changing this forces a new Backup Instance Blob Storage to be created.

func (BackupInstanceBlogStorageOutput) ToBackupInstanceBlogStorageOutput

func (o BackupInstanceBlogStorageOutput) ToBackupInstanceBlogStorageOutput() BackupInstanceBlogStorageOutput

func (BackupInstanceBlogStorageOutput) ToBackupInstanceBlogStorageOutputWithContext

func (o BackupInstanceBlogStorageOutput) ToBackupInstanceBlogStorageOutputWithContext(ctx context.Context) BackupInstanceBlogStorageOutput

func (BackupInstanceBlogStorageOutput) VaultId added in v5.5.0

The ID of the Backup Vault within which the Backup Instance Blob Storage should exist. Changing this forces a new Backup Instance Blob Storage to be created.

type BackupInstanceBlogStorageState

type BackupInstanceBlogStorageState struct {
	// The ID of the Backup Policy.
	BackupPolicyId pulumi.StringPtrInput
	// The location of the source Storage Account. Changing this forces a new Backup Instance Blob Storage to be created.
	Location pulumi.StringPtrInput
	// The name which should be used for this Backup Instance Blob Storage. Changing this forces a new Backup Instance Blob Storage to be created.
	Name pulumi.StringPtrInput
	// The ID of the source Storage Account. Changing this forces a new Backup Instance Blob Storage to be created.
	StorageAccountId pulumi.StringPtrInput
	// The ID of the Backup Vault within which the Backup Instance Blob Storage should exist. Changing this forces a new Backup Instance Blob Storage to be created.
	VaultId pulumi.StringPtrInput
}

func (BackupInstanceBlogStorageState) ElementType

type BackupInstanceDisk

type BackupInstanceDisk struct {
	pulumi.CustomResourceState

	// The ID of the Backup Policy.
	BackupPolicyId pulumi.StringOutput `pulumi:"backupPolicyId"`
	// The ID of the source Disk. Changing this forces a new Backup Instance Disk to be created.
	DiskId pulumi.StringOutput `pulumi:"diskId"`
	// The Azure Region where the Backup Instance Disk should exist. Changing this forces a new Backup Instance Disk to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The name which should be used for this Backup Instance Disk. Changing this forces a new Backup Instance Disk to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the Resource Group where snapshots are stored. Changing this forces a new Backup Instance Disk to be created.
	SnapshotResourceGroupName pulumi.StringOutput `pulumi:"snapshotResourceGroupName"`
	// The ID of the Backup Vault within which the Backup Instance Disk should exist. Changing this forces a new Backup Instance Disk to be created.
	VaultId pulumi.StringOutput `pulumi:"vaultId"`
}

Manages a Backup Instance to back up Disk.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/authorization"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/dataprotection"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleManagedDisk, err := compute.NewManagedDisk(ctx, "exampleManagedDisk", &compute.ManagedDiskArgs{
			Location:           exampleResourceGroup.Location,
			ResourceGroupName:  exampleResourceGroup.Name,
			StorageAccountType: pulumi.String("Standard_LRS"),
			CreateOption:       pulumi.String("Empty"),
			DiskSizeGb:         pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		exampleBackupVault, err := dataprotection.NewBackupVault(ctx, "exampleBackupVault", &dataprotection.BackupVaultArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
			DatastoreType:     pulumi.String("VaultStore"),
			Redundancy:        pulumi.String("LocallyRedundant"),
			Identity: &dataprotection.BackupVaultIdentityArgs{
				Type: pulumi.String("SystemAssigned"),
			},
		})
		if err != nil {
			return err
		}
		_, err = authorization.NewAssignment(ctx, "example1", &authorization.AssignmentArgs{
			Scope:              exampleResourceGroup.ID(),
			RoleDefinitionName: pulumi.String("Disk Snapshot Contributor"),
			PrincipalId: exampleBackupVault.Identity.ApplyT(func(identity dataprotection.BackupVaultIdentity) (*string, error) {
				return &identity.PrincipalId, nil
			}).(pulumi.StringPtrOutput),
		})
		if err != nil {
			return err
		}
		_, err = authorization.NewAssignment(ctx, "example2", &authorization.AssignmentArgs{
			Scope:              exampleManagedDisk.ID(),
			RoleDefinitionName: pulumi.String("Disk Backup Reader"),
			PrincipalId: exampleBackupVault.Identity.ApplyT(func(identity dataprotection.BackupVaultIdentity) (*string, error) {
				return &identity.PrincipalId, nil
			}).(pulumi.StringPtrOutput),
		})
		if err != nil {
			return err
		}
		exampleBackupPolicyDisk, err := dataprotection.NewBackupPolicyDisk(ctx, "exampleBackupPolicyDisk", &dataprotection.BackupPolicyDiskArgs{
			VaultId: exampleBackupVault.ID(),
			BackupRepeatingTimeIntervals: pulumi.StringArray{
				pulumi.String("R/2021-05-19T06:33:16+00:00/PT4H"),
			},
			DefaultRetentionDuration: pulumi.String("P7D"),
		})
		if err != nil {
			return err
		}
		_, err = dataprotection.NewBackupInstanceDisk(ctx, "exampleBackupInstanceDisk", &dataprotection.BackupInstanceDiskArgs{
			Location:                  exampleBackupVault.Location,
			VaultId:                   exampleBackupVault.ID(),
			DiskId:                    exampleManagedDisk.ID(),
			SnapshotResourceGroupName: exampleResourceGroup.Name,
			BackupPolicyId:            exampleBackupPolicyDisk.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Backup Instance Disks can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:dataprotection/backupInstanceDisk:BackupInstanceDisk example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.DataProtection/backupVaults/vault1/backupInstances/backupInstance1

```

func GetBackupInstanceDisk

func GetBackupInstanceDisk(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BackupInstanceDiskState, opts ...pulumi.ResourceOption) (*BackupInstanceDisk, error)

GetBackupInstanceDisk gets an existing BackupInstanceDisk resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewBackupInstanceDisk

func NewBackupInstanceDisk(ctx *pulumi.Context,
	name string, args *BackupInstanceDiskArgs, opts ...pulumi.ResourceOption) (*BackupInstanceDisk, error)

NewBackupInstanceDisk registers a new resource with the given unique name, arguments, and options.

func (*BackupInstanceDisk) ElementType

func (*BackupInstanceDisk) ElementType() reflect.Type

func (*BackupInstanceDisk) ToBackupInstanceDiskOutput

func (i *BackupInstanceDisk) ToBackupInstanceDiskOutput() BackupInstanceDiskOutput

func (*BackupInstanceDisk) ToBackupInstanceDiskOutputWithContext

func (i *BackupInstanceDisk) ToBackupInstanceDiskOutputWithContext(ctx context.Context) BackupInstanceDiskOutput

type BackupInstanceDiskArgs

type BackupInstanceDiskArgs struct {
	// The ID of the Backup Policy.
	BackupPolicyId pulumi.StringInput
	// The ID of the source Disk. Changing this forces a new Backup Instance Disk to be created.
	DiskId pulumi.StringInput
	// The Azure Region where the Backup Instance Disk should exist. Changing this forces a new Backup Instance Disk to be created.
	Location pulumi.StringPtrInput
	// The name which should be used for this Backup Instance Disk. Changing this forces a new Backup Instance Disk to be created.
	Name pulumi.StringPtrInput
	// The name of the Resource Group where snapshots are stored. Changing this forces a new Backup Instance Disk to be created.
	SnapshotResourceGroupName pulumi.StringInput
	// The ID of the Backup Vault within which the Backup Instance Disk should exist. Changing this forces a new Backup Instance Disk to be created.
	VaultId pulumi.StringInput
}

The set of arguments for constructing a BackupInstanceDisk resource.

func (BackupInstanceDiskArgs) ElementType

func (BackupInstanceDiskArgs) ElementType() reflect.Type

type BackupInstanceDiskArray

type BackupInstanceDiskArray []BackupInstanceDiskInput

func (BackupInstanceDiskArray) ElementType

func (BackupInstanceDiskArray) ElementType() reflect.Type

func (BackupInstanceDiskArray) ToBackupInstanceDiskArrayOutput

func (i BackupInstanceDiskArray) ToBackupInstanceDiskArrayOutput() BackupInstanceDiskArrayOutput

func (BackupInstanceDiskArray) ToBackupInstanceDiskArrayOutputWithContext

func (i BackupInstanceDiskArray) ToBackupInstanceDiskArrayOutputWithContext(ctx context.Context) BackupInstanceDiskArrayOutput

type BackupInstanceDiskArrayInput

type BackupInstanceDiskArrayInput interface {
	pulumi.Input

	ToBackupInstanceDiskArrayOutput() BackupInstanceDiskArrayOutput
	ToBackupInstanceDiskArrayOutputWithContext(context.Context) BackupInstanceDiskArrayOutput
}

BackupInstanceDiskArrayInput is an input type that accepts BackupInstanceDiskArray and BackupInstanceDiskArrayOutput values. You can construct a concrete instance of `BackupInstanceDiskArrayInput` via:

BackupInstanceDiskArray{ BackupInstanceDiskArgs{...} }

type BackupInstanceDiskArrayOutput

type BackupInstanceDiskArrayOutput struct{ *pulumi.OutputState }

func (BackupInstanceDiskArrayOutput) ElementType

func (BackupInstanceDiskArrayOutput) Index

func (BackupInstanceDiskArrayOutput) ToBackupInstanceDiskArrayOutput

func (o BackupInstanceDiskArrayOutput) ToBackupInstanceDiskArrayOutput() BackupInstanceDiskArrayOutput

func (BackupInstanceDiskArrayOutput) ToBackupInstanceDiskArrayOutputWithContext

func (o BackupInstanceDiskArrayOutput) ToBackupInstanceDiskArrayOutputWithContext(ctx context.Context) BackupInstanceDiskArrayOutput

type BackupInstanceDiskInput

type BackupInstanceDiskInput interface {
	pulumi.Input

	ToBackupInstanceDiskOutput() BackupInstanceDiskOutput
	ToBackupInstanceDiskOutputWithContext(ctx context.Context) BackupInstanceDiskOutput
}

type BackupInstanceDiskMap

type BackupInstanceDiskMap map[string]BackupInstanceDiskInput

func (BackupInstanceDiskMap) ElementType

func (BackupInstanceDiskMap) ElementType() reflect.Type

func (BackupInstanceDiskMap) ToBackupInstanceDiskMapOutput

func (i BackupInstanceDiskMap) ToBackupInstanceDiskMapOutput() BackupInstanceDiskMapOutput

func (BackupInstanceDiskMap) ToBackupInstanceDiskMapOutputWithContext

func (i BackupInstanceDiskMap) ToBackupInstanceDiskMapOutputWithContext(ctx context.Context) BackupInstanceDiskMapOutput

type BackupInstanceDiskMapInput

type BackupInstanceDiskMapInput interface {
	pulumi.Input

	ToBackupInstanceDiskMapOutput() BackupInstanceDiskMapOutput
	ToBackupInstanceDiskMapOutputWithContext(context.Context) BackupInstanceDiskMapOutput
}

BackupInstanceDiskMapInput is an input type that accepts BackupInstanceDiskMap and BackupInstanceDiskMapOutput values. You can construct a concrete instance of `BackupInstanceDiskMapInput` via:

BackupInstanceDiskMap{ "key": BackupInstanceDiskArgs{...} }

type BackupInstanceDiskMapOutput

type BackupInstanceDiskMapOutput struct{ *pulumi.OutputState }

func (BackupInstanceDiskMapOutput) ElementType

func (BackupInstanceDiskMapOutput) MapIndex

func (BackupInstanceDiskMapOutput) ToBackupInstanceDiskMapOutput

func (o BackupInstanceDiskMapOutput) ToBackupInstanceDiskMapOutput() BackupInstanceDiskMapOutput

func (BackupInstanceDiskMapOutput) ToBackupInstanceDiskMapOutputWithContext

func (o BackupInstanceDiskMapOutput) ToBackupInstanceDiskMapOutputWithContext(ctx context.Context) BackupInstanceDiskMapOutput

type BackupInstanceDiskOutput

type BackupInstanceDiskOutput struct{ *pulumi.OutputState }

func (BackupInstanceDiskOutput) BackupPolicyId added in v5.5.0

func (o BackupInstanceDiskOutput) BackupPolicyId() pulumi.StringOutput

The ID of the Backup Policy.

func (BackupInstanceDiskOutput) DiskId added in v5.5.0

The ID of the source Disk. Changing this forces a new Backup Instance Disk to be created.

func (BackupInstanceDiskOutput) ElementType

func (BackupInstanceDiskOutput) ElementType() reflect.Type

func (BackupInstanceDiskOutput) Location added in v5.5.0

The Azure Region where the Backup Instance Disk should exist. Changing this forces a new Backup Instance Disk to be created.

func (BackupInstanceDiskOutput) Name added in v5.5.0

The name which should be used for this Backup Instance Disk. Changing this forces a new Backup Instance Disk to be created.

func (BackupInstanceDiskOutput) SnapshotResourceGroupName added in v5.5.0

func (o BackupInstanceDiskOutput) SnapshotResourceGroupName() pulumi.StringOutput

The name of the Resource Group where snapshots are stored. Changing this forces a new Backup Instance Disk to be created.

func (BackupInstanceDiskOutput) ToBackupInstanceDiskOutput

func (o BackupInstanceDiskOutput) ToBackupInstanceDiskOutput() BackupInstanceDiskOutput

func (BackupInstanceDiskOutput) ToBackupInstanceDiskOutputWithContext

func (o BackupInstanceDiskOutput) ToBackupInstanceDiskOutputWithContext(ctx context.Context) BackupInstanceDiskOutput

func (BackupInstanceDiskOutput) VaultId added in v5.5.0

The ID of the Backup Vault within which the Backup Instance Disk should exist. Changing this forces a new Backup Instance Disk to be created.

type BackupInstanceDiskState

type BackupInstanceDiskState struct {
	// The ID of the Backup Policy.
	BackupPolicyId pulumi.StringPtrInput
	// The ID of the source Disk. Changing this forces a new Backup Instance Disk to be created.
	DiskId pulumi.StringPtrInput
	// The Azure Region where the Backup Instance Disk should exist. Changing this forces a new Backup Instance Disk to be created.
	Location pulumi.StringPtrInput
	// The name which should be used for this Backup Instance Disk. Changing this forces a new Backup Instance Disk to be created.
	Name pulumi.StringPtrInput
	// The name of the Resource Group where snapshots are stored. Changing this forces a new Backup Instance Disk to be created.
	SnapshotResourceGroupName pulumi.StringPtrInput
	// The ID of the Backup Vault within which the Backup Instance Disk should exist. Changing this forces a new Backup Instance Disk to be created.
	VaultId pulumi.StringPtrInput
}

func (BackupInstanceDiskState) ElementType

func (BackupInstanceDiskState) ElementType() reflect.Type

type BackupInstancePostgresql

type BackupInstancePostgresql struct {
	pulumi.CustomResourceState

	// The ID of the Backup Policy.
	BackupPolicyId pulumi.StringOutput `pulumi:"backupPolicyId"`
	// The ID or versionless ID of the key vault secret which stores the connection string of the database.
	DatabaseCredentialKeyVaultSecretId pulumi.StringPtrOutput `pulumi:"databaseCredentialKeyVaultSecretId"`
	// The ID of the source database. Changing this forces a new Backup Instance PostgreSQL to be created.
	DatabaseId pulumi.StringOutput `pulumi:"databaseId"`
	// The location of the source database. Changing this forces a new Backup Instance PostgreSQL to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The name which should be used for this Backup Instance PostgreSQL. Changing this forces a new Backup Instance PostgreSQL to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the Backup Vault within which the PostgreSQL Backup Instance should exist. Changing this forces a new Backup Instance PostgreSQL to be created.
	VaultId pulumi.StringOutput `pulumi:"vaultId"`
}

Manages a Backup Instance to back up PostgreSQL.

> **Note:** Before using this resource, there are some prerequisite permissions for configure backup and restore. See more details from <https://docs.microsoft.com/azure/backup/backup-azure-database-postgresql#prerequisite-permissions-for-configure-backup-and-restore>.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/authorization"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/dataprotection"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/postgresql"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := core.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleServer, err := postgresql.NewServer(ctx, "exampleServer", &postgresql.ServerArgs{
			Location:                   exampleResourceGroup.Location,
			ResourceGroupName:          exampleResourceGroup.Name,
			SkuName:                    pulumi.String("B_Gen5_2"),
			StorageMb:                  pulumi.Int(5120),
			BackupRetentionDays:        pulumi.Int(7),
			GeoRedundantBackupEnabled:  pulumi.Bool(false),
			AutoGrowEnabled:            pulumi.Bool(true),
			AdministratorLogin:         pulumi.String("psqladmin"),
			AdministratorLoginPassword: pulumi.String("H@Sh1CoR3!"),
			Version:                    pulumi.String("9.5"),
			SslEnforcementEnabled:      pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = postgresql.NewFirewallRule(ctx, "exampleFirewallRule", &postgresql.FirewallRuleArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			ServerName:        exampleServer.Name,
			StartIpAddress:    pulumi.String("0.0.0.0"),
			EndIpAddress:      pulumi.String("0.0.0.0"),
		})
		if err != nil {
			return err
		}
		exampleDatabase, err := postgresql.NewDatabase(ctx, "exampleDatabase", &postgresql.DatabaseArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			ServerName:        exampleServer.Name,
			Charset:           pulumi.String("UTF8"),
			Collation:         pulumi.String("English_United States.1252"),
		})
		if err != nil {
			return err
		}
		exampleBackupVault, err := dataprotection.NewBackupVault(ctx, "exampleBackupVault", &dataprotection.BackupVaultArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
			DatastoreType:     pulumi.String("VaultStore"),
			Redundancy:        pulumi.String("LocallyRedundant"),
			Identity: &dataprotection.BackupVaultIdentityArgs{
				Type: pulumi.String("SystemAssigned"),
			},
		})
		if err != nil {
			return err
		}
		exampleKeyVault, err := keyvault.NewKeyVault(ctx, "exampleKeyVault", &keyvault.KeyVaultArgs{
			Location:                exampleResourceGroup.Location,
			ResourceGroupName:       exampleResourceGroup.Name,
			TenantId:                *pulumi.String(current.TenantId),
			SkuName:                 pulumi.String("premium"),
			SoftDeleteRetentionDays: pulumi.Int(7),
			AccessPolicies: keyvault.KeyVaultAccessPolicyArray{
				&keyvault.KeyVaultAccessPolicyArgs{
					TenantId: *pulumi.String(current.TenantId),
					ObjectId: *pulumi.String(current.ObjectId),
					KeyPermissions: pulumi.StringArray{
						pulumi.String("Create"),
						pulumi.String("Get"),
					},
					SecretPermissions: pulumi.StringArray{
						pulumi.String("Set"),
						pulumi.String("Get"),
						pulumi.String("Delete"),
						pulumi.String("Purge"),
						pulumi.String("Recover"),
					},
				},
				&keyvault.KeyVaultAccessPolicyArgs{
					TenantId: exampleBackupVault.Identity.ApplyT(func(identity dataprotection.BackupVaultIdentity) (*string, error) {
						return &identity.TenantId, nil
					}).(pulumi.StringPtrOutput),
					ObjectId: exampleBackupVault.Identity.ApplyT(func(identity dataprotection.BackupVaultIdentity) (*string, error) {
						return &identity.PrincipalId, nil
					}).(pulumi.StringPtrOutput),
					KeyPermissions: pulumi.StringArray{
						pulumi.String("Create"),
						pulumi.String("Get"),
					},
					SecretPermissions: pulumi.StringArray{
						pulumi.String("Set"),
						pulumi.String("Get"),
						pulumi.String("Delete"),
						pulumi.String("Purge"),
						pulumi.String("Recover"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		exampleSecret, err := keyvault.NewSecret(ctx, "exampleSecret", &keyvault.SecretArgs{
			Value: pulumi.All(exampleServer.Name, exampleDatabase.Name, exampleServer.Name).ApplyT(func(_args []interface{}) (string, error) {
				exampleServerName := _args[0].(string)
				exampleDatabaseName := _args[1].(string)
				exampleServerName1 := _args[2].(string)
				return fmt.Sprintf("Server=%v.postgres.database.azure.com;Database=%v;Port=5432;User Id=psqladmin@%v;Password=H@Sh1CoR3!;Ssl Mode=Require;", exampleServerName, exampleDatabaseName, exampleServerName1), nil
			}).(pulumi.StringOutput),
			KeyVaultId: exampleKeyVault.ID(),
		})
		if err != nil {
			return err
		}
		exampleBackupPolicyPostgresql, err := dataprotection.NewBackupPolicyPostgresql(ctx, "exampleBackupPolicyPostgresql", &dataprotection.BackupPolicyPostgresqlArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			VaultName:         exampleBackupVault.Name,
			BackupRepeatingTimeIntervals: pulumi.StringArray{
				pulumi.String("R/2021-05-23T02:30:00+00:00/P1W"),
			},
			DefaultRetentionDuration: pulumi.String("P4M"),
		})
		if err != nil {
			return err
		}
		_, err = authorization.NewAssignment(ctx, "exampleAssignment", &authorization.AssignmentArgs{
			Scope:              exampleServer.ID(),
			RoleDefinitionName: pulumi.String("Reader"),
			PrincipalId: exampleBackupVault.Identity.ApplyT(func(identity dataprotection.BackupVaultIdentity) (*string, error) {
				return &identity.PrincipalId, nil
			}).(pulumi.StringPtrOutput),
		})
		if err != nil {
			return err
		}
		_, err = dataprotection.NewBackupInstancePostgresql(ctx, "exampleBackupInstancePostgresql", &dataprotection.BackupInstancePostgresqlArgs{
			Location:                           exampleResourceGroup.Location,
			VaultId:                            exampleBackupVault.ID(),
			DatabaseId:                         exampleDatabase.ID(),
			BackupPolicyId:                     exampleBackupPolicyPostgresql.ID(),
			DatabaseCredentialKeyVaultSecretId: exampleSecret.VersionlessId,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Backup Instance PostgreSQL can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:dataprotection/backupInstancePostgresql:BackupInstancePostgresql example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.DataProtection/backupVaults/vault1/backupInstances/backupInstance1

```

func GetBackupInstancePostgresql

func GetBackupInstancePostgresql(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BackupInstancePostgresqlState, opts ...pulumi.ResourceOption) (*BackupInstancePostgresql, error)

GetBackupInstancePostgresql gets an existing BackupInstancePostgresql resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewBackupInstancePostgresql

func NewBackupInstancePostgresql(ctx *pulumi.Context,
	name string, args *BackupInstancePostgresqlArgs, opts ...pulumi.ResourceOption) (*BackupInstancePostgresql, error)

NewBackupInstancePostgresql registers a new resource with the given unique name, arguments, and options.

func (*BackupInstancePostgresql) ElementType

func (*BackupInstancePostgresql) ElementType() reflect.Type

func (*BackupInstancePostgresql) ToBackupInstancePostgresqlOutput

func (i *BackupInstancePostgresql) ToBackupInstancePostgresqlOutput() BackupInstancePostgresqlOutput

func (*BackupInstancePostgresql) ToBackupInstancePostgresqlOutputWithContext

func (i *BackupInstancePostgresql) ToBackupInstancePostgresqlOutputWithContext(ctx context.Context) BackupInstancePostgresqlOutput

type BackupInstancePostgresqlArgs

type BackupInstancePostgresqlArgs struct {
	// The ID of the Backup Policy.
	BackupPolicyId pulumi.StringInput
	// The ID or versionless ID of the key vault secret which stores the connection string of the database.
	DatabaseCredentialKeyVaultSecretId pulumi.StringPtrInput
	// The ID of the source database. Changing this forces a new Backup Instance PostgreSQL to be created.
	DatabaseId pulumi.StringInput
	// The location of the source database. Changing this forces a new Backup Instance PostgreSQL to be created.
	Location pulumi.StringPtrInput
	// The name which should be used for this Backup Instance PostgreSQL. Changing this forces a new Backup Instance PostgreSQL to be created.
	Name pulumi.StringPtrInput
	// The ID of the Backup Vault within which the PostgreSQL Backup Instance should exist. Changing this forces a new Backup Instance PostgreSQL to be created.
	VaultId pulumi.StringInput
}

The set of arguments for constructing a BackupInstancePostgresql resource.

func (BackupInstancePostgresqlArgs) ElementType

type BackupInstancePostgresqlArray

type BackupInstancePostgresqlArray []BackupInstancePostgresqlInput

func (BackupInstancePostgresqlArray) ElementType

func (BackupInstancePostgresqlArray) ToBackupInstancePostgresqlArrayOutput

func (i BackupInstancePostgresqlArray) ToBackupInstancePostgresqlArrayOutput() BackupInstancePostgresqlArrayOutput

func (BackupInstancePostgresqlArray) ToBackupInstancePostgresqlArrayOutputWithContext

func (i BackupInstancePostgresqlArray) ToBackupInstancePostgresqlArrayOutputWithContext(ctx context.Context) BackupInstancePostgresqlArrayOutput

type BackupInstancePostgresqlArrayInput

type BackupInstancePostgresqlArrayInput interface {
	pulumi.Input

	ToBackupInstancePostgresqlArrayOutput() BackupInstancePostgresqlArrayOutput
	ToBackupInstancePostgresqlArrayOutputWithContext(context.Context) BackupInstancePostgresqlArrayOutput
}

BackupInstancePostgresqlArrayInput is an input type that accepts BackupInstancePostgresqlArray and BackupInstancePostgresqlArrayOutput values. You can construct a concrete instance of `BackupInstancePostgresqlArrayInput` via:

BackupInstancePostgresqlArray{ BackupInstancePostgresqlArgs{...} }

type BackupInstancePostgresqlArrayOutput

type BackupInstancePostgresqlArrayOutput struct{ *pulumi.OutputState }

func (BackupInstancePostgresqlArrayOutput) ElementType

func (BackupInstancePostgresqlArrayOutput) Index

func (BackupInstancePostgresqlArrayOutput) ToBackupInstancePostgresqlArrayOutput

func (o BackupInstancePostgresqlArrayOutput) ToBackupInstancePostgresqlArrayOutput() BackupInstancePostgresqlArrayOutput

func (BackupInstancePostgresqlArrayOutput) ToBackupInstancePostgresqlArrayOutputWithContext

func (o BackupInstancePostgresqlArrayOutput) ToBackupInstancePostgresqlArrayOutputWithContext(ctx context.Context) BackupInstancePostgresqlArrayOutput

type BackupInstancePostgresqlInput

type BackupInstancePostgresqlInput interface {
	pulumi.Input

	ToBackupInstancePostgresqlOutput() BackupInstancePostgresqlOutput
	ToBackupInstancePostgresqlOutputWithContext(ctx context.Context) BackupInstancePostgresqlOutput
}

type BackupInstancePostgresqlMap

type BackupInstancePostgresqlMap map[string]BackupInstancePostgresqlInput

func (BackupInstancePostgresqlMap) ElementType

func (BackupInstancePostgresqlMap) ToBackupInstancePostgresqlMapOutput

func (i BackupInstancePostgresqlMap) ToBackupInstancePostgresqlMapOutput() BackupInstancePostgresqlMapOutput

func (BackupInstancePostgresqlMap) ToBackupInstancePostgresqlMapOutputWithContext

func (i BackupInstancePostgresqlMap) ToBackupInstancePostgresqlMapOutputWithContext(ctx context.Context) BackupInstancePostgresqlMapOutput

type BackupInstancePostgresqlMapInput

type BackupInstancePostgresqlMapInput interface {
	pulumi.Input

	ToBackupInstancePostgresqlMapOutput() BackupInstancePostgresqlMapOutput
	ToBackupInstancePostgresqlMapOutputWithContext(context.Context) BackupInstancePostgresqlMapOutput
}

BackupInstancePostgresqlMapInput is an input type that accepts BackupInstancePostgresqlMap and BackupInstancePostgresqlMapOutput values. You can construct a concrete instance of `BackupInstancePostgresqlMapInput` via:

BackupInstancePostgresqlMap{ "key": BackupInstancePostgresqlArgs{...} }

type BackupInstancePostgresqlMapOutput

type BackupInstancePostgresqlMapOutput struct{ *pulumi.OutputState }

func (BackupInstancePostgresqlMapOutput) ElementType

func (BackupInstancePostgresqlMapOutput) MapIndex

func (BackupInstancePostgresqlMapOutput) ToBackupInstancePostgresqlMapOutput

func (o BackupInstancePostgresqlMapOutput) ToBackupInstancePostgresqlMapOutput() BackupInstancePostgresqlMapOutput

func (BackupInstancePostgresqlMapOutput) ToBackupInstancePostgresqlMapOutputWithContext

func (o BackupInstancePostgresqlMapOutput) ToBackupInstancePostgresqlMapOutputWithContext(ctx context.Context) BackupInstancePostgresqlMapOutput

type BackupInstancePostgresqlOutput

type BackupInstancePostgresqlOutput struct{ *pulumi.OutputState }

func (BackupInstancePostgresqlOutput) BackupPolicyId added in v5.5.0

The ID of the Backup Policy.

func (BackupInstancePostgresqlOutput) DatabaseCredentialKeyVaultSecretId added in v5.5.0

func (o BackupInstancePostgresqlOutput) DatabaseCredentialKeyVaultSecretId() pulumi.StringPtrOutput

The ID or versionless ID of the key vault secret which stores the connection string of the database.

func (BackupInstancePostgresqlOutput) DatabaseId added in v5.5.0

The ID of the source database. Changing this forces a new Backup Instance PostgreSQL to be created.

func (BackupInstancePostgresqlOutput) ElementType

func (BackupInstancePostgresqlOutput) Location added in v5.5.0

The location of the source database. Changing this forces a new Backup Instance PostgreSQL to be created.

func (BackupInstancePostgresqlOutput) Name added in v5.5.0

The name which should be used for this Backup Instance PostgreSQL. Changing this forces a new Backup Instance PostgreSQL to be created.

func (BackupInstancePostgresqlOutput) ToBackupInstancePostgresqlOutput

func (o BackupInstancePostgresqlOutput) ToBackupInstancePostgresqlOutput() BackupInstancePostgresqlOutput

func (BackupInstancePostgresqlOutput) ToBackupInstancePostgresqlOutputWithContext

func (o BackupInstancePostgresqlOutput) ToBackupInstancePostgresqlOutputWithContext(ctx context.Context) BackupInstancePostgresqlOutput

func (BackupInstancePostgresqlOutput) VaultId added in v5.5.0

The ID of the Backup Vault within which the PostgreSQL Backup Instance should exist. Changing this forces a new Backup Instance PostgreSQL to be created.

type BackupInstancePostgresqlState

type BackupInstancePostgresqlState struct {
	// The ID of the Backup Policy.
	BackupPolicyId pulumi.StringPtrInput
	// The ID or versionless ID of the key vault secret which stores the connection string of the database.
	DatabaseCredentialKeyVaultSecretId pulumi.StringPtrInput
	// The ID of the source database. Changing this forces a new Backup Instance PostgreSQL to be created.
	DatabaseId pulumi.StringPtrInput
	// The location of the source database. Changing this forces a new Backup Instance PostgreSQL to be created.
	Location pulumi.StringPtrInput
	// The name which should be used for this Backup Instance PostgreSQL. Changing this forces a new Backup Instance PostgreSQL to be created.
	Name pulumi.StringPtrInput
	// The ID of the Backup Vault within which the PostgreSQL Backup Instance should exist. Changing this forces a new Backup Instance PostgreSQL to be created.
	VaultId pulumi.StringPtrInput
}

func (BackupInstancePostgresqlState) ElementType

type BackupPolicyBlobStorage

type BackupPolicyBlobStorage struct {
	pulumi.CustomResourceState

	// The name which should be used for this Backup Policy Blob Storage. Changing this forces a new Backup Policy Blob Storage to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Duration of deletion after given timespan. It should follow `ISO 8601` duration format. Changing this forces a new Backup Policy Blob Storage to be created.
	RetentionDuration pulumi.StringOutput `pulumi:"retentionDuration"`
	// The ID of the Backup Vault within which the Backup Policy Blob Storage should exist. Changing this forces a new Backup Policy Blob Storage to be created.
	VaultId pulumi.StringOutput `pulumi:"vaultId"`
}

Manages a Backup Policy Blob Storage.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/dataprotection"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleBackupVault, err := dataprotection.NewBackupVault(ctx, "exampleBackupVault", &dataprotection.BackupVaultArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
			DatastoreType:     pulumi.String("VaultStore"),
			Redundancy:        pulumi.String("LocallyRedundant"),
		})
		if err != nil {
			return err
		}
		_, err = dataprotection.NewBackupPolicyBlobStorage(ctx, "exampleBackupPolicyBlobStorage", &dataprotection.BackupPolicyBlobStorageArgs{
			VaultId:           exampleBackupVault.ID(),
			RetentionDuration: pulumi.String("P30D"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Backup Policy Blob Storages can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:dataprotection/backupPolicyBlobStorage:BackupPolicyBlobStorage example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.DataProtection/backupVaults/vault1/backupPolicies/backupPolicy1

```

func GetBackupPolicyBlobStorage

func GetBackupPolicyBlobStorage(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BackupPolicyBlobStorageState, opts ...pulumi.ResourceOption) (*BackupPolicyBlobStorage, error)

GetBackupPolicyBlobStorage gets an existing BackupPolicyBlobStorage resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewBackupPolicyBlobStorage

func NewBackupPolicyBlobStorage(ctx *pulumi.Context,
	name string, args *BackupPolicyBlobStorageArgs, opts ...pulumi.ResourceOption) (*BackupPolicyBlobStorage, error)

NewBackupPolicyBlobStorage registers a new resource with the given unique name, arguments, and options.

func (*BackupPolicyBlobStorage) ElementType

func (*BackupPolicyBlobStorage) ElementType() reflect.Type

func (*BackupPolicyBlobStorage) ToBackupPolicyBlobStorageOutput

func (i *BackupPolicyBlobStorage) ToBackupPolicyBlobStorageOutput() BackupPolicyBlobStorageOutput

func (*BackupPolicyBlobStorage) ToBackupPolicyBlobStorageOutputWithContext

func (i *BackupPolicyBlobStorage) ToBackupPolicyBlobStorageOutputWithContext(ctx context.Context) BackupPolicyBlobStorageOutput

type BackupPolicyBlobStorageArgs

type BackupPolicyBlobStorageArgs struct {
	// The name which should be used for this Backup Policy Blob Storage. Changing this forces a new Backup Policy Blob Storage to be created.
	Name pulumi.StringPtrInput
	// Duration of deletion after given timespan. It should follow `ISO 8601` duration format. Changing this forces a new Backup Policy Blob Storage to be created.
	RetentionDuration pulumi.StringInput
	// The ID of the Backup Vault within which the Backup Policy Blob Storage should exist. Changing this forces a new Backup Policy Blob Storage to be created.
	VaultId pulumi.StringInput
}

The set of arguments for constructing a BackupPolicyBlobStorage resource.

func (BackupPolicyBlobStorageArgs) ElementType

type BackupPolicyBlobStorageArray

type BackupPolicyBlobStorageArray []BackupPolicyBlobStorageInput

func (BackupPolicyBlobStorageArray) ElementType

func (BackupPolicyBlobStorageArray) ToBackupPolicyBlobStorageArrayOutput

func (i BackupPolicyBlobStorageArray) ToBackupPolicyBlobStorageArrayOutput() BackupPolicyBlobStorageArrayOutput

func (BackupPolicyBlobStorageArray) ToBackupPolicyBlobStorageArrayOutputWithContext

func (i BackupPolicyBlobStorageArray) ToBackupPolicyBlobStorageArrayOutputWithContext(ctx context.Context) BackupPolicyBlobStorageArrayOutput

type BackupPolicyBlobStorageArrayInput

type BackupPolicyBlobStorageArrayInput interface {
	pulumi.Input

	ToBackupPolicyBlobStorageArrayOutput() BackupPolicyBlobStorageArrayOutput
	ToBackupPolicyBlobStorageArrayOutputWithContext(context.Context) BackupPolicyBlobStorageArrayOutput
}

BackupPolicyBlobStorageArrayInput is an input type that accepts BackupPolicyBlobStorageArray and BackupPolicyBlobStorageArrayOutput values. You can construct a concrete instance of `BackupPolicyBlobStorageArrayInput` via:

BackupPolicyBlobStorageArray{ BackupPolicyBlobStorageArgs{...} }

type BackupPolicyBlobStorageArrayOutput

type BackupPolicyBlobStorageArrayOutput struct{ *pulumi.OutputState }

func (BackupPolicyBlobStorageArrayOutput) ElementType

func (BackupPolicyBlobStorageArrayOutput) Index

func (BackupPolicyBlobStorageArrayOutput) ToBackupPolicyBlobStorageArrayOutput

func (o BackupPolicyBlobStorageArrayOutput) ToBackupPolicyBlobStorageArrayOutput() BackupPolicyBlobStorageArrayOutput

func (BackupPolicyBlobStorageArrayOutput) ToBackupPolicyBlobStorageArrayOutputWithContext

func (o BackupPolicyBlobStorageArrayOutput) ToBackupPolicyBlobStorageArrayOutputWithContext(ctx context.Context) BackupPolicyBlobStorageArrayOutput

type BackupPolicyBlobStorageInput

type BackupPolicyBlobStorageInput interface {
	pulumi.Input

	ToBackupPolicyBlobStorageOutput() BackupPolicyBlobStorageOutput
	ToBackupPolicyBlobStorageOutputWithContext(ctx context.Context) BackupPolicyBlobStorageOutput
}

type BackupPolicyBlobStorageMap

type BackupPolicyBlobStorageMap map[string]BackupPolicyBlobStorageInput

func (BackupPolicyBlobStorageMap) ElementType

func (BackupPolicyBlobStorageMap) ElementType() reflect.Type

func (BackupPolicyBlobStorageMap) ToBackupPolicyBlobStorageMapOutput

func (i BackupPolicyBlobStorageMap) ToBackupPolicyBlobStorageMapOutput() BackupPolicyBlobStorageMapOutput

func (BackupPolicyBlobStorageMap) ToBackupPolicyBlobStorageMapOutputWithContext

func (i BackupPolicyBlobStorageMap) ToBackupPolicyBlobStorageMapOutputWithContext(ctx context.Context) BackupPolicyBlobStorageMapOutput

type BackupPolicyBlobStorageMapInput

type BackupPolicyBlobStorageMapInput interface {
	pulumi.Input

	ToBackupPolicyBlobStorageMapOutput() BackupPolicyBlobStorageMapOutput
	ToBackupPolicyBlobStorageMapOutputWithContext(context.Context) BackupPolicyBlobStorageMapOutput
}

BackupPolicyBlobStorageMapInput is an input type that accepts BackupPolicyBlobStorageMap and BackupPolicyBlobStorageMapOutput values. You can construct a concrete instance of `BackupPolicyBlobStorageMapInput` via:

BackupPolicyBlobStorageMap{ "key": BackupPolicyBlobStorageArgs{...} }

type BackupPolicyBlobStorageMapOutput

type BackupPolicyBlobStorageMapOutput struct{ *pulumi.OutputState }

func (BackupPolicyBlobStorageMapOutput) ElementType

func (BackupPolicyBlobStorageMapOutput) MapIndex

func (BackupPolicyBlobStorageMapOutput) ToBackupPolicyBlobStorageMapOutput

func (o BackupPolicyBlobStorageMapOutput) ToBackupPolicyBlobStorageMapOutput() BackupPolicyBlobStorageMapOutput

func (BackupPolicyBlobStorageMapOutput) ToBackupPolicyBlobStorageMapOutputWithContext

func (o BackupPolicyBlobStorageMapOutput) ToBackupPolicyBlobStorageMapOutputWithContext(ctx context.Context) BackupPolicyBlobStorageMapOutput

type BackupPolicyBlobStorageOutput

type BackupPolicyBlobStorageOutput struct{ *pulumi.OutputState }

func (BackupPolicyBlobStorageOutput) ElementType

func (BackupPolicyBlobStorageOutput) Name added in v5.5.0

The name which should be used for this Backup Policy Blob Storage. Changing this forces a new Backup Policy Blob Storage to be created.

func (BackupPolicyBlobStorageOutput) RetentionDuration added in v5.5.0

func (o BackupPolicyBlobStorageOutput) RetentionDuration() pulumi.StringOutput

Duration of deletion after given timespan. It should follow `ISO 8601` duration format. Changing this forces a new Backup Policy Blob Storage to be created.

func (BackupPolicyBlobStorageOutput) ToBackupPolicyBlobStorageOutput

func (o BackupPolicyBlobStorageOutput) ToBackupPolicyBlobStorageOutput() BackupPolicyBlobStorageOutput

func (BackupPolicyBlobStorageOutput) ToBackupPolicyBlobStorageOutputWithContext

func (o BackupPolicyBlobStorageOutput) ToBackupPolicyBlobStorageOutputWithContext(ctx context.Context) BackupPolicyBlobStorageOutput

func (BackupPolicyBlobStorageOutput) VaultId added in v5.5.0

The ID of the Backup Vault within which the Backup Policy Blob Storage should exist. Changing this forces a new Backup Policy Blob Storage to be created.

type BackupPolicyBlobStorageState

type BackupPolicyBlobStorageState struct {
	// The name which should be used for this Backup Policy Blob Storage. Changing this forces a new Backup Policy Blob Storage to be created.
	Name pulumi.StringPtrInput
	// Duration of deletion after given timespan. It should follow `ISO 8601` duration format. Changing this forces a new Backup Policy Blob Storage to be created.
	RetentionDuration pulumi.StringPtrInput
	// The ID of the Backup Vault within which the Backup Policy Blob Storage should exist. Changing this forces a new Backup Policy Blob Storage to be created.
	VaultId pulumi.StringPtrInput
}

func (BackupPolicyBlobStorageState) ElementType

type BackupPolicyDisk

type BackupPolicyDisk struct {
	pulumi.CustomResourceState

	// Specifies a list of repeating time interval. It should follow `ISO 8601` repeating time interval . Changing this forces a new Backup Policy Disk to be created.
	BackupRepeatingTimeIntervals pulumi.StringArrayOutput `pulumi:"backupRepeatingTimeIntervals"`
	// The duration of default retention rule. It should follow `ISO 8601` duration format. Changing this forces a new Backup Policy Disk to be created.
	DefaultRetentionDuration pulumi.StringOutput `pulumi:"defaultRetentionDuration"`
	// The name which should be used for this Backup Policy Disk. Changing this forces a new Backup Policy Disk to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// One or more `retentionRule` blocks as defined below. Changing this forces a new Backup Policy Disk to be created.
	RetentionRules BackupPolicyDiskRetentionRuleArrayOutput `pulumi:"retentionRules"`
	// The ID of the Backup Vault within which the Backup Policy Disk should exist. Changing this forces a new Backup Policy Disk to be created.
	VaultId pulumi.StringOutput `pulumi:"vaultId"`
}

Manages a Backup Policy Disk.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/dataprotection"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleBackupVault, err := dataprotection.NewBackupVault(ctx, "exampleBackupVault", &dataprotection.BackupVaultArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
			DatastoreType:     pulumi.String("VaultStore"),
			Redundancy:        pulumi.String("LocallyRedundant"),
		})
		if err != nil {
			return err
		}
		_, err = dataprotection.NewBackupPolicyDisk(ctx, "exampleBackupPolicyDisk", &dataprotection.BackupPolicyDiskArgs{
			VaultId: exampleBackupVault.ID(),
			BackupRepeatingTimeIntervals: pulumi.StringArray{
				pulumi.String("R/2021-05-19T06:33:16+00:00/PT4H"),
			},
			DefaultRetentionDuration: pulumi.String("P7D"),
			RetentionRules: dataprotection.BackupPolicyDiskRetentionRuleArray{
				&dataprotection.BackupPolicyDiskRetentionRuleArgs{
					Name:     pulumi.String("Daily"),
					Duration: pulumi.String("P7D"),
					Priority: pulumi.Int(25),
					Criteria: &dataprotection.BackupPolicyDiskRetentionRuleCriteriaArgs{
						AbsoluteCriteria: pulumi.String("FirstOfDay"),
					},
				},
				&dataprotection.BackupPolicyDiskRetentionRuleArgs{
					Name:     pulumi.String("Weekly"),
					Duration: pulumi.String("P7D"),
					Priority: pulumi.Int(20),
					Criteria: &dataprotection.BackupPolicyDiskRetentionRuleCriteriaArgs{
						AbsoluteCriteria: pulumi.String("FirstOfWeek"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Backup Policy Disks can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:dataprotection/backupPolicyDisk:BackupPolicyDisk example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.DataProtection/backupVaults/vault1/backupPolicies/backupPolicy1

```

func GetBackupPolicyDisk

func GetBackupPolicyDisk(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BackupPolicyDiskState, opts ...pulumi.ResourceOption) (*BackupPolicyDisk, error)

GetBackupPolicyDisk gets an existing BackupPolicyDisk resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewBackupPolicyDisk

func NewBackupPolicyDisk(ctx *pulumi.Context,
	name string, args *BackupPolicyDiskArgs, opts ...pulumi.ResourceOption) (*BackupPolicyDisk, error)

NewBackupPolicyDisk registers a new resource with the given unique name, arguments, and options.

func (*BackupPolicyDisk) ElementType

func (*BackupPolicyDisk) ElementType() reflect.Type

func (*BackupPolicyDisk) ToBackupPolicyDiskOutput

func (i *BackupPolicyDisk) ToBackupPolicyDiskOutput() BackupPolicyDiskOutput

func (*BackupPolicyDisk) ToBackupPolicyDiskOutputWithContext

func (i *BackupPolicyDisk) ToBackupPolicyDiskOutputWithContext(ctx context.Context) BackupPolicyDiskOutput

type BackupPolicyDiskArgs

type BackupPolicyDiskArgs struct {
	// Specifies a list of repeating time interval. It should follow `ISO 8601` repeating time interval . Changing this forces a new Backup Policy Disk to be created.
	BackupRepeatingTimeIntervals pulumi.StringArrayInput
	// The duration of default retention rule. It should follow `ISO 8601` duration format. Changing this forces a new Backup Policy Disk to be created.
	DefaultRetentionDuration pulumi.StringInput
	// The name which should be used for this Backup Policy Disk. Changing this forces a new Backup Policy Disk to be created.
	Name pulumi.StringPtrInput
	// One or more `retentionRule` blocks as defined below. Changing this forces a new Backup Policy Disk to be created.
	RetentionRules BackupPolicyDiskRetentionRuleArrayInput
	// The ID of the Backup Vault within which the Backup Policy Disk should exist. Changing this forces a new Backup Policy Disk to be created.
	VaultId pulumi.StringInput
}

The set of arguments for constructing a BackupPolicyDisk resource.

func (BackupPolicyDiskArgs) ElementType

func (BackupPolicyDiskArgs) ElementType() reflect.Type

type BackupPolicyDiskArray

type BackupPolicyDiskArray []BackupPolicyDiskInput

func (BackupPolicyDiskArray) ElementType

func (BackupPolicyDiskArray) ElementType() reflect.Type

func (BackupPolicyDiskArray) ToBackupPolicyDiskArrayOutput

func (i BackupPolicyDiskArray) ToBackupPolicyDiskArrayOutput() BackupPolicyDiskArrayOutput

func (BackupPolicyDiskArray) ToBackupPolicyDiskArrayOutputWithContext

func (i BackupPolicyDiskArray) ToBackupPolicyDiskArrayOutputWithContext(ctx context.Context) BackupPolicyDiskArrayOutput

type BackupPolicyDiskArrayInput

type BackupPolicyDiskArrayInput interface {
	pulumi.Input

	ToBackupPolicyDiskArrayOutput() BackupPolicyDiskArrayOutput
	ToBackupPolicyDiskArrayOutputWithContext(context.Context) BackupPolicyDiskArrayOutput
}

BackupPolicyDiskArrayInput is an input type that accepts BackupPolicyDiskArray and BackupPolicyDiskArrayOutput values. You can construct a concrete instance of `BackupPolicyDiskArrayInput` via:

BackupPolicyDiskArray{ BackupPolicyDiskArgs{...} }

type BackupPolicyDiskArrayOutput

type BackupPolicyDiskArrayOutput struct{ *pulumi.OutputState }

func (BackupPolicyDiskArrayOutput) ElementType

func (BackupPolicyDiskArrayOutput) Index

func (BackupPolicyDiskArrayOutput) ToBackupPolicyDiskArrayOutput

func (o BackupPolicyDiskArrayOutput) ToBackupPolicyDiskArrayOutput() BackupPolicyDiskArrayOutput

func (BackupPolicyDiskArrayOutput) ToBackupPolicyDiskArrayOutputWithContext

func (o BackupPolicyDiskArrayOutput) ToBackupPolicyDiskArrayOutputWithContext(ctx context.Context) BackupPolicyDiskArrayOutput

type BackupPolicyDiskInput

type BackupPolicyDiskInput interface {
	pulumi.Input

	ToBackupPolicyDiskOutput() BackupPolicyDiskOutput
	ToBackupPolicyDiskOutputWithContext(ctx context.Context) BackupPolicyDiskOutput
}

type BackupPolicyDiskMap

type BackupPolicyDiskMap map[string]BackupPolicyDiskInput

func (BackupPolicyDiskMap) ElementType

func (BackupPolicyDiskMap) ElementType() reflect.Type

func (BackupPolicyDiskMap) ToBackupPolicyDiskMapOutput

func (i BackupPolicyDiskMap) ToBackupPolicyDiskMapOutput() BackupPolicyDiskMapOutput

func (BackupPolicyDiskMap) ToBackupPolicyDiskMapOutputWithContext

func (i BackupPolicyDiskMap) ToBackupPolicyDiskMapOutputWithContext(ctx context.Context) BackupPolicyDiskMapOutput

type BackupPolicyDiskMapInput

type BackupPolicyDiskMapInput interface {
	pulumi.Input

	ToBackupPolicyDiskMapOutput() BackupPolicyDiskMapOutput
	ToBackupPolicyDiskMapOutputWithContext(context.Context) BackupPolicyDiskMapOutput
}

BackupPolicyDiskMapInput is an input type that accepts BackupPolicyDiskMap and BackupPolicyDiskMapOutput values. You can construct a concrete instance of `BackupPolicyDiskMapInput` via:

BackupPolicyDiskMap{ "key": BackupPolicyDiskArgs{...} }

type BackupPolicyDiskMapOutput

type BackupPolicyDiskMapOutput struct{ *pulumi.OutputState }

func (BackupPolicyDiskMapOutput) ElementType

func (BackupPolicyDiskMapOutput) ElementType() reflect.Type

func (BackupPolicyDiskMapOutput) MapIndex

func (BackupPolicyDiskMapOutput) ToBackupPolicyDiskMapOutput

func (o BackupPolicyDiskMapOutput) ToBackupPolicyDiskMapOutput() BackupPolicyDiskMapOutput

func (BackupPolicyDiskMapOutput) ToBackupPolicyDiskMapOutputWithContext

func (o BackupPolicyDiskMapOutput) ToBackupPolicyDiskMapOutputWithContext(ctx context.Context) BackupPolicyDiskMapOutput

type BackupPolicyDiskOutput

type BackupPolicyDiskOutput struct{ *pulumi.OutputState }

func (BackupPolicyDiskOutput) BackupRepeatingTimeIntervals added in v5.5.0

func (o BackupPolicyDiskOutput) BackupRepeatingTimeIntervals() pulumi.StringArrayOutput

Specifies a list of repeating time interval. It should follow `ISO 8601` repeating time interval . Changing this forces a new Backup Policy Disk to be created.

func (BackupPolicyDiskOutput) DefaultRetentionDuration added in v5.5.0

func (o BackupPolicyDiskOutput) DefaultRetentionDuration() pulumi.StringOutput

The duration of default retention rule. It should follow `ISO 8601` duration format. Changing this forces a new Backup Policy Disk to be created.

func (BackupPolicyDiskOutput) ElementType

func (BackupPolicyDiskOutput) ElementType() reflect.Type

func (BackupPolicyDiskOutput) Name added in v5.5.0

The name which should be used for this Backup Policy Disk. Changing this forces a new Backup Policy Disk to be created.

func (BackupPolicyDiskOutput) RetentionRules added in v5.5.0

One or more `retentionRule` blocks as defined below. Changing this forces a new Backup Policy Disk to be created.

func (BackupPolicyDiskOutput) ToBackupPolicyDiskOutput

func (o BackupPolicyDiskOutput) ToBackupPolicyDiskOutput() BackupPolicyDiskOutput

func (BackupPolicyDiskOutput) ToBackupPolicyDiskOutputWithContext

func (o BackupPolicyDiskOutput) ToBackupPolicyDiskOutputWithContext(ctx context.Context) BackupPolicyDiskOutput

func (BackupPolicyDiskOutput) VaultId added in v5.5.0

The ID of the Backup Vault within which the Backup Policy Disk should exist. Changing this forces a new Backup Policy Disk to be created.

type BackupPolicyDiskRetentionRule

type BackupPolicyDiskRetentionRule struct {
	// A `criteria` block as defined below. Changing this forces a new Backup Policy Disk to be created.
	Criteria BackupPolicyDiskRetentionRuleCriteria `pulumi:"criteria"`
	// Duration of deletion after given timespan. It should follow `ISO 8601` duration format. Changing this forces a new Backup Policy Disk to be created.
	Duration string `pulumi:"duration"`
	// The name which should be used for this retention rule. Changing this forces a new Backup Policy Disk to be created.
	Name string `pulumi:"name"`
	// Retention Tag priority. Changing this forces a new Backup Policy Disk to be created.
	Priority int `pulumi:"priority"`
}

type BackupPolicyDiskRetentionRuleArgs

type BackupPolicyDiskRetentionRuleArgs struct {
	// A `criteria` block as defined below. Changing this forces a new Backup Policy Disk to be created.
	Criteria BackupPolicyDiskRetentionRuleCriteriaInput `pulumi:"criteria"`
	// Duration of deletion after given timespan. It should follow `ISO 8601` duration format. Changing this forces a new Backup Policy Disk to be created.
	Duration pulumi.StringInput `pulumi:"duration"`
	// The name which should be used for this retention rule. Changing this forces a new Backup Policy Disk to be created.
	Name pulumi.StringInput `pulumi:"name"`
	// Retention Tag priority. Changing this forces a new Backup Policy Disk to be created.
	Priority pulumi.IntInput `pulumi:"priority"`
}

func (BackupPolicyDiskRetentionRuleArgs) ElementType

func (BackupPolicyDiskRetentionRuleArgs) ToBackupPolicyDiskRetentionRuleOutput

func (i BackupPolicyDiskRetentionRuleArgs) ToBackupPolicyDiskRetentionRuleOutput() BackupPolicyDiskRetentionRuleOutput

func (BackupPolicyDiskRetentionRuleArgs) ToBackupPolicyDiskRetentionRuleOutputWithContext

func (i BackupPolicyDiskRetentionRuleArgs) ToBackupPolicyDiskRetentionRuleOutputWithContext(ctx context.Context) BackupPolicyDiskRetentionRuleOutput

type BackupPolicyDiskRetentionRuleArray

type BackupPolicyDiskRetentionRuleArray []BackupPolicyDiskRetentionRuleInput

func (BackupPolicyDiskRetentionRuleArray) ElementType

func (BackupPolicyDiskRetentionRuleArray) ToBackupPolicyDiskRetentionRuleArrayOutput

func (i BackupPolicyDiskRetentionRuleArray) ToBackupPolicyDiskRetentionRuleArrayOutput() BackupPolicyDiskRetentionRuleArrayOutput

func (BackupPolicyDiskRetentionRuleArray) ToBackupPolicyDiskRetentionRuleArrayOutputWithContext

func (i BackupPolicyDiskRetentionRuleArray) ToBackupPolicyDiskRetentionRuleArrayOutputWithContext(ctx context.Context) BackupPolicyDiskRetentionRuleArrayOutput

type BackupPolicyDiskRetentionRuleArrayInput

type BackupPolicyDiskRetentionRuleArrayInput interface {
	pulumi.Input

	ToBackupPolicyDiskRetentionRuleArrayOutput() BackupPolicyDiskRetentionRuleArrayOutput
	ToBackupPolicyDiskRetentionRuleArrayOutputWithContext(context.Context) BackupPolicyDiskRetentionRuleArrayOutput
}

BackupPolicyDiskRetentionRuleArrayInput is an input type that accepts BackupPolicyDiskRetentionRuleArray and BackupPolicyDiskRetentionRuleArrayOutput values. You can construct a concrete instance of `BackupPolicyDiskRetentionRuleArrayInput` via:

BackupPolicyDiskRetentionRuleArray{ BackupPolicyDiskRetentionRuleArgs{...} }

type BackupPolicyDiskRetentionRuleArrayOutput

type BackupPolicyDiskRetentionRuleArrayOutput struct{ *pulumi.OutputState }

func (BackupPolicyDiskRetentionRuleArrayOutput) ElementType

func (BackupPolicyDiskRetentionRuleArrayOutput) Index

func (BackupPolicyDiskRetentionRuleArrayOutput) ToBackupPolicyDiskRetentionRuleArrayOutput

func (o BackupPolicyDiskRetentionRuleArrayOutput) ToBackupPolicyDiskRetentionRuleArrayOutput() BackupPolicyDiskRetentionRuleArrayOutput

func (BackupPolicyDiskRetentionRuleArrayOutput) ToBackupPolicyDiskRetentionRuleArrayOutputWithContext

func (o BackupPolicyDiskRetentionRuleArrayOutput) ToBackupPolicyDiskRetentionRuleArrayOutputWithContext(ctx context.Context) BackupPolicyDiskRetentionRuleArrayOutput

type BackupPolicyDiskRetentionRuleCriteria

type BackupPolicyDiskRetentionRuleCriteria struct {
	// Possible values are `FirstOfDay` and `FirstOfWeek`. Changing this forces a new Backup Policy Disk to be created.
	AbsoluteCriteria *string `pulumi:"absoluteCriteria"`
}

type BackupPolicyDiskRetentionRuleCriteriaArgs

type BackupPolicyDiskRetentionRuleCriteriaArgs struct {
	// Possible values are `FirstOfDay` and `FirstOfWeek`. Changing this forces a new Backup Policy Disk to be created.
	AbsoluteCriteria pulumi.StringPtrInput `pulumi:"absoluteCriteria"`
}

func (BackupPolicyDiskRetentionRuleCriteriaArgs) ElementType

func (BackupPolicyDiskRetentionRuleCriteriaArgs) ToBackupPolicyDiskRetentionRuleCriteriaOutput

func (i BackupPolicyDiskRetentionRuleCriteriaArgs) ToBackupPolicyDiskRetentionRuleCriteriaOutput() BackupPolicyDiskRetentionRuleCriteriaOutput

func (BackupPolicyDiskRetentionRuleCriteriaArgs) ToBackupPolicyDiskRetentionRuleCriteriaOutputWithContext

func (i BackupPolicyDiskRetentionRuleCriteriaArgs) ToBackupPolicyDiskRetentionRuleCriteriaOutputWithContext(ctx context.Context) BackupPolicyDiskRetentionRuleCriteriaOutput

type BackupPolicyDiskRetentionRuleCriteriaInput

type BackupPolicyDiskRetentionRuleCriteriaInput interface {
	pulumi.Input

	ToBackupPolicyDiskRetentionRuleCriteriaOutput() BackupPolicyDiskRetentionRuleCriteriaOutput
	ToBackupPolicyDiskRetentionRuleCriteriaOutputWithContext(context.Context) BackupPolicyDiskRetentionRuleCriteriaOutput
}

BackupPolicyDiskRetentionRuleCriteriaInput is an input type that accepts BackupPolicyDiskRetentionRuleCriteriaArgs and BackupPolicyDiskRetentionRuleCriteriaOutput values. You can construct a concrete instance of `BackupPolicyDiskRetentionRuleCriteriaInput` via:

BackupPolicyDiskRetentionRuleCriteriaArgs{...}

type BackupPolicyDiskRetentionRuleCriteriaOutput

type BackupPolicyDiskRetentionRuleCriteriaOutput struct{ *pulumi.OutputState }

func (BackupPolicyDiskRetentionRuleCriteriaOutput) AbsoluteCriteria

Possible values are `FirstOfDay` and `FirstOfWeek`. Changing this forces a new Backup Policy Disk to be created.

func (BackupPolicyDiskRetentionRuleCriteriaOutput) ElementType

func (BackupPolicyDiskRetentionRuleCriteriaOutput) ToBackupPolicyDiskRetentionRuleCriteriaOutput

func (o BackupPolicyDiskRetentionRuleCriteriaOutput) ToBackupPolicyDiskRetentionRuleCriteriaOutput() BackupPolicyDiskRetentionRuleCriteriaOutput

func (BackupPolicyDiskRetentionRuleCriteriaOutput) ToBackupPolicyDiskRetentionRuleCriteriaOutputWithContext

func (o BackupPolicyDiskRetentionRuleCriteriaOutput) ToBackupPolicyDiskRetentionRuleCriteriaOutputWithContext(ctx context.Context) BackupPolicyDiskRetentionRuleCriteriaOutput

type BackupPolicyDiskRetentionRuleInput

type BackupPolicyDiskRetentionRuleInput interface {
	pulumi.Input

	ToBackupPolicyDiskRetentionRuleOutput() BackupPolicyDiskRetentionRuleOutput
	ToBackupPolicyDiskRetentionRuleOutputWithContext(context.Context) BackupPolicyDiskRetentionRuleOutput
}

BackupPolicyDiskRetentionRuleInput is an input type that accepts BackupPolicyDiskRetentionRuleArgs and BackupPolicyDiskRetentionRuleOutput values. You can construct a concrete instance of `BackupPolicyDiskRetentionRuleInput` via:

BackupPolicyDiskRetentionRuleArgs{...}

type BackupPolicyDiskRetentionRuleOutput

type BackupPolicyDiskRetentionRuleOutput struct{ *pulumi.OutputState }

func (BackupPolicyDiskRetentionRuleOutput) Criteria

A `criteria` block as defined below. Changing this forces a new Backup Policy Disk to be created.

func (BackupPolicyDiskRetentionRuleOutput) Duration

Duration of deletion after given timespan. It should follow `ISO 8601` duration format. Changing this forces a new Backup Policy Disk to be created.

func (BackupPolicyDiskRetentionRuleOutput) ElementType

func (BackupPolicyDiskRetentionRuleOutput) Name

The name which should be used for this retention rule. Changing this forces a new Backup Policy Disk to be created.

func (BackupPolicyDiskRetentionRuleOutput) Priority

Retention Tag priority. Changing this forces a new Backup Policy Disk to be created.

func (BackupPolicyDiskRetentionRuleOutput) ToBackupPolicyDiskRetentionRuleOutput

func (o BackupPolicyDiskRetentionRuleOutput) ToBackupPolicyDiskRetentionRuleOutput() BackupPolicyDiskRetentionRuleOutput

func (BackupPolicyDiskRetentionRuleOutput) ToBackupPolicyDiskRetentionRuleOutputWithContext

func (o BackupPolicyDiskRetentionRuleOutput) ToBackupPolicyDiskRetentionRuleOutputWithContext(ctx context.Context) BackupPolicyDiskRetentionRuleOutput

type BackupPolicyDiskState

type BackupPolicyDiskState struct {
	// Specifies a list of repeating time interval. It should follow `ISO 8601` repeating time interval . Changing this forces a new Backup Policy Disk to be created.
	BackupRepeatingTimeIntervals pulumi.StringArrayInput
	// The duration of default retention rule. It should follow `ISO 8601` duration format. Changing this forces a new Backup Policy Disk to be created.
	DefaultRetentionDuration pulumi.StringPtrInput
	// The name which should be used for this Backup Policy Disk. Changing this forces a new Backup Policy Disk to be created.
	Name pulumi.StringPtrInput
	// One or more `retentionRule` blocks as defined below. Changing this forces a new Backup Policy Disk to be created.
	RetentionRules BackupPolicyDiskRetentionRuleArrayInput
	// The ID of the Backup Vault within which the Backup Policy Disk should exist. Changing this forces a new Backup Policy Disk to be created.
	VaultId pulumi.StringPtrInput
}

func (BackupPolicyDiskState) ElementType

func (BackupPolicyDiskState) ElementType() reflect.Type

type BackupPolicyPostgresql

type BackupPolicyPostgresql struct {
	pulumi.CustomResourceState

	// Specifies a list of repeating time interval. It supports weekly back. It should follow `ISO 8601` repeating time interval. Changing this forces a new Backup Policy PostgreSQL to be created.
	BackupRepeatingTimeIntervals pulumi.StringArrayOutput `pulumi:"backupRepeatingTimeIntervals"`
	// The duration of default retention rule. It should follow `ISO 8601` duration format. Changing this forces a new Backup Policy PostgreSQL to be created.
	DefaultRetentionDuration pulumi.StringOutput `pulumi:"defaultRetentionDuration"`
	// The name which should be used for this Backup Policy PostgreSQL. Changing this forces a new Backup Policy PostgreSQL to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the Resource Group where the Backup Policy PostgreSQL should exist. Changing this forces a new Backup Policy PostgreSQL to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// One or more `retentionRule` blocks as defined below. Changing this forces a new Backup Policy PostgreSQL to be created.
	RetentionRules BackupPolicyPostgresqlRetentionRuleArrayOutput `pulumi:"retentionRules"`
	// The name of the Backup Vault where the Backup Policy PostgreSQL should exist. Changing this forces a new Backup Policy PostgreSQL to be created.
	VaultName pulumi.StringOutput `pulumi:"vaultName"`
}

Manages a Backup Policy to back up PostgreSQL.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/dataprotection"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleBackupVault, err := dataprotection.NewBackupVault(ctx, "exampleBackupVault", &dataprotection.BackupVaultArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
			DatastoreType:     pulumi.String("VaultStore"),
			Redundancy:        pulumi.String("LocallyRedundant"),
		})
		if err != nil {
			return err
		}
		_, err = dataprotection.NewBackupPolicyPostgresql(ctx, "exampleBackupPolicyPostgresql", &dataprotection.BackupPolicyPostgresqlArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			VaultName:         exampleBackupVault.Name,
			BackupRepeatingTimeIntervals: pulumi.StringArray{
				pulumi.String("R/2021-05-23T02:30:00+00:00/P1W"),
			},
			DefaultRetentionDuration: pulumi.String("P4M"),
			RetentionRules: dataprotection.BackupPolicyPostgresqlRetentionRuleArray{
				&dataprotection.BackupPolicyPostgresqlRetentionRuleArgs{
					Name:     pulumi.String("weekly"),
					Duration: pulumi.String("P6M"),
					Priority: pulumi.Int(20),
					Criteria: &dataprotection.BackupPolicyPostgresqlRetentionRuleCriteriaArgs{
						AbsoluteCriteria: pulumi.String("FirstOfWeek"),
					},
				},
				&dataprotection.BackupPolicyPostgresqlRetentionRuleArgs{
					Name:     pulumi.String("thursday"),
					Duration: pulumi.String("P1W"),
					Priority: pulumi.Int(25),
					Criteria: &dataprotection.BackupPolicyPostgresqlRetentionRuleCriteriaArgs{
						DaysOfWeeks: pulumi.StringArray{
							pulumi.String("Thursday"),
						},
						ScheduledBackupTimes: pulumi.StringArray{
							pulumi.String("2021-05-23T02:30:00Z"),
						},
					},
				},
				&dataprotection.BackupPolicyPostgresqlRetentionRuleArgs{
					Name:     pulumi.String("monthly"),
					Duration: pulumi.String("P1D"),
					Priority: pulumi.Int(15),
					Criteria: &dataprotection.BackupPolicyPostgresqlRetentionRuleCriteriaArgs{
						WeeksOfMonths: pulumi.StringArray{
							pulumi.String("First"),
							pulumi.String("Last"),
						},
						DaysOfWeeks: pulumi.StringArray{
							pulumi.String("Tuesday"),
						},
						ScheduledBackupTimes: pulumi.StringArray{
							pulumi.String("2021-05-23T02:30:00Z"),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Backup Policy PostgreSQL's can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:dataprotection/backupPolicyPostgresql:BackupPolicyPostgresql example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.DataProtection/backupVaults/vault1/backupPolicies/backupPolicy1

```

func GetBackupPolicyPostgresql

func GetBackupPolicyPostgresql(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BackupPolicyPostgresqlState, opts ...pulumi.ResourceOption) (*BackupPolicyPostgresql, error)

GetBackupPolicyPostgresql gets an existing BackupPolicyPostgresql resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewBackupPolicyPostgresql

func NewBackupPolicyPostgresql(ctx *pulumi.Context,
	name string, args *BackupPolicyPostgresqlArgs, opts ...pulumi.ResourceOption) (*BackupPolicyPostgresql, error)

NewBackupPolicyPostgresql registers a new resource with the given unique name, arguments, and options.

func (*BackupPolicyPostgresql) ElementType

func (*BackupPolicyPostgresql) ElementType() reflect.Type

func (*BackupPolicyPostgresql) ToBackupPolicyPostgresqlOutput

func (i *BackupPolicyPostgresql) ToBackupPolicyPostgresqlOutput() BackupPolicyPostgresqlOutput

func (*BackupPolicyPostgresql) ToBackupPolicyPostgresqlOutputWithContext

func (i *BackupPolicyPostgresql) ToBackupPolicyPostgresqlOutputWithContext(ctx context.Context) BackupPolicyPostgresqlOutput

type BackupPolicyPostgresqlArgs

type BackupPolicyPostgresqlArgs struct {
	// Specifies a list of repeating time interval. It supports weekly back. It should follow `ISO 8601` repeating time interval. Changing this forces a new Backup Policy PostgreSQL to be created.
	BackupRepeatingTimeIntervals pulumi.StringArrayInput
	// The duration of default retention rule. It should follow `ISO 8601` duration format. Changing this forces a new Backup Policy PostgreSQL to be created.
	DefaultRetentionDuration pulumi.StringInput
	// The name which should be used for this Backup Policy PostgreSQL. Changing this forces a new Backup Policy PostgreSQL to be created.
	Name pulumi.StringPtrInput
	// The name of the Resource Group where the Backup Policy PostgreSQL should exist. Changing this forces a new Backup Policy PostgreSQL to be created.
	ResourceGroupName pulumi.StringInput
	// One or more `retentionRule` blocks as defined below. Changing this forces a new Backup Policy PostgreSQL to be created.
	RetentionRules BackupPolicyPostgresqlRetentionRuleArrayInput
	// The name of the Backup Vault where the Backup Policy PostgreSQL should exist. Changing this forces a new Backup Policy PostgreSQL to be created.
	VaultName pulumi.StringInput
}

The set of arguments for constructing a BackupPolicyPostgresql resource.

func (BackupPolicyPostgresqlArgs) ElementType

func (BackupPolicyPostgresqlArgs) ElementType() reflect.Type

type BackupPolicyPostgresqlArray

type BackupPolicyPostgresqlArray []BackupPolicyPostgresqlInput

func (BackupPolicyPostgresqlArray) ElementType

func (BackupPolicyPostgresqlArray) ToBackupPolicyPostgresqlArrayOutput

func (i BackupPolicyPostgresqlArray) ToBackupPolicyPostgresqlArrayOutput() BackupPolicyPostgresqlArrayOutput

func (BackupPolicyPostgresqlArray) ToBackupPolicyPostgresqlArrayOutputWithContext

func (i BackupPolicyPostgresqlArray) ToBackupPolicyPostgresqlArrayOutputWithContext(ctx context.Context) BackupPolicyPostgresqlArrayOutput

type BackupPolicyPostgresqlArrayInput

type BackupPolicyPostgresqlArrayInput interface {
	pulumi.Input

	ToBackupPolicyPostgresqlArrayOutput() BackupPolicyPostgresqlArrayOutput
	ToBackupPolicyPostgresqlArrayOutputWithContext(context.Context) BackupPolicyPostgresqlArrayOutput
}

BackupPolicyPostgresqlArrayInput is an input type that accepts BackupPolicyPostgresqlArray and BackupPolicyPostgresqlArrayOutput values. You can construct a concrete instance of `BackupPolicyPostgresqlArrayInput` via:

BackupPolicyPostgresqlArray{ BackupPolicyPostgresqlArgs{...} }

type BackupPolicyPostgresqlArrayOutput

type BackupPolicyPostgresqlArrayOutput struct{ *pulumi.OutputState }

func (BackupPolicyPostgresqlArrayOutput) ElementType

func (BackupPolicyPostgresqlArrayOutput) Index

func (BackupPolicyPostgresqlArrayOutput) ToBackupPolicyPostgresqlArrayOutput

func (o BackupPolicyPostgresqlArrayOutput) ToBackupPolicyPostgresqlArrayOutput() BackupPolicyPostgresqlArrayOutput

func (BackupPolicyPostgresqlArrayOutput) ToBackupPolicyPostgresqlArrayOutputWithContext

func (o BackupPolicyPostgresqlArrayOutput) ToBackupPolicyPostgresqlArrayOutputWithContext(ctx context.Context) BackupPolicyPostgresqlArrayOutput

type BackupPolicyPostgresqlInput

type BackupPolicyPostgresqlInput interface {
	pulumi.Input

	ToBackupPolicyPostgresqlOutput() BackupPolicyPostgresqlOutput
	ToBackupPolicyPostgresqlOutputWithContext(ctx context.Context) BackupPolicyPostgresqlOutput
}

type BackupPolicyPostgresqlMap

type BackupPolicyPostgresqlMap map[string]BackupPolicyPostgresqlInput

func (BackupPolicyPostgresqlMap) ElementType

func (BackupPolicyPostgresqlMap) ElementType() reflect.Type

func (BackupPolicyPostgresqlMap) ToBackupPolicyPostgresqlMapOutput

func (i BackupPolicyPostgresqlMap) ToBackupPolicyPostgresqlMapOutput() BackupPolicyPostgresqlMapOutput

func (BackupPolicyPostgresqlMap) ToBackupPolicyPostgresqlMapOutputWithContext

func (i BackupPolicyPostgresqlMap) ToBackupPolicyPostgresqlMapOutputWithContext(ctx context.Context) BackupPolicyPostgresqlMapOutput

type BackupPolicyPostgresqlMapInput

type BackupPolicyPostgresqlMapInput interface {
	pulumi.Input

	ToBackupPolicyPostgresqlMapOutput() BackupPolicyPostgresqlMapOutput
	ToBackupPolicyPostgresqlMapOutputWithContext(context.Context) BackupPolicyPostgresqlMapOutput
}

BackupPolicyPostgresqlMapInput is an input type that accepts BackupPolicyPostgresqlMap and BackupPolicyPostgresqlMapOutput values. You can construct a concrete instance of `BackupPolicyPostgresqlMapInput` via:

BackupPolicyPostgresqlMap{ "key": BackupPolicyPostgresqlArgs{...} }

type BackupPolicyPostgresqlMapOutput

type BackupPolicyPostgresqlMapOutput struct{ *pulumi.OutputState }

func (BackupPolicyPostgresqlMapOutput) ElementType

func (BackupPolicyPostgresqlMapOutput) MapIndex

func (BackupPolicyPostgresqlMapOutput) ToBackupPolicyPostgresqlMapOutput

func (o BackupPolicyPostgresqlMapOutput) ToBackupPolicyPostgresqlMapOutput() BackupPolicyPostgresqlMapOutput

func (BackupPolicyPostgresqlMapOutput) ToBackupPolicyPostgresqlMapOutputWithContext

func (o BackupPolicyPostgresqlMapOutput) ToBackupPolicyPostgresqlMapOutputWithContext(ctx context.Context) BackupPolicyPostgresqlMapOutput

type BackupPolicyPostgresqlOutput

type BackupPolicyPostgresqlOutput struct{ *pulumi.OutputState }

func (BackupPolicyPostgresqlOutput) BackupRepeatingTimeIntervals added in v5.5.0

func (o BackupPolicyPostgresqlOutput) BackupRepeatingTimeIntervals() pulumi.StringArrayOutput

Specifies a list of repeating time interval. It supports weekly back. It should follow `ISO 8601` repeating time interval. Changing this forces a new Backup Policy PostgreSQL to be created.

func (BackupPolicyPostgresqlOutput) DefaultRetentionDuration added in v5.5.0

func (o BackupPolicyPostgresqlOutput) DefaultRetentionDuration() pulumi.StringOutput

The duration of default retention rule. It should follow `ISO 8601` duration format. Changing this forces a new Backup Policy PostgreSQL to be created.

func (BackupPolicyPostgresqlOutput) ElementType

func (BackupPolicyPostgresqlOutput) Name added in v5.5.0

The name which should be used for this Backup Policy PostgreSQL. Changing this forces a new Backup Policy PostgreSQL to be created.

func (BackupPolicyPostgresqlOutput) ResourceGroupName added in v5.5.0

func (o BackupPolicyPostgresqlOutput) ResourceGroupName() pulumi.StringOutput

The name of the Resource Group where the Backup Policy PostgreSQL should exist. Changing this forces a new Backup Policy PostgreSQL to be created.

func (BackupPolicyPostgresqlOutput) RetentionRules added in v5.5.0

One or more `retentionRule` blocks as defined below. Changing this forces a new Backup Policy PostgreSQL to be created.

func (BackupPolicyPostgresqlOutput) ToBackupPolicyPostgresqlOutput

func (o BackupPolicyPostgresqlOutput) ToBackupPolicyPostgresqlOutput() BackupPolicyPostgresqlOutput

func (BackupPolicyPostgresqlOutput) ToBackupPolicyPostgresqlOutputWithContext

func (o BackupPolicyPostgresqlOutput) ToBackupPolicyPostgresqlOutputWithContext(ctx context.Context) BackupPolicyPostgresqlOutput

func (BackupPolicyPostgresqlOutput) VaultName added in v5.5.0

The name of the Backup Vault where the Backup Policy PostgreSQL should exist. Changing this forces a new Backup Policy PostgreSQL to be created.

type BackupPolicyPostgresqlRetentionRule

type BackupPolicyPostgresqlRetentionRule struct {
	// A `criteria` block as defined below. Changing this forces a new Backup Policy PostgreSQL to be created.
	Criteria BackupPolicyPostgresqlRetentionRuleCriteria `pulumi:"criteria"`
	// Duration after which the backup is deleted. It should follow `ISO 8601` duration format. Changing this forces a new Backup Policy PostgreSQL to be created.
	Duration string `pulumi:"duration"`
	// The name which should be used for this retention rule. Changing this forces a new Backup Policy PostgreSQL to be created.
	Name string `pulumi:"name"`
	// Specifies the priority of the rule. The priority number must be unique for each rule. The lower the priority number, the higher the priority of the rule. Changing this forces a new Backup Policy PostgreSQL to be created.
	Priority int `pulumi:"priority"`
}

type BackupPolicyPostgresqlRetentionRuleArgs

type BackupPolicyPostgresqlRetentionRuleArgs struct {
	// A `criteria` block as defined below. Changing this forces a new Backup Policy PostgreSQL to be created.
	Criteria BackupPolicyPostgresqlRetentionRuleCriteriaInput `pulumi:"criteria"`
	// Duration after which the backup is deleted. It should follow `ISO 8601` duration format. Changing this forces a new Backup Policy PostgreSQL to be created.
	Duration pulumi.StringInput `pulumi:"duration"`
	// The name which should be used for this retention rule. Changing this forces a new Backup Policy PostgreSQL to be created.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the priority of the rule. The priority number must be unique for each rule. The lower the priority number, the higher the priority of the rule. Changing this forces a new Backup Policy PostgreSQL to be created.
	Priority pulumi.IntInput `pulumi:"priority"`
}

func (BackupPolicyPostgresqlRetentionRuleArgs) ElementType

func (BackupPolicyPostgresqlRetentionRuleArgs) ToBackupPolicyPostgresqlRetentionRuleOutput

func (i BackupPolicyPostgresqlRetentionRuleArgs) ToBackupPolicyPostgresqlRetentionRuleOutput() BackupPolicyPostgresqlRetentionRuleOutput

func (BackupPolicyPostgresqlRetentionRuleArgs) ToBackupPolicyPostgresqlRetentionRuleOutputWithContext

func (i BackupPolicyPostgresqlRetentionRuleArgs) ToBackupPolicyPostgresqlRetentionRuleOutputWithContext(ctx context.Context) BackupPolicyPostgresqlRetentionRuleOutput

type BackupPolicyPostgresqlRetentionRuleArray

type BackupPolicyPostgresqlRetentionRuleArray []BackupPolicyPostgresqlRetentionRuleInput

func (BackupPolicyPostgresqlRetentionRuleArray) ElementType

func (BackupPolicyPostgresqlRetentionRuleArray) ToBackupPolicyPostgresqlRetentionRuleArrayOutput

func (i BackupPolicyPostgresqlRetentionRuleArray) ToBackupPolicyPostgresqlRetentionRuleArrayOutput() BackupPolicyPostgresqlRetentionRuleArrayOutput

func (BackupPolicyPostgresqlRetentionRuleArray) ToBackupPolicyPostgresqlRetentionRuleArrayOutputWithContext

func (i BackupPolicyPostgresqlRetentionRuleArray) ToBackupPolicyPostgresqlRetentionRuleArrayOutputWithContext(ctx context.Context) BackupPolicyPostgresqlRetentionRuleArrayOutput

type BackupPolicyPostgresqlRetentionRuleArrayInput

type BackupPolicyPostgresqlRetentionRuleArrayInput interface {
	pulumi.Input

	ToBackupPolicyPostgresqlRetentionRuleArrayOutput() BackupPolicyPostgresqlRetentionRuleArrayOutput
	ToBackupPolicyPostgresqlRetentionRuleArrayOutputWithContext(context.Context) BackupPolicyPostgresqlRetentionRuleArrayOutput
}

BackupPolicyPostgresqlRetentionRuleArrayInput is an input type that accepts BackupPolicyPostgresqlRetentionRuleArray and BackupPolicyPostgresqlRetentionRuleArrayOutput values. You can construct a concrete instance of `BackupPolicyPostgresqlRetentionRuleArrayInput` via:

BackupPolicyPostgresqlRetentionRuleArray{ BackupPolicyPostgresqlRetentionRuleArgs{...} }

type BackupPolicyPostgresqlRetentionRuleArrayOutput

type BackupPolicyPostgresqlRetentionRuleArrayOutput struct{ *pulumi.OutputState }

func (BackupPolicyPostgresqlRetentionRuleArrayOutput) ElementType

func (BackupPolicyPostgresqlRetentionRuleArrayOutput) Index

func (BackupPolicyPostgresqlRetentionRuleArrayOutput) ToBackupPolicyPostgresqlRetentionRuleArrayOutput

func (o BackupPolicyPostgresqlRetentionRuleArrayOutput) ToBackupPolicyPostgresqlRetentionRuleArrayOutput() BackupPolicyPostgresqlRetentionRuleArrayOutput

func (BackupPolicyPostgresqlRetentionRuleArrayOutput) ToBackupPolicyPostgresqlRetentionRuleArrayOutputWithContext

func (o BackupPolicyPostgresqlRetentionRuleArrayOutput) ToBackupPolicyPostgresqlRetentionRuleArrayOutputWithContext(ctx context.Context) BackupPolicyPostgresqlRetentionRuleArrayOutput

type BackupPolicyPostgresqlRetentionRuleCriteria

type BackupPolicyPostgresqlRetentionRuleCriteria struct {
	// Possible values are `AllBackup`, `FirstOfDay`, `FirstOfWeek`, `FirstOfMonth` and `FirstOfYear`. These values mean the first successful backup of the day/week/month/year. Changing this forces a new Backup Policy PostgreSQL to be created.
	AbsoluteCriteria *string `pulumi:"absoluteCriteria"`
	// Possible values are `Monday`, `Tuesday`, `Thursday`, `Friday`, `Saturday` and `Sunday`. Changing this forces a new Backup Policy PostgreSQL to be created.
	DaysOfWeeks []string `pulumi:"daysOfWeeks"`
	// Possible values are `January`, `February`, `March`, `April`, `May`, `June`, `July`, `August`, `September`, `October`, `November` and `December`. Changing this forces a new Backup Policy PostgreSQL to be created.
	MonthsOfYears []string `pulumi:"monthsOfYears"`
	// Specifies a list of backup times for backup in the `RFC3339` format. Changing this forces a new Backup Policy PostgreSQL to be created.
	ScheduledBackupTimes []string `pulumi:"scheduledBackupTimes"`
	// Possible values are `First`, `Second`, `Third`, `Fourth` and `Last`. Changing this forces a new Backup Policy PostgreSQL to be created.
	WeeksOfMonths []string `pulumi:"weeksOfMonths"`
}

type BackupPolicyPostgresqlRetentionRuleCriteriaArgs

type BackupPolicyPostgresqlRetentionRuleCriteriaArgs struct {
	// Possible values are `AllBackup`, `FirstOfDay`, `FirstOfWeek`, `FirstOfMonth` and `FirstOfYear`. These values mean the first successful backup of the day/week/month/year. Changing this forces a new Backup Policy PostgreSQL to be created.
	AbsoluteCriteria pulumi.StringPtrInput `pulumi:"absoluteCriteria"`
	// Possible values are `Monday`, `Tuesday`, `Thursday`, `Friday`, `Saturday` and `Sunday`. Changing this forces a new Backup Policy PostgreSQL to be created.
	DaysOfWeeks pulumi.StringArrayInput `pulumi:"daysOfWeeks"`
	// Possible values are `January`, `February`, `March`, `April`, `May`, `June`, `July`, `August`, `September`, `October`, `November` and `December`. Changing this forces a new Backup Policy PostgreSQL to be created.
	MonthsOfYears pulumi.StringArrayInput `pulumi:"monthsOfYears"`
	// Specifies a list of backup times for backup in the `RFC3339` format. Changing this forces a new Backup Policy PostgreSQL to be created.
	ScheduledBackupTimes pulumi.StringArrayInput `pulumi:"scheduledBackupTimes"`
	// Possible values are `First`, `Second`, `Third`, `Fourth` and `Last`. Changing this forces a new Backup Policy PostgreSQL to be created.
	WeeksOfMonths pulumi.StringArrayInput `pulumi:"weeksOfMonths"`
}

func (BackupPolicyPostgresqlRetentionRuleCriteriaArgs) ElementType

func (BackupPolicyPostgresqlRetentionRuleCriteriaArgs) ToBackupPolicyPostgresqlRetentionRuleCriteriaOutput

func (i BackupPolicyPostgresqlRetentionRuleCriteriaArgs) ToBackupPolicyPostgresqlRetentionRuleCriteriaOutput() BackupPolicyPostgresqlRetentionRuleCriteriaOutput

func (BackupPolicyPostgresqlRetentionRuleCriteriaArgs) ToBackupPolicyPostgresqlRetentionRuleCriteriaOutputWithContext

func (i BackupPolicyPostgresqlRetentionRuleCriteriaArgs) ToBackupPolicyPostgresqlRetentionRuleCriteriaOutputWithContext(ctx context.Context) BackupPolicyPostgresqlRetentionRuleCriteriaOutput

type BackupPolicyPostgresqlRetentionRuleCriteriaInput

type BackupPolicyPostgresqlRetentionRuleCriteriaInput interface {
	pulumi.Input

	ToBackupPolicyPostgresqlRetentionRuleCriteriaOutput() BackupPolicyPostgresqlRetentionRuleCriteriaOutput
	ToBackupPolicyPostgresqlRetentionRuleCriteriaOutputWithContext(context.Context) BackupPolicyPostgresqlRetentionRuleCriteriaOutput
}

BackupPolicyPostgresqlRetentionRuleCriteriaInput is an input type that accepts BackupPolicyPostgresqlRetentionRuleCriteriaArgs and BackupPolicyPostgresqlRetentionRuleCriteriaOutput values. You can construct a concrete instance of `BackupPolicyPostgresqlRetentionRuleCriteriaInput` via:

BackupPolicyPostgresqlRetentionRuleCriteriaArgs{...}

type BackupPolicyPostgresqlRetentionRuleCriteriaOutput

type BackupPolicyPostgresqlRetentionRuleCriteriaOutput struct{ *pulumi.OutputState }

func (BackupPolicyPostgresqlRetentionRuleCriteriaOutput) AbsoluteCriteria

Possible values are `AllBackup`, `FirstOfDay`, `FirstOfWeek`, `FirstOfMonth` and `FirstOfYear`. These values mean the first successful backup of the day/week/month/year. Changing this forces a new Backup Policy PostgreSQL to be created.

func (BackupPolicyPostgresqlRetentionRuleCriteriaOutput) DaysOfWeeks

Possible values are `Monday`, `Tuesday`, `Thursday`, `Friday`, `Saturday` and `Sunday`. Changing this forces a new Backup Policy PostgreSQL to be created.

func (BackupPolicyPostgresqlRetentionRuleCriteriaOutput) ElementType

func (BackupPolicyPostgresqlRetentionRuleCriteriaOutput) MonthsOfYears

Possible values are `January`, `February`, `March`, `April`, `May`, `June`, `July`, `August`, `September`, `October`, `November` and `December`. Changing this forces a new Backup Policy PostgreSQL to be created.

func (BackupPolicyPostgresqlRetentionRuleCriteriaOutput) ScheduledBackupTimes

Specifies a list of backup times for backup in the `RFC3339` format. Changing this forces a new Backup Policy PostgreSQL to be created.

func (BackupPolicyPostgresqlRetentionRuleCriteriaOutput) ToBackupPolicyPostgresqlRetentionRuleCriteriaOutput

func (o BackupPolicyPostgresqlRetentionRuleCriteriaOutput) ToBackupPolicyPostgresqlRetentionRuleCriteriaOutput() BackupPolicyPostgresqlRetentionRuleCriteriaOutput

func (BackupPolicyPostgresqlRetentionRuleCriteriaOutput) ToBackupPolicyPostgresqlRetentionRuleCriteriaOutputWithContext

func (o BackupPolicyPostgresqlRetentionRuleCriteriaOutput) ToBackupPolicyPostgresqlRetentionRuleCriteriaOutputWithContext(ctx context.Context) BackupPolicyPostgresqlRetentionRuleCriteriaOutput

func (BackupPolicyPostgresqlRetentionRuleCriteriaOutput) WeeksOfMonths

Possible values are `First`, `Second`, `Third`, `Fourth` and `Last`. Changing this forces a new Backup Policy PostgreSQL to be created.

type BackupPolicyPostgresqlRetentionRuleInput

type BackupPolicyPostgresqlRetentionRuleInput interface {
	pulumi.Input

	ToBackupPolicyPostgresqlRetentionRuleOutput() BackupPolicyPostgresqlRetentionRuleOutput
	ToBackupPolicyPostgresqlRetentionRuleOutputWithContext(context.Context) BackupPolicyPostgresqlRetentionRuleOutput
}

BackupPolicyPostgresqlRetentionRuleInput is an input type that accepts BackupPolicyPostgresqlRetentionRuleArgs and BackupPolicyPostgresqlRetentionRuleOutput values. You can construct a concrete instance of `BackupPolicyPostgresqlRetentionRuleInput` via:

BackupPolicyPostgresqlRetentionRuleArgs{...}

type BackupPolicyPostgresqlRetentionRuleOutput

type BackupPolicyPostgresqlRetentionRuleOutput struct{ *pulumi.OutputState }

func (BackupPolicyPostgresqlRetentionRuleOutput) Criteria

A `criteria` block as defined below. Changing this forces a new Backup Policy PostgreSQL to be created.

func (BackupPolicyPostgresqlRetentionRuleOutput) Duration

Duration after which the backup is deleted. It should follow `ISO 8601` duration format. Changing this forces a new Backup Policy PostgreSQL to be created.

func (BackupPolicyPostgresqlRetentionRuleOutput) ElementType

func (BackupPolicyPostgresqlRetentionRuleOutput) Name

The name which should be used for this retention rule. Changing this forces a new Backup Policy PostgreSQL to be created.

func (BackupPolicyPostgresqlRetentionRuleOutput) Priority

Specifies the priority of the rule. The priority number must be unique for each rule. The lower the priority number, the higher the priority of the rule. Changing this forces a new Backup Policy PostgreSQL to be created.

func (BackupPolicyPostgresqlRetentionRuleOutput) ToBackupPolicyPostgresqlRetentionRuleOutput

func (o BackupPolicyPostgresqlRetentionRuleOutput) ToBackupPolicyPostgresqlRetentionRuleOutput() BackupPolicyPostgresqlRetentionRuleOutput

func (BackupPolicyPostgresqlRetentionRuleOutput) ToBackupPolicyPostgresqlRetentionRuleOutputWithContext

func (o BackupPolicyPostgresqlRetentionRuleOutput) ToBackupPolicyPostgresqlRetentionRuleOutputWithContext(ctx context.Context) BackupPolicyPostgresqlRetentionRuleOutput

type BackupPolicyPostgresqlState

type BackupPolicyPostgresqlState struct {
	// Specifies a list of repeating time interval. It supports weekly back. It should follow `ISO 8601` repeating time interval. Changing this forces a new Backup Policy PostgreSQL to be created.
	BackupRepeatingTimeIntervals pulumi.StringArrayInput
	// The duration of default retention rule. It should follow `ISO 8601` duration format. Changing this forces a new Backup Policy PostgreSQL to be created.
	DefaultRetentionDuration pulumi.StringPtrInput
	// The name which should be used for this Backup Policy PostgreSQL. Changing this forces a new Backup Policy PostgreSQL to be created.
	Name pulumi.StringPtrInput
	// The name of the Resource Group where the Backup Policy PostgreSQL should exist. Changing this forces a new Backup Policy PostgreSQL to be created.
	ResourceGroupName pulumi.StringPtrInput
	// One or more `retentionRule` blocks as defined below. Changing this forces a new Backup Policy PostgreSQL to be created.
	RetentionRules BackupPolicyPostgresqlRetentionRuleArrayInput
	// The name of the Backup Vault where the Backup Policy PostgreSQL should exist. Changing this forces a new Backup Policy PostgreSQL to be created.
	VaultName pulumi.StringPtrInput
}

func (BackupPolicyPostgresqlState) ElementType

type BackupVault

type BackupVault struct {
	pulumi.CustomResourceState

	// Specifies the type of the data store. Possible values are `ArchiveStore`, `SnapshotStore` and `VaultStore`. Changing this forces a new resource to be created.
	DatastoreType pulumi.StringOutput `pulumi:"datastoreType"`
	// An `identity` block as defined below.
	Identity BackupVaultIdentityPtrOutput `pulumi:"identity"`
	// The Azure Region where the Backup Vault should exist. Changing this forces a new Backup Vault to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Specifies the name of the Backup Vault. Changing this forces a new Backup Vault to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the backup storage redundancy. Possible values are `GeoRedundant` and `LocallyRedundant`. Changing this forces a new Backup Vault to be created.
	Redundancy pulumi.StringOutput `pulumi:"redundancy"`
	// The name of the Resource Group where the Backup Vault should exist. Changing this forces a new Backup Vault to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags which should be assigned to the Backup Vault.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Manages a Backup Vault.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/dataprotection"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		_, err = dataprotection.NewBackupVault(ctx, "exampleBackupVault", &dataprotection.BackupVaultArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
			DatastoreType:     pulumi.String("VaultStore"),
			Redundancy:        pulumi.String("LocallyRedundant"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Backup Vaults can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:dataprotection/backupVault:BackupVault example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.DataProtection/backupVaults/vault1

```

func GetBackupVault

func GetBackupVault(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BackupVaultState, opts ...pulumi.ResourceOption) (*BackupVault, error)

GetBackupVault gets an existing BackupVault resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewBackupVault

func NewBackupVault(ctx *pulumi.Context,
	name string, args *BackupVaultArgs, opts ...pulumi.ResourceOption) (*BackupVault, error)

NewBackupVault registers a new resource with the given unique name, arguments, and options.

func (*BackupVault) ElementType

func (*BackupVault) ElementType() reflect.Type

func (*BackupVault) ToBackupVaultOutput

func (i *BackupVault) ToBackupVaultOutput() BackupVaultOutput

func (*BackupVault) ToBackupVaultOutputWithContext

func (i *BackupVault) ToBackupVaultOutputWithContext(ctx context.Context) BackupVaultOutput

type BackupVaultArgs

type BackupVaultArgs struct {
	// Specifies the type of the data store. Possible values are `ArchiveStore`, `SnapshotStore` and `VaultStore`. Changing this forces a new resource to be created.
	DatastoreType pulumi.StringInput
	// An `identity` block as defined below.
	Identity BackupVaultIdentityPtrInput
	// The Azure Region where the Backup Vault should exist. Changing this forces a new Backup Vault to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of the Backup Vault. Changing this forces a new Backup Vault to be created.
	Name pulumi.StringPtrInput
	// Specifies the backup storage redundancy. Possible values are `GeoRedundant` and `LocallyRedundant`. Changing this forces a new Backup Vault to be created.
	Redundancy pulumi.StringInput
	// The name of the Resource Group where the Backup Vault should exist. Changing this forces a new Backup Vault to be created.
	ResourceGroupName pulumi.StringInput
	// A mapping of tags which should be assigned to the Backup Vault.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a BackupVault resource.

func (BackupVaultArgs) ElementType

func (BackupVaultArgs) ElementType() reflect.Type

type BackupVaultArray

type BackupVaultArray []BackupVaultInput

func (BackupVaultArray) ElementType

func (BackupVaultArray) ElementType() reflect.Type

func (BackupVaultArray) ToBackupVaultArrayOutput

func (i BackupVaultArray) ToBackupVaultArrayOutput() BackupVaultArrayOutput

func (BackupVaultArray) ToBackupVaultArrayOutputWithContext

func (i BackupVaultArray) ToBackupVaultArrayOutputWithContext(ctx context.Context) BackupVaultArrayOutput

type BackupVaultArrayInput

type BackupVaultArrayInput interface {
	pulumi.Input

	ToBackupVaultArrayOutput() BackupVaultArrayOutput
	ToBackupVaultArrayOutputWithContext(context.Context) BackupVaultArrayOutput
}

BackupVaultArrayInput is an input type that accepts BackupVaultArray and BackupVaultArrayOutput values. You can construct a concrete instance of `BackupVaultArrayInput` via:

BackupVaultArray{ BackupVaultArgs{...} }

type BackupVaultArrayOutput

type BackupVaultArrayOutput struct{ *pulumi.OutputState }

func (BackupVaultArrayOutput) ElementType

func (BackupVaultArrayOutput) ElementType() reflect.Type

func (BackupVaultArrayOutput) Index

func (BackupVaultArrayOutput) ToBackupVaultArrayOutput

func (o BackupVaultArrayOutput) ToBackupVaultArrayOutput() BackupVaultArrayOutput

func (BackupVaultArrayOutput) ToBackupVaultArrayOutputWithContext

func (o BackupVaultArrayOutput) ToBackupVaultArrayOutputWithContext(ctx context.Context) BackupVaultArrayOutput

type BackupVaultIdentity

type BackupVaultIdentity struct {
	// The Principal ID for the Service Principal associated with the Identity of this Backup Vault.
	PrincipalId *string `pulumi:"principalId"`
	// The Tenant ID for the Service Principal associated with the Identity of this Backup Vault.
	TenantId *string `pulumi:"tenantId"`
	// Specifies the type of Managed Service Identity that should be configured on this Backup Vault. The only possible value is `SystemAssigned`.
	Type string `pulumi:"type"`
}

type BackupVaultIdentityArgs

type BackupVaultIdentityArgs struct {
	// The Principal ID for the Service Principal associated with the Identity of this Backup Vault.
	PrincipalId pulumi.StringPtrInput `pulumi:"principalId"`
	// The Tenant ID for the Service Principal associated with the Identity of this Backup Vault.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
	// Specifies the type of Managed Service Identity that should be configured on this Backup Vault. The only possible value is `SystemAssigned`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (BackupVaultIdentityArgs) ElementType

func (BackupVaultIdentityArgs) ElementType() reflect.Type

func (BackupVaultIdentityArgs) ToBackupVaultIdentityOutput

func (i BackupVaultIdentityArgs) ToBackupVaultIdentityOutput() BackupVaultIdentityOutput

func (BackupVaultIdentityArgs) ToBackupVaultIdentityOutputWithContext

func (i BackupVaultIdentityArgs) ToBackupVaultIdentityOutputWithContext(ctx context.Context) BackupVaultIdentityOutput

func (BackupVaultIdentityArgs) ToBackupVaultIdentityPtrOutput

func (i BackupVaultIdentityArgs) ToBackupVaultIdentityPtrOutput() BackupVaultIdentityPtrOutput

func (BackupVaultIdentityArgs) ToBackupVaultIdentityPtrOutputWithContext

func (i BackupVaultIdentityArgs) ToBackupVaultIdentityPtrOutputWithContext(ctx context.Context) BackupVaultIdentityPtrOutput

type BackupVaultIdentityInput

type BackupVaultIdentityInput interface {
	pulumi.Input

	ToBackupVaultIdentityOutput() BackupVaultIdentityOutput
	ToBackupVaultIdentityOutputWithContext(context.Context) BackupVaultIdentityOutput
}

BackupVaultIdentityInput is an input type that accepts BackupVaultIdentityArgs and BackupVaultIdentityOutput values. You can construct a concrete instance of `BackupVaultIdentityInput` via:

BackupVaultIdentityArgs{...}

type BackupVaultIdentityOutput

type BackupVaultIdentityOutput struct{ *pulumi.OutputState }

func (BackupVaultIdentityOutput) ElementType

func (BackupVaultIdentityOutput) ElementType() reflect.Type

func (BackupVaultIdentityOutput) PrincipalId

The Principal ID for the Service Principal associated with the Identity of this Backup Vault.

func (BackupVaultIdentityOutput) TenantId

The Tenant ID for the Service Principal associated with the Identity of this Backup Vault.

func (BackupVaultIdentityOutput) ToBackupVaultIdentityOutput

func (o BackupVaultIdentityOutput) ToBackupVaultIdentityOutput() BackupVaultIdentityOutput

func (BackupVaultIdentityOutput) ToBackupVaultIdentityOutputWithContext

func (o BackupVaultIdentityOutput) ToBackupVaultIdentityOutputWithContext(ctx context.Context) BackupVaultIdentityOutput

func (BackupVaultIdentityOutput) ToBackupVaultIdentityPtrOutput

func (o BackupVaultIdentityOutput) ToBackupVaultIdentityPtrOutput() BackupVaultIdentityPtrOutput

func (BackupVaultIdentityOutput) ToBackupVaultIdentityPtrOutputWithContext

func (o BackupVaultIdentityOutput) ToBackupVaultIdentityPtrOutputWithContext(ctx context.Context) BackupVaultIdentityPtrOutput

func (BackupVaultIdentityOutput) Type

Specifies the type of Managed Service Identity that should be configured on this Backup Vault. The only possible value is `SystemAssigned`.

type BackupVaultIdentityPtrInput

type BackupVaultIdentityPtrInput interface {
	pulumi.Input

	ToBackupVaultIdentityPtrOutput() BackupVaultIdentityPtrOutput
	ToBackupVaultIdentityPtrOutputWithContext(context.Context) BackupVaultIdentityPtrOutput
}

BackupVaultIdentityPtrInput is an input type that accepts BackupVaultIdentityArgs, BackupVaultIdentityPtr and BackupVaultIdentityPtrOutput values. You can construct a concrete instance of `BackupVaultIdentityPtrInput` via:

        BackupVaultIdentityArgs{...}

or:

        nil

type BackupVaultIdentityPtrOutput

type BackupVaultIdentityPtrOutput struct{ *pulumi.OutputState }

func (BackupVaultIdentityPtrOutput) Elem

func (BackupVaultIdentityPtrOutput) ElementType

func (BackupVaultIdentityPtrOutput) PrincipalId

The Principal ID for the Service Principal associated with the Identity of this Backup Vault.

func (BackupVaultIdentityPtrOutput) TenantId

The Tenant ID for the Service Principal associated with the Identity of this Backup Vault.

func (BackupVaultIdentityPtrOutput) ToBackupVaultIdentityPtrOutput

func (o BackupVaultIdentityPtrOutput) ToBackupVaultIdentityPtrOutput() BackupVaultIdentityPtrOutput

func (BackupVaultIdentityPtrOutput) ToBackupVaultIdentityPtrOutputWithContext

func (o BackupVaultIdentityPtrOutput) ToBackupVaultIdentityPtrOutputWithContext(ctx context.Context) BackupVaultIdentityPtrOutput

func (BackupVaultIdentityPtrOutput) Type

Specifies the type of Managed Service Identity that should be configured on this Backup Vault. The only possible value is `SystemAssigned`.

type BackupVaultInput

type BackupVaultInput interface {
	pulumi.Input

	ToBackupVaultOutput() BackupVaultOutput
	ToBackupVaultOutputWithContext(ctx context.Context) BackupVaultOutput
}

type BackupVaultMap

type BackupVaultMap map[string]BackupVaultInput

func (BackupVaultMap) ElementType

func (BackupVaultMap) ElementType() reflect.Type

func (BackupVaultMap) ToBackupVaultMapOutput

func (i BackupVaultMap) ToBackupVaultMapOutput() BackupVaultMapOutput

func (BackupVaultMap) ToBackupVaultMapOutputWithContext

func (i BackupVaultMap) ToBackupVaultMapOutputWithContext(ctx context.Context) BackupVaultMapOutput

type BackupVaultMapInput

type BackupVaultMapInput interface {
	pulumi.Input

	ToBackupVaultMapOutput() BackupVaultMapOutput
	ToBackupVaultMapOutputWithContext(context.Context) BackupVaultMapOutput
}

BackupVaultMapInput is an input type that accepts BackupVaultMap and BackupVaultMapOutput values. You can construct a concrete instance of `BackupVaultMapInput` via:

BackupVaultMap{ "key": BackupVaultArgs{...} }

type BackupVaultMapOutput

type BackupVaultMapOutput struct{ *pulumi.OutputState }

func (BackupVaultMapOutput) ElementType

func (BackupVaultMapOutput) ElementType() reflect.Type

func (BackupVaultMapOutput) MapIndex

func (BackupVaultMapOutput) ToBackupVaultMapOutput

func (o BackupVaultMapOutput) ToBackupVaultMapOutput() BackupVaultMapOutput

func (BackupVaultMapOutput) ToBackupVaultMapOutputWithContext

func (o BackupVaultMapOutput) ToBackupVaultMapOutputWithContext(ctx context.Context) BackupVaultMapOutput

type BackupVaultOutput

type BackupVaultOutput struct{ *pulumi.OutputState }

func (BackupVaultOutput) DatastoreType added in v5.5.0

func (o BackupVaultOutput) DatastoreType() pulumi.StringOutput

Specifies the type of the data store. Possible values are `ArchiveStore`, `SnapshotStore` and `VaultStore`. Changing this forces a new resource to be created.

func (BackupVaultOutput) ElementType

func (BackupVaultOutput) ElementType() reflect.Type

func (BackupVaultOutput) Identity added in v5.5.0

An `identity` block as defined below.

func (BackupVaultOutput) Location added in v5.5.0

func (o BackupVaultOutput) Location() pulumi.StringOutput

The Azure Region where the Backup Vault should exist. Changing this forces a new Backup Vault to be created.

func (BackupVaultOutput) Name added in v5.5.0

Specifies the name of the Backup Vault. Changing this forces a new Backup Vault to be created.

func (BackupVaultOutput) Redundancy added in v5.5.0

func (o BackupVaultOutput) Redundancy() pulumi.StringOutput

Specifies the backup storage redundancy. Possible values are `GeoRedundant` and `LocallyRedundant`. Changing this forces a new Backup Vault to be created.

func (BackupVaultOutput) ResourceGroupName added in v5.5.0

func (o BackupVaultOutput) ResourceGroupName() pulumi.StringOutput

The name of the Resource Group where the Backup Vault should exist. Changing this forces a new Backup Vault to be created.

func (BackupVaultOutput) Tags added in v5.5.0

A mapping of tags which should be assigned to the Backup Vault.

func (BackupVaultOutput) ToBackupVaultOutput

func (o BackupVaultOutput) ToBackupVaultOutput() BackupVaultOutput

func (BackupVaultOutput) ToBackupVaultOutputWithContext

func (o BackupVaultOutput) ToBackupVaultOutputWithContext(ctx context.Context) BackupVaultOutput

type BackupVaultState

type BackupVaultState struct {
	// Specifies the type of the data store. Possible values are `ArchiveStore`, `SnapshotStore` and `VaultStore`. Changing this forces a new resource to be created.
	DatastoreType pulumi.StringPtrInput
	// An `identity` block as defined below.
	Identity BackupVaultIdentityPtrInput
	// The Azure Region where the Backup Vault should exist. Changing this forces a new Backup Vault to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of the Backup Vault. Changing this forces a new Backup Vault to be created.
	Name pulumi.StringPtrInput
	// Specifies the backup storage redundancy. Possible values are `GeoRedundant` and `LocallyRedundant`. Changing this forces a new Backup Vault to be created.
	Redundancy pulumi.StringPtrInput
	// The name of the Resource Group where the Backup Vault should exist. Changing this forces a new Backup Vault to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A mapping of tags which should be assigned to the Backup Vault.
	Tags pulumi.StringMapInput
}

func (BackupVaultState) ElementType

func (BackupVaultState) ElementType() reflect.Type

type GetBackupVaultIdentity

type GetBackupVaultIdentity struct {
	// The Principal ID of the System Assigned Managed Service Identity that is configured on this Backup Vault.
	PrincipalId string `pulumi:"principalId"`
	// The Tenant ID of the System Assigned Managed Service Identity that is configured on this Backup Vault.
	TenantId string `pulumi:"tenantId"`
	// The type of Managed Service Identity that is configured on this Backup Vault.
	Type string `pulumi:"type"`
}

type GetBackupVaultIdentityArgs

type GetBackupVaultIdentityArgs struct {
	// The Principal ID of the System Assigned Managed Service Identity that is configured on this Backup Vault.
	PrincipalId pulumi.StringInput `pulumi:"principalId"`
	// The Tenant ID of the System Assigned Managed Service Identity that is configured on this Backup Vault.
	TenantId pulumi.StringInput `pulumi:"tenantId"`
	// The type of Managed Service Identity that is configured on this Backup Vault.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetBackupVaultIdentityArgs) ElementType

func (GetBackupVaultIdentityArgs) ElementType() reflect.Type

func (GetBackupVaultIdentityArgs) ToGetBackupVaultIdentityOutput

func (i GetBackupVaultIdentityArgs) ToGetBackupVaultIdentityOutput() GetBackupVaultIdentityOutput

func (GetBackupVaultIdentityArgs) ToGetBackupVaultIdentityOutputWithContext

func (i GetBackupVaultIdentityArgs) ToGetBackupVaultIdentityOutputWithContext(ctx context.Context) GetBackupVaultIdentityOutput

type GetBackupVaultIdentityArray

type GetBackupVaultIdentityArray []GetBackupVaultIdentityInput

func (GetBackupVaultIdentityArray) ElementType

func (GetBackupVaultIdentityArray) ToGetBackupVaultIdentityArrayOutput

func (i GetBackupVaultIdentityArray) ToGetBackupVaultIdentityArrayOutput() GetBackupVaultIdentityArrayOutput

func (GetBackupVaultIdentityArray) ToGetBackupVaultIdentityArrayOutputWithContext

func (i GetBackupVaultIdentityArray) ToGetBackupVaultIdentityArrayOutputWithContext(ctx context.Context) GetBackupVaultIdentityArrayOutput

type GetBackupVaultIdentityArrayInput

type GetBackupVaultIdentityArrayInput interface {
	pulumi.Input

	ToGetBackupVaultIdentityArrayOutput() GetBackupVaultIdentityArrayOutput
	ToGetBackupVaultIdentityArrayOutputWithContext(context.Context) GetBackupVaultIdentityArrayOutput
}

GetBackupVaultIdentityArrayInput is an input type that accepts GetBackupVaultIdentityArray and GetBackupVaultIdentityArrayOutput values. You can construct a concrete instance of `GetBackupVaultIdentityArrayInput` via:

GetBackupVaultIdentityArray{ GetBackupVaultIdentityArgs{...} }

type GetBackupVaultIdentityArrayOutput

type GetBackupVaultIdentityArrayOutput struct{ *pulumi.OutputState }

func (GetBackupVaultIdentityArrayOutput) ElementType

func (GetBackupVaultIdentityArrayOutput) Index

func (GetBackupVaultIdentityArrayOutput) ToGetBackupVaultIdentityArrayOutput

func (o GetBackupVaultIdentityArrayOutput) ToGetBackupVaultIdentityArrayOutput() GetBackupVaultIdentityArrayOutput

func (GetBackupVaultIdentityArrayOutput) ToGetBackupVaultIdentityArrayOutputWithContext

func (o GetBackupVaultIdentityArrayOutput) ToGetBackupVaultIdentityArrayOutputWithContext(ctx context.Context) GetBackupVaultIdentityArrayOutput

type GetBackupVaultIdentityInput

type GetBackupVaultIdentityInput interface {
	pulumi.Input

	ToGetBackupVaultIdentityOutput() GetBackupVaultIdentityOutput
	ToGetBackupVaultIdentityOutputWithContext(context.Context) GetBackupVaultIdentityOutput
}

GetBackupVaultIdentityInput is an input type that accepts GetBackupVaultIdentityArgs and GetBackupVaultIdentityOutput values. You can construct a concrete instance of `GetBackupVaultIdentityInput` via:

GetBackupVaultIdentityArgs{...}

type GetBackupVaultIdentityOutput

type GetBackupVaultIdentityOutput struct{ *pulumi.OutputState }

func (GetBackupVaultIdentityOutput) ElementType

func (GetBackupVaultIdentityOutput) PrincipalId

The Principal ID of the System Assigned Managed Service Identity that is configured on this Backup Vault.

func (GetBackupVaultIdentityOutput) TenantId

The Tenant ID of the System Assigned Managed Service Identity that is configured on this Backup Vault.

func (GetBackupVaultIdentityOutput) ToGetBackupVaultIdentityOutput

func (o GetBackupVaultIdentityOutput) ToGetBackupVaultIdentityOutput() GetBackupVaultIdentityOutput

func (GetBackupVaultIdentityOutput) ToGetBackupVaultIdentityOutputWithContext

func (o GetBackupVaultIdentityOutput) ToGetBackupVaultIdentityOutputWithContext(ctx context.Context) GetBackupVaultIdentityOutput

func (GetBackupVaultIdentityOutput) Type

The type of Managed Service Identity that is configured on this Backup Vault.

type LookupBackupVaultArgs

type LookupBackupVaultArgs struct {
	// Specifies the name of the Backup Vault.
	Name string `pulumi:"name"`
	// The name of the Resource Group where the Backup Vault exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getBackupVault.

type LookupBackupVaultOutputArgs

type LookupBackupVaultOutputArgs struct {
	// Specifies the name of the Backup Vault.
	Name pulumi.StringInput `pulumi:"name"`
	// The name of the Resource Group where the Backup Vault exists.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getBackupVault.

func (LookupBackupVaultOutputArgs) ElementType

type LookupBackupVaultResult

type LookupBackupVaultResult struct {
	// Specifies the type of the data store.
	DatastoreType string `pulumi:"datastoreType"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A `identity` block as defined below.
	Identities []GetBackupVaultIdentity `pulumi:"identities"`
	// The Azure Region where the Backup Vault exists.
	Location string `pulumi:"location"`
	Name     string `pulumi:"name"`
	// Specifies the backup storage redundancy.
	Redundancy        string `pulumi:"redundancy"`
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// A mapping of tags which are assigned to the Backup Vault.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getBackupVault.

func LookupBackupVault

func LookupBackupVault(ctx *pulumi.Context, args *LookupBackupVaultArgs, opts ...pulumi.InvokeOption) (*LookupBackupVaultResult, error)

Use this data source to access information about an existing Backup Vault.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/dataprotection"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := dataprotection.LookupBackupVault(ctx, &dataprotection.LookupBackupVaultArgs{
			Name:              "existing-backup-vault",
			ResourceGroupName: "existing-resource-group",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("azurermDataProtectionBackupVaultId", data.Azurerm_vpn_gateway.Example.Id)
		ctx.Export("azurermDataProtectionBackupVaultPrincipalId", example.Identities[0].PrincipalId)
		return nil
	})
}

```

type LookupBackupVaultResultOutput

type LookupBackupVaultResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getBackupVault.

func (LookupBackupVaultResultOutput) DatastoreType

Specifies the type of the data store.

func (LookupBackupVaultResultOutput) ElementType

func (LookupBackupVaultResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupBackupVaultResultOutput) Identities

A `identity` block as defined below.

func (LookupBackupVaultResultOutput) Location

The Azure Region where the Backup Vault exists.

func (LookupBackupVaultResultOutput) Name

func (LookupBackupVaultResultOutput) Redundancy

Specifies the backup storage redundancy.

func (LookupBackupVaultResultOutput) ResourceGroupName

func (o LookupBackupVaultResultOutput) ResourceGroupName() pulumi.StringOutput

func (LookupBackupVaultResultOutput) Tags

A mapping of tags which are assigned to the Backup Vault.

func (LookupBackupVaultResultOutput) ToLookupBackupVaultResultOutput

func (o LookupBackupVaultResultOutput) ToLookupBackupVaultResultOutput() LookupBackupVaultResultOutput

func (LookupBackupVaultResultOutput) ToLookupBackupVaultResultOutputWithContext

func (o LookupBackupVaultResultOutput) ToLookupBackupVaultResultOutputWithContext(ctx context.Context) LookupBackupVaultResultOutput

type ResourceGuard added in v5.12.0

type ResourceGuard struct {
	pulumi.CustomResourceState

	// The Azure Region where the Resource Guard should exist. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The name of the Resource Guard. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the Resource Group where the Resource Guard should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags which should be assigned to the Resource Guard.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A list of the critical operations which are not protected by this Resource Guard.
	VaultCriticalOperationExclusionLists pulumi.StringArrayOutput `pulumi:"vaultCriticalOperationExclusionLists"`
}

Manages a Resource Guard.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/dataprotection"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		_, err = dataprotection.NewResourceGuard(ctx, "exampleResourceGuard", &dataprotection.ResourceGuardArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Resource Guards can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:dataprotection/resourceGuard:ResourceGuard example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.DataProtection/resourceGuards/resourceGuard1

```

func GetResourceGuard added in v5.12.0

func GetResourceGuard(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResourceGuardState, opts ...pulumi.ResourceOption) (*ResourceGuard, error)

GetResourceGuard gets an existing ResourceGuard resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewResourceGuard added in v5.12.0

func NewResourceGuard(ctx *pulumi.Context,
	name string, args *ResourceGuardArgs, opts ...pulumi.ResourceOption) (*ResourceGuard, error)

NewResourceGuard registers a new resource with the given unique name, arguments, and options.

func (*ResourceGuard) ElementType added in v5.12.0

func (*ResourceGuard) ElementType() reflect.Type

func (*ResourceGuard) ToResourceGuardOutput added in v5.12.0

func (i *ResourceGuard) ToResourceGuardOutput() ResourceGuardOutput

func (*ResourceGuard) ToResourceGuardOutputWithContext added in v5.12.0

func (i *ResourceGuard) ToResourceGuardOutputWithContext(ctx context.Context) ResourceGuardOutput

type ResourceGuardArgs added in v5.12.0

type ResourceGuardArgs struct {
	// The Azure Region where the Resource Guard should exist. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The name of the Resource Guard. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the Resource Group where the Resource Guard should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A mapping of tags which should be assigned to the Resource Guard.
	Tags pulumi.StringMapInput
	// A list of the critical operations which are not protected by this Resource Guard.
	VaultCriticalOperationExclusionLists pulumi.StringArrayInput
}

The set of arguments for constructing a ResourceGuard resource.

func (ResourceGuardArgs) ElementType added in v5.12.0

func (ResourceGuardArgs) ElementType() reflect.Type

type ResourceGuardArray added in v5.12.0

type ResourceGuardArray []ResourceGuardInput

func (ResourceGuardArray) ElementType added in v5.12.0

func (ResourceGuardArray) ElementType() reflect.Type

func (ResourceGuardArray) ToResourceGuardArrayOutput added in v5.12.0

func (i ResourceGuardArray) ToResourceGuardArrayOutput() ResourceGuardArrayOutput

func (ResourceGuardArray) ToResourceGuardArrayOutputWithContext added in v5.12.0

func (i ResourceGuardArray) ToResourceGuardArrayOutputWithContext(ctx context.Context) ResourceGuardArrayOutput

type ResourceGuardArrayInput added in v5.12.0

type ResourceGuardArrayInput interface {
	pulumi.Input

	ToResourceGuardArrayOutput() ResourceGuardArrayOutput
	ToResourceGuardArrayOutputWithContext(context.Context) ResourceGuardArrayOutput
}

ResourceGuardArrayInput is an input type that accepts ResourceGuardArray and ResourceGuardArrayOutput values. You can construct a concrete instance of `ResourceGuardArrayInput` via:

ResourceGuardArray{ ResourceGuardArgs{...} }

type ResourceGuardArrayOutput added in v5.12.0

type ResourceGuardArrayOutput struct{ *pulumi.OutputState }

func (ResourceGuardArrayOutput) ElementType added in v5.12.0

func (ResourceGuardArrayOutput) ElementType() reflect.Type

func (ResourceGuardArrayOutput) Index added in v5.12.0

func (ResourceGuardArrayOutput) ToResourceGuardArrayOutput added in v5.12.0

func (o ResourceGuardArrayOutput) ToResourceGuardArrayOutput() ResourceGuardArrayOutput

func (ResourceGuardArrayOutput) ToResourceGuardArrayOutputWithContext added in v5.12.0

func (o ResourceGuardArrayOutput) ToResourceGuardArrayOutputWithContext(ctx context.Context) ResourceGuardArrayOutput

type ResourceGuardInput added in v5.12.0

type ResourceGuardInput interface {
	pulumi.Input

	ToResourceGuardOutput() ResourceGuardOutput
	ToResourceGuardOutputWithContext(ctx context.Context) ResourceGuardOutput
}

type ResourceGuardMap added in v5.12.0

type ResourceGuardMap map[string]ResourceGuardInput

func (ResourceGuardMap) ElementType added in v5.12.0

func (ResourceGuardMap) ElementType() reflect.Type

func (ResourceGuardMap) ToResourceGuardMapOutput added in v5.12.0

func (i ResourceGuardMap) ToResourceGuardMapOutput() ResourceGuardMapOutput

func (ResourceGuardMap) ToResourceGuardMapOutputWithContext added in v5.12.0

func (i ResourceGuardMap) ToResourceGuardMapOutputWithContext(ctx context.Context) ResourceGuardMapOutput

type ResourceGuardMapInput added in v5.12.0

type ResourceGuardMapInput interface {
	pulumi.Input

	ToResourceGuardMapOutput() ResourceGuardMapOutput
	ToResourceGuardMapOutputWithContext(context.Context) ResourceGuardMapOutput
}

ResourceGuardMapInput is an input type that accepts ResourceGuardMap and ResourceGuardMapOutput values. You can construct a concrete instance of `ResourceGuardMapInput` via:

ResourceGuardMap{ "key": ResourceGuardArgs{...} }

type ResourceGuardMapOutput added in v5.12.0

type ResourceGuardMapOutput struct{ *pulumi.OutputState }

func (ResourceGuardMapOutput) ElementType added in v5.12.0

func (ResourceGuardMapOutput) ElementType() reflect.Type

func (ResourceGuardMapOutput) MapIndex added in v5.12.0

func (ResourceGuardMapOutput) ToResourceGuardMapOutput added in v5.12.0

func (o ResourceGuardMapOutput) ToResourceGuardMapOutput() ResourceGuardMapOutput

func (ResourceGuardMapOutput) ToResourceGuardMapOutputWithContext added in v5.12.0

func (o ResourceGuardMapOutput) ToResourceGuardMapOutputWithContext(ctx context.Context) ResourceGuardMapOutput

type ResourceGuardOutput added in v5.12.0

type ResourceGuardOutput struct{ *pulumi.OutputState }

func (ResourceGuardOutput) ElementType added in v5.12.0

func (ResourceGuardOutput) ElementType() reflect.Type

func (ResourceGuardOutput) Location added in v5.12.0

The Azure Region where the Resource Guard should exist. Changing this forces a new resource to be created.

func (ResourceGuardOutput) Name added in v5.12.0

The name of the Resource Guard. Changing this forces a new resource to be created.

func (ResourceGuardOutput) ResourceGroupName added in v5.12.0

func (o ResourceGuardOutput) ResourceGroupName() pulumi.StringOutput

The name of the Resource Group where the Resource Guard should exist. Changing this forces a new resource to be created.

func (ResourceGuardOutput) Tags added in v5.12.0

A mapping of tags which should be assigned to the Resource Guard.

func (ResourceGuardOutput) ToResourceGuardOutput added in v5.12.0

func (o ResourceGuardOutput) ToResourceGuardOutput() ResourceGuardOutput

func (ResourceGuardOutput) ToResourceGuardOutputWithContext added in v5.12.0

func (o ResourceGuardOutput) ToResourceGuardOutputWithContext(ctx context.Context) ResourceGuardOutput

func (ResourceGuardOutput) VaultCriticalOperationExclusionLists added in v5.12.0

func (o ResourceGuardOutput) VaultCriticalOperationExclusionLists() pulumi.StringArrayOutput

A list of the critical operations which are not protected by this Resource Guard.

type ResourceGuardState added in v5.12.0

type ResourceGuardState struct {
	// The Azure Region where the Resource Guard should exist. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The name of the Resource Guard. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the Resource Group where the Resource Guard should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A mapping of tags which should be assigned to the Resource Guard.
	Tags pulumi.StringMapInput
	// A list of the critical operations which are not protected by this Resource Guard.
	VaultCriticalOperationExclusionLists pulumi.StringArrayInput
}

func (ResourceGuardState) ElementType added in v5.12.0

func (ResourceGuardState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL