backup

package
v3.55.0 Latest Latest
Warning

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

Go to latest
Published: Apr 9, 2021 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 ContainerStorageAccount

type ContainerStorageAccount struct {
	pulumi.CustomResourceState

	// The name of the vault where the storage account will be registered.
	RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"`
	// Name of the resource group where the vault is located.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// The ID of the Storage Account to be registered
	StorageAccountId pulumi.StringOutput `pulumi:"storageAccountId"`
}

Manages registration of a storage account with Azure Backup. Storage accounts must be registered with an Azure Recovery Vault in order to backup file shares within the storage account. Registering a storage account with a vault creates what is known as a protection container within Azure Recovery Services. Once the container is created, Azure file shares within the storage account can be backed up using the `backup.ProtectedFileShare` resource.

> **NOTE:** Azure Backup for Azure File Shares is currently in public preview. During the preview, the service is subject to additional limitations and unsupported backup scenarios. [Read More](https://docs.microsoft.com/en-us/azure/backup/backup-azure-files#limitations-for-azure-file-share-backup-during-preview)

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/backup"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/recoveryservices"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/storage"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		rg, err := core.NewResourceGroup(ctx, "rg", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		vault, err := recoveryservices.NewVault(ctx, "vault", &recoveryservices.VaultArgs{
			Location:          rg.Location,
			ResourceGroupName: rg.Name,
			Sku:               pulumi.String("Standard"),
		})
		if err != nil {
			return err
		}
		sa, err := storage.NewAccount(ctx, "sa", &storage.AccountArgs{
			Location:               rg.Location,
			ResourceGroupName:      rg.Name,
			AccountTier:            pulumi.String("Standard"),
			AccountReplicationType: pulumi.String("LRS"),
		})
		if err != nil {
			return err
		}
		_, err = backup.NewContainerStorageAccount(ctx, "container", &backup.ContainerStorageAccountArgs{
			ResourceGroupName: rg.Name,
			RecoveryVaultName: vault.Name,
			StorageAccountId:  sa.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Backup Storage Account Containers can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:backup/containerStorageAccount:ContainerStorageAccount mycontainer "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-name/providers/Microsoft.RecoveryServices/vaults/recovery-vault-name/backupFabrics/Azure/protectionContainers/StorageContainer;storage;storage-rg-name;storage-account"

```

Note the ID requires quoting as there are semicolons

func GetContainerStorageAccount

func GetContainerStorageAccount(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ContainerStorageAccountState, opts ...pulumi.ResourceOption) (*ContainerStorageAccount, error)

GetContainerStorageAccount gets an existing ContainerStorageAccount 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 NewContainerStorageAccount

func NewContainerStorageAccount(ctx *pulumi.Context,
	name string, args *ContainerStorageAccountArgs, opts ...pulumi.ResourceOption) (*ContainerStorageAccount, error)

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

func (*ContainerStorageAccount) ElementType added in v3.31.1

func (*ContainerStorageAccount) ElementType() reflect.Type

func (*ContainerStorageAccount) ToContainerStorageAccountOutput added in v3.31.1

func (i *ContainerStorageAccount) ToContainerStorageAccountOutput() ContainerStorageAccountOutput

func (*ContainerStorageAccount) ToContainerStorageAccountOutputWithContext added in v3.31.1

func (i *ContainerStorageAccount) ToContainerStorageAccountOutputWithContext(ctx context.Context) ContainerStorageAccountOutput

func (*ContainerStorageAccount) ToContainerStorageAccountPtrOutput added in v3.47.1

func (i *ContainerStorageAccount) ToContainerStorageAccountPtrOutput() ContainerStorageAccountPtrOutput

func (*ContainerStorageAccount) ToContainerStorageAccountPtrOutputWithContext added in v3.47.1

func (i *ContainerStorageAccount) ToContainerStorageAccountPtrOutputWithContext(ctx context.Context) ContainerStorageAccountPtrOutput

type ContainerStorageAccountArgs

type ContainerStorageAccountArgs struct {
	// The name of the vault where the storage account will be registered.
	RecoveryVaultName pulumi.StringInput
	// Name of the resource group where the vault is located.
	ResourceGroupName pulumi.StringInput
	// The ID of the Storage Account to be registered
	StorageAccountId pulumi.StringInput
}

The set of arguments for constructing a ContainerStorageAccount resource.

func (ContainerStorageAccountArgs) ElementType

type ContainerStorageAccountArray added in v3.47.1

type ContainerStorageAccountArray []ContainerStorageAccountInput

func (ContainerStorageAccountArray) ElementType added in v3.47.1

func (ContainerStorageAccountArray) ToContainerStorageAccountArrayOutput added in v3.47.1

func (i ContainerStorageAccountArray) ToContainerStorageAccountArrayOutput() ContainerStorageAccountArrayOutput

func (ContainerStorageAccountArray) ToContainerStorageAccountArrayOutputWithContext added in v3.47.1

func (i ContainerStorageAccountArray) ToContainerStorageAccountArrayOutputWithContext(ctx context.Context) ContainerStorageAccountArrayOutput

type ContainerStorageAccountArrayInput added in v3.47.1

type ContainerStorageAccountArrayInput interface {
	pulumi.Input

	ToContainerStorageAccountArrayOutput() ContainerStorageAccountArrayOutput
	ToContainerStorageAccountArrayOutputWithContext(context.Context) ContainerStorageAccountArrayOutput
}

ContainerStorageAccountArrayInput is an input type that accepts ContainerStorageAccountArray and ContainerStorageAccountArrayOutput values. You can construct a concrete instance of `ContainerStorageAccountArrayInput` via:

ContainerStorageAccountArray{ ContainerStorageAccountArgs{...} }

type ContainerStorageAccountArrayOutput added in v3.47.1

type ContainerStorageAccountArrayOutput struct{ *pulumi.OutputState }

func (ContainerStorageAccountArrayOutput) ElementType added in v3.47.1

func (ContainerStorageAccountArrayOutput) Index added in v3.47.1

func (ContainerStorageAccountArrayOutput) ToContainerStorageAccountArrayOutput added in v3.47.1

func (o ContainerStorageAccountArrayOutput) ToContainerStorageAccountArrayOutput() ContainerStorageAccountArrayOutput

func (ContainerStorageAccountArrayOutput) ToContainerStorageAccountArrayOutputWithContext added in v3.47.1

func (o ContainerStorageAccountArrayOutput) ToContainerStorageAccountArrayOutputWithContext(ctx context.Context) ContainerStorageAccountArrayOutput

type ContainerStorageAccountInput added in v3.31.1

type ContainerStorageAccountInput interface {
	pulumi.Input

	ToContainerStorageAccountOutput() ContainerStorageAccountOutput
	ToContainerStorageAccountOutputWithContext(ctx context.Context) ContainerStorageAccountOutput
}

type ContainerStorageAccountMap added in v3.47.1

type ContainerStorageAccountMap map[string]ContainerStorageAccountInput

func (ContainerStorageAccountMap) ElementType added in v3.47.1

func (ContainerStorageAccountMap) ElementType() reflect.Type

func (ContainerStorageAccountMap) ToContainerStorageAccountMapOutput added in v3.47.1

func (i ContainerStorageAccountMap) ToContainerStorageAccountMapOutput() ContainerStorageAccountMapOutput

func (ContainerStorageAccountMap) ToContainerStorageAccountMapOutputWithContext added in v3.47.1

func (i ContainerStorageAccountMap) ToContainerStorageAccountMapOutputWithContext(ctx context.Context) ContainerStorageAccountMapOutput

type ContainerStorageAccountMapInput added in v3.47.1

type ContainerStorageAccountMapInput interface {
	pulumi.Input

	ToContainerStorageAccountMapOutput() ContainerStorageAccountMapOutput
	ToContainerStorageAccountMapOutputWithContext(context.Context) ContainerStorageAccountMapOutput
}

ContainerStorageAccountMapInput is an input type that accepts ContainerStorageAccountMap and ContainerStorageAccountMapOutput values. You can construct a concrete instance of `ContainerStorageAccountMapInput` via:

ContainerStorageAccountMap{ "key": ContainerStorageAccountArgs{...} }

type ContainerStorageAccountMapOutput added in v3.47.1

type ContainerStorageAccountMapOutput struct{ *pulumi.OutputState }

func (ContainerStorageAccountMapOutput) ElementType added in v3.47.1

func (ContainerStorageAccountMapOutput) MapIndex added in v3.47.1

func (ContainerStorageAccountMapOutput) ToContainerStorageAccountMapOutput added in v3.47.1

func (o ContainerStorageAccountMapOutput) ToContainerStorageAccountMapOutput() ContainerStorageAccountMapOutput

func (ContainerStorageAccountMapOutput) ToContainerStorageAccountMapOutputWithContext added in v3.47.1

func (o ContainerStorageAccountMapOutput) ToContainerStorageAccountMapOutputWithContext(ctx context.Context) ContainerStorageAccountMapOutput

type ContainerStorageAccountOutput added in v3.31.1

type ContainerStorageAccountOutput struct {
	*pulumi.OutputState
}

func (ContainerStorageAccountOutput) ElementType added in v3.31.1

func (ContainerStorageAccountOutput) ToContainerStorageAccountOutput added in v3.31.1

func (o ContainerStorageAccountOutput) ToContainerStorageAccountOutput() ContainerStorageAccountOutput

func (ContainerStorageAccountOutput) ToContainerStorageAccountOutputWithContext added in v3.31.1

func (o ContainerStorageAccountOutput) ToContainerStorageAccountOutputWithContext(ctx context.Context) ContainerStorageAccountOutput

func (ContainerStorageAccountOutput) ToContainerStorageAccountPtrOutput added in v3.47.1

func (o ContainerStorageAccountOutput) ToContainerStorageAccountPtrOutput() ContainerStorageAccountPtrOutput

func (ContainerStorageAccountOutput) ToContainerStorageAccountPtrOutputWithContext added in v3.47.1

func (o ContainerStorageAccountOutput) ToContainerStorageAccountPtrOutputWithContext(ctx context.Context) ContainerStorageAccountPtrOutput

type ContainerStorageAccountPtrInput added in v3.47.1

type ContainerStorageAccountPtrInput interface {
	pulumi.Input

	ToContainerStorageAccountPtrOutput() ContainerStorageAccountPtrOutput
	ToContainerStorageAccountPtrOutputWithContext(ctx context.Context) ContainerStorageAccountPtrOutput
}

type ContainerStorageAccountPtrOutput added in v3.47.1

type ContainerStorageAccountPtrOutput struct {
	*pulumi.OutputState
}

func (ContainerStorageAccountPtrOutput) ElementType added in v3.47.1

func (ContainerStorageAccountPtrOutput) ToContainerStorageAccountPtrOutput added in v3.47.1

func (o ContainerStorageAccountPtrOutput) ToContainerStorageAccountPtrOutput() ContainerStorageAccountPtrOutput

func (ContainerStorageAccountPtrOutput) ToContainerStorageAccountPtrOutputWithContext added in v3.47.1

func (o ContainerStorageAccountPtrOutput) ToContainerStorageAccountPtrOutputWithContext(ctx context.Context) ContainerStorageAccountPtrOutput

type ContainerStorageAccountState

type ContainerStorageAccountState struct {
	// The name of the vault where the storage account will be registered.
	RecoveryVaultName pulumi.StringPtrInput
	// Name of the resource group where the vault is located.
	ResourceGroupName pulumi.StringPtrInput
	// The ID of the Storage Account to be registered
	StorageAccountId pulumi.StringPtrInput
}

func (ContainerStorageAccountState) ElementType

type LookupPolicyVMArgs

type LookupPolicyVMArgs struct {
	// Specifies the name of the VM Backup Policy.
	Name string `pulumi:"name"`
	// Specifies the name of the Recovery Services Vault.
	RecoveryVaultName string `pulumi:"recoveryVaultName"`
	// The name of the resource group in which the VM Backup Policy resides.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getPolicyVM.

type LookupPolicyVMResult

type LookupPolicyVMResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id                string `pulumi:"id"`
	Name              string `pulumi:"name"`
	RecoveryVaultName string `pulumi:"recoveryVaultName"`
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// A mapping of tags assigned to the resource.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getPolicyVM.

func LookupPolicyVM

func LookupPolicyVM(ctx *pulumi.Context, args *LookupPolicyVMArgs, opts ...pulumi.InvokeOption) (*LookupPolicyVMResult, error)

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

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/backup"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := backup.LookupPolicyVM(ctx, &backup.LookupPolicyVMArgs{
			Name:              "policy",
			RecoveryVaultName: "recovery_vault",
			ResourceGroupName: "resource_group",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type PolicyFileShare

type PolicyFileShare struct {
	pulumi.CustomResourceState

	// Configures the Policy backup frequency and times as documented in the `backup` block below.
	Backup PolicyFileShareBackupOutput `pulumi:"backup"`
	// Specifies the name of the policy. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"`
	// The name of the resource group in which to create the policy. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// Configures the policy daily retention as documented in the `retentionDaily` block below.
	RetentionDaily PolicyFileShareRetentionDailyOutput `pulumi:"retentionDaily"`
	// Specifies the timezone. [the possible values are defined here](http://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/). Defaults to `UTC`
	Timezone pulumi.StringPtrOutput `pulumi:"timezone"`
}

Manages an Azure File Share Backup Policy within a Recovery Services vault.

> **NOTE:** Azure Backup for Azure File Shares is currently in public preview. During the preview, the service is subject to additional limitations and unsupported backup scenarios. [Read More](https://docs.microsoft.com/en-us/azure/backup/backup-azure-files#limitations-for-azure-file-share-backup-during-preview)

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/backup"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/recoveryservices"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		rg, err := core.NewResourceGroup(ctx, "rg", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		vault, err := recoveryservices.NewVault(ctx, "vault", &recoveryservices.VaultArgs{
			Location:          rg.Location,
			ResourceGroupName: rg.Name,
			Sku:               pulumi.String("Standard"),
		})
		if err != nil {
			return err
		}
		_, err = backup.NewPolicyFileShare(ctx, "policy", &backup.PolicyFileShareArgs{
			ResourceGroupName: rg.Name,
			RecoveryVaultName: vault.Name,
			Timezone:          pulumi.String("UTC"),
			Backup: &backup.PolicyFileShareBackupArgs{
				Frequency: pulumi.String("Daily"),
				Time:      pulumi.String("23:00"),
			},
			RetentionDaily: &backup.PolicyFileShareRetentionDailyArgs{
				Count: pulumi.Int(10),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Azure File Share Backup Policies can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:backup/policyFileShare:PolicyFileShare policy1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.RecoveryServices/vaults/example-recovery-vault/backupPolicies/policy1

```

func GetPolicyFileShare

func GetPolicyFileShare(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PolicyFileShareState, opts ...pulumi.ResourceOption) (*PolicyFileShare, error)

GetPolicyFileShare gets an existing PolicyFileShare 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 NewPolicyFileShare

func NewPolicyFileShare(ctx *pulumi.Context,
	name string, args *PolicyFileShareArgs, opts ...pulumi.ResourceOption) (*PolicyFileShare, error)

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

func (*PolicyFileShare) ElementType added in v3.31.1

func (*PolicyFileShare) ElementType() reflect.Type

func (*PolicyFileShare) ToPolicyFileShareOutput added in v3.31.1

func (i *PolicyFileShare) ToPolicyFileShareOutput() PolicyFileShareOutput

func (*PolicyFileShare) ToPolicyFileShareOutputWithContext added in v3.31.1

func (i *PolicyFileShare) ToPolicyFileShareOutputWithContext(ctx context.Context) PolicyFileShareOutput

func (*PolicyFileShare) ToPolicyFileSharePtrOutput added in v3.47.1

func (i *PolicyFileShare) ToPolicyFileSharePtrOutput() PolicyFileSharePtrOutput

func (*PolicyFileShare) ToPolicyFileSharePtrOutputWithContext added in v3.47.1

func (i *PolicyFileShare) ToPolicyFileSharePtrOutputWithContext(ctx context.Context) PolicyFileSharePtrOutput

type PolicyFileShareArgs

type PolicyFileShareArgs struct {
	// Configures the Policy backup frequency and times as documented in the `backup` block below.
	Backup PolicyFileShareBackupInput
	// Specifies the name of the policy. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringInput
	// The name of the resource group in which to create the policy. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// Configures the policy daily retention as documented in the `retentionDaily` block below.
	RetentionDaily PolicyFileShareRetentionDailyInput
	// Specifies the timezone. [the possible values are defined here](http://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/). Defaults to `UTC`
	Timezone pulumi.StringPtrInput
}

The set of arguments for constructing a PolicyFileShare resource.

func (PolicyFileShareArgs) ElementType

func (PolicyFileShareArgs) ElementType() reflect.Type

type PolicyFileShareArray added in v3.47.1

type PolicyFileShareArray []PolicyFileShareInput

func (PolicyFileShareArray) ElementType added in v3.47.1

func (PolicyFileShareArray) ElementType() reflect.Type

func (PolicyFileShareArray) ToPolicyFileShareArrayOutput added in v3.47.1

func (i PolicyFileShareArray) ToPolicyFileShareArrayOutput() PolicyFileShareArrayOutput

func (PolicyFileShareArray) ToPolicyFileShareArrayOutputWithContext added in v3.47.1

func (i PolicyFileShareArray) ToPolicyFileShareArrayOutputWithContext(ctx context.Context) PolicyFileShareArrayOutput

type PolicyFileShareArrayInput added in v3.47.1

type PolicyFileShareArrayInput interface {
	pulumi.Input

	ToPolicyFileShareArrayOutput() PolicyFileShareArrayOutput
	ToPolicyFileShareArrayOutputWithContext(context.Context) PolicyFileShareArrayOutput
}

PolicyFileShareArrayInput is an input type that accepts PolicyFileShareArray and PolicyFileShareArrayOutput values. You can construct a concrete instance of `PolicyFileShareArrayInput` via:

PolicyFileShareArray{ PolicyFileShareArgs{...} }

type PolicyFileShareArrayOutput added in v3.47.1

type PolicyFileShareArrayOutput struct{ *pulumi.OutputState }

func (PolicyFileShareArrayOutput) ElementType added in v3.47.1

func (PolicyFileShareArrayOutput) ElementType() reflect.Type

func (PolicyFileShareArrayOutput) Index added in v3.47.1

func (PolicyFileShareArrayOutput) ToPolicyFileShareArrayOutput added in v3.47.1

func (o PolicyFileShareArrayOutput) ToPolicyFileShareArrayOutput() PolicyFileShareArrayOutput

func (PolicyFileShareArrayOutput) ToPolicyFileShareArrayOutputWithContext added in v3.47.1

func (o PolicyFileShareArrayOutput) ToPolicyFileShareArrayOutputWithContext(ctx context.Context) PolicyFileShareArrayOutput

type PolicyFileShareBackup

type PolicyFileShareBackup struct {
	// Sets the backup frequency. Currently, only `Daily` is supported
	Frequency string `pulumi:"frequency"`
	Time      string `pulumi:"time"`
}

type PolicyFileShareBackupArgs

type PolicyFileShareBackupArgs struct {
	// Sets the backup frequency. Currently, only `Daily` is supported
	Frequency pulumi.StringInput `pulumi:"frequency"`
	Time      pulumi.StringInput `pulumi:"time"`
}

func (PolicyFileShareBackupArgs) ElementType

func (PolicyFileShareBackupArgs) ElementType() reflect.Type

func (PolicyFileShareBackupArgs) ToPolicyFileShareBackupOutput

func (i PolicyFileShareBackupArgs) ToPolicyFileShareBackupOutput() PolicyFileShareBackupOutput

func (PolicyFileShareBackupArgs) ToPolicyFileShareBackupOutputWithContext

func (i PolicyFileShareBackupArgs) ToPolicyFileShareBackupOutputWithContext(ctx context.Context) PolicyFileShareBackupOutput

func (PolicyFileShareBackupArgs) ToPolicyFileShareBackupPtrOutput

func (i PolicyFileShareBackupArgs) ToPolicyFileShareBackupPtrOutput() PolicyFileShareBackupPtrOutput

func (PolicyFileShareBackupArgs) ToPolicyFileShareBackupPtrOutputWithContext

func (i PolicyFileShareBackupArgs) ToPolicyFileShareBackupPtrOutputWithContext(ctx context.Context) PolicyFileShareBackupPtrOutput

type PolicyFileShareBackupInput

type PolicyFileShareBackupInput interface {
	pulumi.Input

	ToPolicyFileShareBackupOutput() PolicyFileShareBackupOutput
	ToPolicyFileShareBackupOutputWithContext(context.Context) PolicyFileShareBackupOutput
}

PolicyFileShareBackupInput is an input type that accepts PolicyFileShareBackupArgs and PolicyFileShareBackupOutput values. You can construct a concrete instance of `PolicyFileShareBackupInput` via:

PolicyFileShareBackupArgs{...}

type PolicyFileShareBackupOutput

type PolicyFileShareBackupOutput struct{ *pulumi.OutputState }

func (PolicyFileShareBackupOutput) ElementType

func (PolicyFileShareBackupOutput) Frequency

Sets the backup frequency. Currently, only `Daily` is supported

func (PolicyFileShareBackupOutput) Time

func (PolicyFileShareBackupOutput) ToPolicyFileShareBackupOutput

func (o PolicyFileShareBackupOutput) ToPolicyFileShareBackupOutput() PolicyFileShareBackupOutput

func (PolicyFileShareBackupOutput) ToPolicyFileShareBackupOutputWithContext

func (o PolicyFileShareBackupOutput) ToPolicyFileShareBackupOutputWithContext(ctx context.Context) PolicyFileShareBackupOutput

func (PolicyFileShareBackupOutput) ToPolicyFileShareBackupPtrOutput

func (o PolicyFileShareBackupOutput) ToPolicyFileShareBackupPtrOutput() PolicyFileShareBackupPtrOutput

func (PolicyFileShareBackupOutput) ToPolicyFileShareBackupPtrOutputWithContext

func (o PolicyFileShareBackupOutput) ToPolicyFileShareBackupPtrOutputWithContext(ctx context.Context) PolicyFileShareBackupPtrOutput

type PolicyFileShareBackupPtrInput

type PolicyFileShareBackupPtrInput interface {
	pulumi.Input

	ToPolicyFileShareBackupPtrOutput() PolicyFileShareBackupPtrOutput
	ToPolicyFileShareBackupPtrOutputWithContext(context.Context) PolicyFileShareBackupPtrOutput
}

PolicyFileShareBackupPtrInput is an input type that accepts PolicyFileShareBackupArgs, PolicyFileShareBackupPtr and PolicyFileShareBackupPtrOutput values. You can construct a concrete instance of `PolicyFileShareBackupPtrInput` via:

        PolicyFileShareBackupArgs{...}

or:

        nil

type PolicyFileShareBackupPtrOutput

type PolicyFileShareBackupPtrOutput struct{ *pulumi.OutputState }

func (PolicyFileShareBackupPtrOutput) Elem

func (PolicyFileShareBackupPtrOutput) ElementType

func (PolicyFileShareBackupPtrOutput) Frequency

Sets the backup frequency. Currently, only `Daily` is supported

func (PolicyFileShareBackupPtrOutput) Time

func (PolicyFileShareBackupPtrOutput) ToPolicyFileShareBackupPtrOutput

func (o PolicyFileShareBackupPtrOutput) ToPolicyFileShareBackupPtrOutput() PolicyFileShareBackupPtrOutput

func (PolicyFileShareBackupPtrOutput) ToPolicyFileShareBackupPtrOutputWithContext

func (o PolicyFileShareBackupPtrOutput) ToPolicyFileShareBackupPtrOutputWithContext(ctx context.Context) PolicyFileShareBackupPtrOutput

type PolicyFileShareInput added in v3.31.1

type PolicyFileShareInput interface {
	pulumi.Input

	ToPolicyFileShareOutput() PolicyFileShareOutput
	ToPolicyFileShareOutputWithContext(ctx context.Context) PolicyFileShareOutput
}

type PolicyFileShareMap added in v3.47.1

type PolicyFileShareMap map[string]PolicyFileShareInput

func (PolicyFileShareMap) ElementType added in v3.47.1

func (PolicyFileShareMap) ElementType() reflect.Type

func (PolicyFileShareMap) ToPolicyFileShareMapOutput added in v3.47.1

func (i PolicyFileShareMap) ToPolicyFileShareMapOutput() PolicyFileShareMapOutput

func (PolicyFileShareMap) ToPolicyFileShareMapOutputWithContext added in v3.47.1

func (i PolicyFileShareMap) ToPolicyFileShareMapOutputWithContext(ctx context.Context) PolicyFileShareMapOutput

type PolicyFileShareMapInput added in v3.47.1

type PolicyFileShareMapInput interface {
	pulumi.Input

	ToPolicyFileShareMapOutput() PolicyFileShareMapOutput
	ToPolicyFileShareMapOutputWithContext(context.Context) PolicyFileShareMapOutput
}

PolicyFileShareMapInput is an input type that accepts PolicyFileShareMap and PolicyFileShareMapOutput values. You can construct a concrete instance of `PolicyFileShareMapInput` via:

PolicyFileShareMap{ "key": PolicyFileShareArgs{...} }

type PolicyFileShareMapOutput added in v3.47.1

type PolicyFileShareMapOutput struct{ *pulumi.OutputState }

func (PolicyFileShareMapOutput) ElementType added in v3.47.1

func (PolicyFileShareMapOutput) ElementType() reflect.Type

func (PolicyFileShareMapOutput) MapIndex added in v3.47.1

func (PolicyFileShareMapOutput) ToPolicyFileShareMapOutput added in v3.47.1

func (o PolicyFileShareMapOutput) ToPolicyFileShareMapOutput() PolicyFileShareMapOutput

func (PolicyFileShareMapOutput) ToPolicyFileShareMapOutputWithContext added in v3.47.1

func (o PolicyFileShareMapOutput) ToPolicyFileShareMapOutputWithContext(ctx context.Context) PolicyFileShareMapOutput

type PolicyFileShareOutput added in v3.31.1

type PolicyFileShareOutput struct {
	*pulumi.OutputState
}

func (PolicyFileShareOutput) ElementType added in v3.31.1

func (PolicyFileShareOutput) ElementType() reflect.Type

func (PolicyFileShareOutput) ToPolicyFileShareOutput added in v3.31.1

func (o PolicyFileShareOutput) ToPolicyFileShareOutput() PolicyFileShareOutput

func (PolicyFileShareOutput) ToPolicyFileShareOutputWithContext added in v3.31.1

func (o PolicyFileShareOutput) ToPolicyFileShareOutputWithContext(ctx context.Context) PolicyFileShareOutput

func (PolicyFileShareOutput) ToPolicyFileSharePtrOutput added in v3.47.1

func (o PolicyFileShareOutput) ToPolicyFileSharePtrOutput() PolicyFileSharePtrOutput

func (PolicyFileShareOutput) ToPolicyFileSharePtrOutputWithContext added in v3.47.1

func (o PolicyFileShareOutput) ToPolicyFileSharePtrOutputWithContext(ctx context.Context) PolicyFileSharePtrOutput

type PolicyFileSharePtrInput added in v3.47.1

type PolicyFileSharePtrInput interface {
	pulumi.Input

	ToPolicyFileSharePtrOutput() PolicyFileSharePtrOutput
	ToPolicyFileSharePtrOutputWithContext(ctx context.Context) PolicyFileSharePtrOutput
}

type PolicyFileSharePtrOutput added in v3.47.1

type PolicyFileSharePtrOutput struct {
	*pulumi.OutputState
}

func (PolicyFileSharePtrOutput) ElementType added in v3.47.1

func (PolicyFileSharePtrOutput) ElementType() reflect.Type

func (PolicyFileSharePtrOutput) ToPolicyFileSharePtrOutput added in v3.47.1

func (o PolicyFileSharePtrOutput) ToPolicyFileSharePtrOutput() PolicyFileSharePtrOutput

func (PolicyFileSharePtrOutput) ToPolicyFileSharePtrOutputWithContext added in v3.47.1

func (o PolicyFileSharePtrOutput) ToPolicyFileSharePtrOutputWithContext(ctx context.Context) PolicyFileSharePtrOutput

type PolicyFileShareRetentionDaily

type PolicyFileShareRetentionDaily struct {
	// The number of daily backups to keep. Must be between `1` and `180` (inclusive)
	Count int `pulumi:"count"`
}

type PolicyFileShareRetentionDailyArgs

type PolicyFileShareRetentionDailyArgs struct {
	// The number of daily backups to keep. Must be between `1` and `180` (inclusive)
	Count pulumi.IntInput `pulumi:"count"`
}

func (PolicyFileShareRetentionDailyArgs) ElementType

func (PolicyFileShareRetentionDailyArgs) ToPolicyFileShareRetentionDailyOutput

func (i PolicyFileShareRetentionDailyArgs) ToPolicyFileShareRetentionDailyOutput() PolicyFileShareRetentionDailyOutput

func (PolicyFileShareRetentionDailyArgs) ToPolicyFileShareRetentionDailyOutputWithContext

func (i PolicyFileShareRetentionDailyArgs) ToPolicyFileShareRetentionDailyOutputWithContext(ctx context.Context) PolicyFileShareRetentionDailyOutput

func (PolicyFileShareRetentionDailyArgs) ToPolicyFileShareRetentionDailyPtrOutput

func (i PolicyFileShareRetentionDailyArgs) ToPolicyFileShareRetentionDailyPtrOutput() PolicyFileShareRetentionDailyPtrOutput

func (PolicyFileShareRetentionDailyArgs) ToPolicyFileShareRetentionDailyPtrOutputWithContext

func (i PolicyFileShareRetentionDailyArgs) ToPolicyFileShareRetentionDailyPtrOutputWithContext(ctx context.Context) PolicyFileShareRetentionDailyPtrOutput

type PolicyFileShareRetentionDailyInput

type PolicyFileShareRetentionDailyInput interface {
	pulumi.Input

	ToPolicyFileShareRetentionDailyOutput() PolicyFileShareRetentionDailyOutput
	ToPolicyFileShareRetentionDailyOutputWithContext(context.Context) PolicyFileShareRetentionDailyOutput
}

PolicyFileShareRetentionDailyInput is an input type that accepts PolicyFileShareRetentionDailyArgs and PolicyFileShareRetentionDailyOutput values. You can construct a concrete instance of `PolicyFileShareRetentionDailyInput` via:

PolicyFileShareRetentionDailyArgs{...}

type PolicyFileShareRetentionDailyOutput

type PolicyFileShareRetentionDailyOutput struct{ *pulumi.OutputState }

func (PolicyFileShareRetentionDailyOutput) Count

The number of daily backups to keep. Must be between `1` and `180` (inclusive)

func (PolicyFileShareRetentionDailyOutput) ElementType

func (PolicyFileShareRetentionDailyOutput) ToPolicyFileShareRetentionDailyOutput

func (o PolicyFileShareRetentionDailyOutput) ToPolicyFileShareRetentionDailyOutput() PolicyFileShareRetentionDailyOutput

func (PolicyFileShareRetentionDailyOutput) ToPolicyFileShareRetentionDailyOutputWithContext

func (o PolicyFileShareRetentionDailyOutput) ToPolicyFileShareRetentionDailyOutputWithContext(ctx context.Context) PolicyFileShareRetentionDailyOutput

func (PolicyFileShareRetentionDailyOutput) ToPolicyFileShareRetentionDailyPtrOutput

func (o PolicyFileShareRetentionDailyOutput) ToPolicyFileShareRetentionDailyPtrOutput() PolicyFileShareRetentionDailyPtrOutput

func (PolicyFileShareRetentionDailyOutput) ToPolicyFileShareRetentionDailyPtrOutputWithContext

func (o PolicyFileShareRetentionDailyOutput) ToPolicyFileShareRetentionDailyPtrOutputWithContext(ctx context.Context) PolicyFileShareRetentionDailyPtrOutput

type PolicyFileShareRetentionDailyPtrInput

type PolicyFileShareRetentionDailyPtrInput interface {
	pulumi.Input

	ToPolicyFileShareRetentionDailyPtrOutput() PolicyFileShareRetentionDailyPtrOutput
	ToPolicyFileShareRetentionDailyPtrOutputWithContext(context.Context) PolicyFileShareRetentionDailyPtrOutput
}

PolicyFileShareRetentionDailyPtrInput is an input type that accepts PolicyFileShareRetentionDailyArgs, PolicyFileShareRetentionDailyPtr and PolicyFileShareRetentionDailyPtrOutput values. You can construct a concrete instance of `PolicyFileShareRetentionDailyPtrInput` via:

        PolicyFileShareRetentionDailyArgs{...}

or:

        nil

type PolicyFileShareRetentionDailyPtrOutput

type PolicyFileShareRetentionDailyPtrOutput struct{ *pulumi.OutputState }

func (PolicyFileShareRetentionDailyPtrOutput) Count

The number of daily backups to keep. Must be between `1` and `180` (inclusive)

func (PolicyFileShareRetentionDailyPtrOutput) Elem

func (PolicyFileShareRetentionDailyPtrOutput) ElementType

func (PolicyFileShareRetentionDailyPtrOutput) ToPolicyFileShareRetentionDailyPtrOutput

func (o PolicyFileShareRetentionDailyPtrOutput) ToPolicyFileShareRetentionDailyPtrOutput() PolicyFileShareRetentionDailyPtrOutput

func (PolicyFileShareRetentionDailyPtrOutput) ToPolicyFileShareRetentionDailyPtrOutputWithContext

func (o PolicyFileShareRetentionDailyPtrOutput) ToPolicyFileShareRetentionDailyPtrOutputWithContext(ctx context.Context) PolicyFileShareRetentionDailyPtrOutput

type PolicyFileShareState

type PolicyFileShareState struct {
	// Configures the Policy backup frequency and times as documented in the `backup` block below.
	Backup PolicyFileShareBackupPtrInput
	// Specifies the name of the policy. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringPtrInput
	// The name of the resource group in which to create the policy. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// Configures the policy daily retention as documented in the `retentionDaily` block below.
	RetentionDaily PolicyFileShareRetentionDailyPtrInput
	// Specifies the timezone. [the possible values are defined here](http://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/). Defaults to `UTC`
	Timezone pulumi.StringPtrInput
}

func (PolicyFileShareState) ElementType

func (PolicyFileShareState) ElementType() reflect.Type

type PolicyVM

type PolicyVM struct {
	pulumi.CustomResourceState

	// Configures the Policy backup frequency, times & days as documented in the `backup` block below.
	Backup PolicyVMBackupOutput `pulumi:"backup"`
	// Specifies the instant restore retention range in days.
	InstantRestoreRetentionDays pulumi.IntOutput `pulumi:"instantRestoreRetentionDays"`
	// Specifies the name of the Backup Policy. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"`
	// The name of the resource group in which to create the policy. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// Configures the policy daily retention as documented in the `retentionDaily` block below. Required when backup frequency is `Daily`.
	RetentionDaily PolicyVMRetentionDailyPtrOutput `pulumi:"retentionDaily"`
	// Configures the policy monthly retention as documented in the `retentionMonthly` block below.
	RetentionMonthly PolicyVMRetentionMonthlyPtrOutput `pulumi:"retentionMonthly"`
	// Configures the policy weekly retention as documented in the `retentionWeekly` block below. Required when backup frequency is `Weekly`.
	RetentionWeekly PolicyVMRetentionWeeklyPtrOutput `pulumi:"retentionWeekly"`
	// Configures the policy yearly retention as documented in the `retentionYearly` block below.
	RetentionYearly PolicyVMRetentionYearlyPtrOutput `pulumi:"retentionYearly"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Specifies the timezone. [the possible values are defined here](http://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/). Defaults to `UTC`
	Timezone pulumi.StringPtrOutput `pulumi:"timezone"`
}

Manages an Azure Backup VM Backup Policy.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/backup"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/recoveryservices"
"github.com/pulumi/pulumi/sdk/v2/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
		}
		exampleVault, err := recoveryservices.NewVault(ctx, "exampleVault", &recoveryservices.VaultArgs{
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			Sku:               pulumi.String("Standard"),
		})
		if err != nil {
			return err
		}
		_, err = backup.NewPolicyVM(ctx, "examplePolicyVM", &backup.PolicyVMArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			RecoveryVaultName: exampleVault.Name,
			Timezone:          pulumi.String("UTC"),
			Backup: &backup.PolicyVMBackupArgs{
				Frequency: pulumi.String("Daily"),
				Time:      pulumi.String("23:00"),
			},
			RetentionDaily: &backup.PolicyVMRetentionDailyArgs{
				Count: pulumi.Int(10),
			},
			RetentionWeekly: &backup.PolicyVMRetentionWeeklyArgs{
				Count: pulumi.Int(42),
				Weekdays: pulumi.StringArray{
					pulumi.String("Sunday"),
					pulumi.String("Wednesday"),
					pulumi.String("Friday"),
					pulumi.String("Saturday"),
				},
			},
			RetentionMonthly: &backup.PolicyVMRetentionMonthlyArgs{
				Count: pulumi.Int(7),
				Weekdays: pulumi.StringArray{
					pulumi.String("Sunday"),
					pulumi.String("Wednesday"),
				},
				Weeks: pulumi.StringArray{
					pulumi.String("First"),
					pulumi.String("Last"),
				},
			},
			RetentionYearly: &backup.PolicyVMRetentionYearlyArgs{
				Count: pulumi.Int(77),
				Weekdays: pulumi.StringArray{
					pulumi.String("Sunday"),
				},
				Weeks: pulumi.StringArray{
					pulumi.String("Last"),
				},
				Months: pulumi.StringArray{
					pulumi.String("January"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import azure:backup/policyVM:PolicyVM policy1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.RecoveryServices/vaults/example-recovery-vault/backupPolicies/policy1

```

func GetPolicyVM

func GetPolicyVM(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PolicyVMState, opts ...pulumi.ResourceOption) (*PolicyVM, error)

GetPolicyVM gets an existing PolicyVM 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 NewPolicyVM

func NewPolicyVM(ctx *pulumi.Context,
	name string, args *PolicyVMArgs, opts ...pulumi.ResourceOption) (*PolicyVM, error)

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

func (*PolicyVM) ElementType added in v3.31.1

func (*PolicyVM) ElementType() reflect.Type

func (*PolicyVM) ToPolicyVMOutput added in v3.31.1

func (i *PolicyVM) ToPolicyVMOutput() PolicyVMOutput

func (*PolicyVM) ToPolicyVMOutputWithContext added in v3.31.1

func (i *PolicyVM) ToPolicyVMOutputWithContext(ctx context.Context) PolicyVMOutput

func (*PolicyVM) ToPolicyVMPtrOutput added in v3.47.1

func (i *PolicyVM) ToPolicyVMPtrOutput() PolicyVMPtrOutput

func (*PolicyVM) ToPolicyVMPtrOutputWithContext added in v3.47.1

func (i *PolicyVM) ToPolicyVMPtrOutputWithContext(ctx context.Context) PolicyVMPtrOutput

type PolicyVMArgs

type PolicyVMArgs struct {
	// Configures the Policy backup frequency, times & days as documented in the `backup` block below.
	Backup PolicyVMBackupInput
	// Specifies the instant restore retention range in days.
	InstantRestoreRetentionDays pulumi.IntPtrInput
	// Specifies the name of the Backup Policy. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringInput
	// The name of the resource group in which to create the policy. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// Configures the policy daily retention as documented in the `retentionDaily` block below. Required when backup frequency is `Daily`.
	RetentionDaily PolicyVMRetentionDailyPtrInput
	// Configures the policy monthly retention as documented in the `retentionMonthly` block below.
	RetentionMonthly PolicyVMRetentionMonthlyPtrInput
	// Configures the policy weekly retention as documented in the `retentionWeekly` block below. Required when backup frequency is `Weekly`.
	RetentionWeekly PolicyVMRetentionWeeklyPtrInput
	// Configures the policy yearly retention as documented in the `retentionYearly` block below.
	RetentionYearly PolicyVMRetentionYearlyPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Specifies the timezone. [the possible values are defined here](http://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/). Defaults to `UTC`
	Timezone pulumi.StringPtrInput
}

The set of arguments for constructing a PolicyVM resource.

func (PolicyVMArgs) ElementType

func (PolicyVMArgs) ElementType() reflect.Type

type PolicyVMArray added in v3.47.1

type PolicyVMArray []PolicyVMInput

func (PolicyVMArray) ElementType added in v3.47.1

func (PolicyVMArray) ElementType() reflect.Type

func (PolicyVMArray) ToPolicyVMArrayOutput added in v3.47.1

func (i PolicyVMArray) ToPolicyVMArrayOutput() PolicyVMArrayOutput

func (PolicyVMArray) ToPolicyVMArrayOutputWithContext added in v3.47.1

func (i PolicyVMArray) ToPolicyVMArrayOutputWithContext(ctx context.Context) PolicyVMArrayOutput

type PolicyVMArrayInput added in v3.47.1

type PolicyVMArrayInput interface {
	pulumi.Input

	ToPolicyVMArrayOutput() PolicyVMArrayOutput
	ToPolicyVMArrayOutputWithContext(context.Context) PolicyVMArrayOutput
}

PolicyVMArrayInput is an input type that accepts PolicyVMArray and PolicyVMArrayOutput values. You can construct a concrete instance of `PolicyVMArrayInput` via:

PolicyVMArray{ PolicyVMArgs{...} }

type PolicyVMArrayOutput added in v3.47.1

type PolicyVMArrayOutput struct{ *pulumi.OutputState }

func (PolicyVMArrayOutput) ElementType added in v3.47.1

func (PolicyVMArrayOutput) ElementType() reflect.Type

func (PolicyVMArrayOutput) Index added in v3.47.1

func (PolicyVMArrayOutput) ToPolicyVMArrayOutput added in v3.47.1

func (o PolicyVMArrayOutput) ToPolicyVMArrayOutput() PolicyVMArrayOutput

func (PolicyVMArrayOutput) ToPolicyVMArrayOutputWithContext added in v3.47.1

func (o PolicyVMArrayOutput) ToPolicyVMArrayOutputWithContext(ctx context.Context) PolicyVMArrayOutput

type PolicyVMBackup

type PolicyVMBackup struct {
	// Sets the backup frequency. Must be either `Daily` or`Weekly`.
	Frequency string `pulumi:"frequency"`
	// The time of day to perform the backup in 24hour format.
	Time string `pulumi:"time"`
	// The weekday backups to retain . Must be one of `Sunday`, `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday` or `Saturday`.
	Weekdays []string `pulumi:"weekdays"`
}

type PolicyVMBackupArgs

type PolicyVMBackupArgs struct {
	// Sets the backup frequency. Must be either `Daily` or`Weekly`.
	Frequency pulumi.StringInput `pulumi:"frequency"`
	// The time of day to perform the backup in 24hour format.
	Time pulumi.StringInput `pulumi:"time"`
	// The weekday backups to retain . Must be one of `Sunday`, `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday` or `Saturday`.
	Weekdays pulumi.StringArrayInput `pulumi:"weekdays"`
}

func (PolicyVMBackupArgs) ElementType

func (PolicyVMBackupArgs) ElementType() reflect.Type

func (PolicyVMBackupArgs) ToPolicyVMBackupOutput

func (i PolicyVMBackupArgs) ToPolicyVMBackupOutput() PolicyVMBackupOutput

func (PolicyVMBackupArgs) ToPolicyVMBackupOutputWithContext

func (i PolicyVMBackupArgs) ToPolicyVMBackupOutputWithContext(ctx context.Context) PolicyVMBackupOutput

func (PolicyVMBackupArgs) ToPolicyVMBackupPtrOutput

func (i PolicyVMBackupArgs) ToPolicyVMBackupPtrOutput() PolicyVMBackupPtrOutput

func (PolicyVMBackupArgs) ToPolicyVMBackupPtrOutputWithContext

func (i PolicyVMBackupArgs) ToPolicyVMBackupPtrOutputWithContext(ctx context.Context) PolicyVMBackupPtrOutput

type PolicyVMBackupInput

type PolicyVMBackupInput interface {
	pulumi.Input

	ToPolicyVMBackupOutput() PolicyVMBackupOutput
	ToPolicyVMBackupOutputWithContext(context.Context) PolicyVMBackupOutput
}

PolicyVMBackupInput is an input type that accepts PolicyVMBackupArgs and PolicyVMBackupOutput values. You can construct a concrete instance of `PolicyVMBackupInput` via:

PolicyVMBackupArgs{...}

type PolicyVMBackupOutput

type PolicyVMBackupOutput struct{ *pulumi.OutputState }

func (PolicyVMBackupOutput) ElementType

func (PolicyVMBackupOutput) ElementType() reflect.Type

func (PolicyVMBackupOutput) Frequency

Sets the backup frequency. Must be either `Daily` or`Weekly`.

func (PolicyVMBackupOutput) Time

The time of day to perform the backup in 24hour format.

func (PolicyVMBackupOutput) ToPolicyVMBackupOutput

func (o PolicyVMBackupOutput) ToPolicyVMBackupOutput() PolicyVMBackupOutput

func (PolicyVMBackupOutput) ToPolicyVMBackupOutputWithContext

func (o PolicyVMBackupOutput) ToPolicyVMBackupOutputWithContext(ctx context.Context) PolicyVMBackupOutput

func (PolicyVMBackupOutput) ToPolicyVMBackupPtrOutput

func (o PolicyVMBackupOutput) ToPolicyVMBackupPtrOutput() PolicyVMBackupPtrOutput

func (PolicyVMBackupOutput) ToPolicyVMBackupPtrOutputWithContext

func (o PolicyVMBackupOutput) ToPolicyVMBackupPtrOutputWithContext(ctx context.Context) PolicyVMBackupPtrOutput

func (PolicyVMBackupOutput) Weekdays

The weekday backups to retain . Must be one of `Sunday`, `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday` or `Saturday`.

type PolicyVMBackupPtrInput

type PolicyVMBackupPtrInput interface {
	pulumi.Input

	ToPolicyVMBackupPtrOutput() PolicyVMBackupPtrOutput
	ToPolicyVMBackupPtrOutputWithContext(context.Context) PolicyVMBackupPtrOutput
}

PolicyVMBackupPtrInput is an input type that accepts PolicyVMBackupArgs, PolicyVMBackupPtr and PolicyVMBackupPtrOutput values. You can construct a concrete instance of `PolicyVMBackupPtrInput` via:

        PolicyVMBackupArgs{...}

or:

        nil

type PolicyVMBackupPtrOutput

type PolicyVMBackupPtrOutput struct{ *pulumi.OutputState }

func (PolicyVMBackupPtrOutput) Elem

func (PolicyVMBackupPtrOutput) ElementType

func (PolicyVMBackupPtrOutput) ElementType() reflect.Type

func (PolicyVMBackupPtrOutput) Frequency

Sets the backup frequency. Must be either `Daily` or`Weekly`.

func (PolicyVMBackupPtrOutput) Time

The time of day to perform the backup in 24hour format.

func (PolicyVMBackupPtrOutput) ToPolicyVMBackupPtrOutput

func (o PolicyVMBackupPtrOutput) ToPolicyVMBackupPtrOutput() PolicyVMBackupPtrOutput

func (PolicyVMBackupPtrOutput) ToPolicyVMBackupPtrOutputWithContext

func (o PolicyVMBackupPtrOutput) ToPolicyVMBackupPtrOutputWithContext(ctx context.Context) PolicyVMBackupPtrOutput

func (PolicyVMBackupPtrOutput) Weekdays

The weekday backups to retain . Must be one of `Sunday`, `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday` or `Saturday`.

type PolicyVMInput added in v3.31.1

type PolicyVMInput interface {
	pulumi.Input

	ToPolicyVMOutput() PolicyVMOutput
	ToPolicyVMOutputWithContext(ctx context.Context) PolicyVMOutput
}

type PolicyVMMap added in v3.47.1

type PolicyVMMap map[string]PolicyVMInput

func (PolicyVMMap) ElementType added in v3.47.1

func (PolicyVMMap) ElementType() reflect.Type

func (PolicyVMMap) ToPolicyVMMapOutput added in v3.47.1

func (i PolicyVMMap) ToPolicyVMMapOutput() PolicyVMMapOutput

func (PolicyVMMap) ToPolicyVMMapOutputWithContext added in v3.47.1

func (i PolicyVMMap) ToPolicyVMMapOutputWithContext(ctx context.Context) PolicyVMMapOutput

type PolicyVMMapInput added in v3.47.1

type PolicyVMMapInput interface {
	pulumi.Input

	ToPolicyVMMapOutput() PolicyVMMapOutput
	ToPolicyVMMapOutputWithContext(context.Context) PolicyVMMapOutput
}

PolicyVMMapInput is an input type that accepts PolicyVMMap and PolicyVMMapOutput values. You can construct a concrete instance of `PolicyVMMapInput` via:

PolicyVMMap{ "key": PolicyVMArgs{...} }

type PolicyVMMapOutput added in v3.47.1

type PolicyVMMapOutput struct{ *pulumi.OutputState }

func (PolicyVMMapOutput) ElementType added in v3.47.1

func (PolicyVMMapOutput) ElementType() reflect.Type

func (PolicyVMMapOutput) MapIndex added in v3.47.1

func (PolicyVMMapOutput) ToPolicyVMMapOutput added in v3.47.1

func (o PolicyVMMapOutput) ToPolicyVMMapOutput() PolicyVMMapOutput

func (PolicyVMMapOutput) ToPolicyVMMapOutputWithContext added in v3.47.1

func (o PolicyVMMapOutput) ToPolicyVMMapOutputWithContext(ctx context.Context) PolicyVMMapOutput

type PolicyVMOutput added in v3.31.1

type PolicyVMOutput struct {
	*pulumi.OutputState
}

func (PolicyVMOutput) ElementType added in v3.31.1

func (PolicyVMOutput) ElementType() reflect.Type

func (PolicyVMOutput) ToPolicyVMOutput added in v3.31.1

func (o PolicyVMOutput) ToPolicyVMOutput() PolicyVMOutput

func (PolicyVMOutput) ToPolicyVMOutputWithContext added in v3.31.1

func (o PolicyVMOutput) ToPolicyVMOutputWithContext(ctx context.Context) PolicyVMOutput

func (PolicyVMOutput) ToPolicyVMPtrOutput added in v3.47.1

func (o PolicyVMOutput) ToPolicyVMPtrOutput() PolicyVMPtrOutput

func (PolicyVMOutput) ToPolicyVMPtrOutputWithContext added in v3.47.1

func (o PolicyVMOutput) ToPolicyVMPtrOutputWithContext(ctx context.Context) PolicyVMPtrOutput

type PolicyVMPtrInput added in v3.47.1

type PolicyVMPtrInput interface {
	pulumi.Input

	ToPolicyVMPtrOutput() PolicyVMPtrOutput
	ToPolicyVMPtrOutputWithContext(ctx context.Context) PolicyVMPtrOutput
}

type PolicyVMPtrOutput added in v3.47.1

type PolicyVMPtrOutput struct {
	*pulumi.OutputState
}

func (PolicyVMPtrOutput) ElementType added in v3.47.1

func (PolicyVMPtrOutput) ElementType() reflect.Type

func (PolicyVMPtrOutput) ToPolicyVMPtrOutput added in v3.47.1

func (o PolicyVMPtrOutput) ToPolicyVMPtrOutput() PolicyVMPtrOutput

func (PolicyVMPtrOutput) ToPolicyVMPtrOutputWithContext added in v3.47.1

func (o PolicyVMPtrOutput) ToPolicyVMPtrOutputWithContext(ctx context.Context) PolicyVMPtrOutput

type PolicyVMRetentionDaily

type PolicyVMRetentionDaily struct {
	// The number of yearly backups to keep. Must be between `1` and `9999`
	Count int `pulumi:"count"`
}

type PolicyVMRetentionDailyArgs

type PolicyVMRetentionDailyArgs struct {
	// The number of yearly backups to keep. Must be between `1` and `9999`
	Count pulumi.IntInput `pulumi:"count"`
}

func (PolicyVMRetentionDailyArgs) ElementType

func (PolicyVMRetentionDailyArgs) ElementType() reflect.Type

func (PolicyVMRetentionDailyArgs) ToPolicyVMRetentionDailyOutput

func (i PolicyVMRetentionDailyArgs) ToPolicyVMRetentionDailyOutput() PolicyVMRetentionDailyOutput

func (PolicyVMRetentionDailyArgs) ToPolicyVMRetentionDailyOutputWithContext

func (i PolicyVMRetentionDailyArgs) ToPolicyVMRetentionDailyOutputWithContext(ctx context.Context) PolicyVMRetentionDailyOutput

func (PolicyVMRetentionDailyArgs) ToPolicyVMRetentionDailyPtrOutput

func (i PolicyVMRetentionDailyArgs) ToPolicyVMRetentionDailyPtrOutput() PolicyVMRetentionDailyPtrOutput

func (PolicyVMRetentionDailyArgs) ToPolicyVMRetentionDailyPtrOutputWithContext

func (i PolicyVMRetentionDailyArgs) ToPolicyVMRetentionDailyPtrOutputWithContext(ctx context.Context) PolicyVMRetentionDailyPtrOutput

type PolicyVMRetentionDailyInput

type PolicyVMRetentionDailyInput interface {
	pulumi.Input

	ToPolicyVMRetentionDailyOutput() PolicyVMRetentionDailyOutput
	ToPolicyVMRetentionDailyOutputWithContext(context.Context) PolicyVMRetentionDailyOutput
}

PolicyVMRetentionDailyInput is an input type that accepts PolicyVMRetentionDailyArgs and PolicyVMRetentionDailyOutput values. You can construct a concrete instance of `PolicyVMRetentionDailyInput` via:

PolicyVMRetentionDailyArgs{...}

type PolicyVMRetentionDailyOutput

type PolicyVMRetentionDailyOutput struct{ *pulumi.OutputState }

func (PolicyVMRetentionDailyOutput) Count

The number of yearly backups to keep. Must be between `1` and `9999`

func (PolicyVMRetentionDailyOutput) ElementType

func (PolicyVMRetentionDailyOutput) ToPolicyVMRetentionDailyOutput

func (o PolicyVMRetentionDailyOutput) ToPolicyVMRetentionDailyOutput() PolicyVMRetentionDailyOutput

func (PolicyVMRetentionDailyOutput) ToPolicyVMRetentionDailyOutputWithContext

func (o PolicyVMRetentionDailyOutput) ToPolicyVMRetentionDailyOutputWithContext(ctx context.Context) PolicyVMRetentionDailyOutput

func (PolicyVMRetentionDailyOutput) ToPolicyVMRetentionDailyPtrOutput

func (o PolicyVMRetentionDailyOutput) ToPolicyVMRetentionDailyPtrOutput() PolicyVMRetentionDailyPtrOutput

func (PolicyVMRetentionDailyOutput) ToPolicyVMRetentionDailyPtrOutputWithContext

func (o PolicyVMRetentionDailyOutput) ToPolicyVMRetentionDailyPtrOutputWithContext(ctx context.Context) PolicyVMRetentionDailyPtrOutput

type PolicyVMRetentionDailyPtrInput

type PolicyVMRetentionDailyPtrInput interface {
	pulumi.Input

	ToPolicyVMRetentionDailyPtrOutput() PolicyVMRetentionDailyPtrOutput
	ToPolicyVMRetentionDailyPtrOutputWithContext(context.Context) PolicyVMRetentionDailyPtrOutput
}

PolicyVMRetentionDailyPtrInput is an input type that accepts PolicyVMRetentionDailyArgs, PolicyVMRetentionDailyPtr and PolicyVMRetentionDailyPtrOutput values. You can construct a concrete instance of `PolicyVMRetentionDailyPtrInput` via:

        PolicyVMRetentionDailyArgs{...}

or:

        nil

type PolicyVMRetentionDailyPtrOutput

type PolicyVMRetentionDailyPtrOutput struct{ *pulumi.OutputState }

func (PolicyVMRetentionDailyPtrOutput) Count

The number of yearly backups to keep. Must be between `1` and `9999`

func (PolicyVMRetentionDailyPtrOutput) Elem

func (PolicyVMRetentionDailyPtrOutput) ElementType

func (PolicyVMRetentionDailyPtrOutput) ToPolicyVMRetentionDailyPtrOutput

func (o PolicyVMRetentionDailyPtrOutput) ToPolicyVMRetentionDailyPtrOutput() PolicyVMRetentionDailyPtrOutput

func (PolicyVMRetentionDailyPtrOutput) ToPolicyVMRetentionDailyPtrOutputWithContext

func (o PolicyVMRetentionDailyPtrOutput) ToPolicyVMRetentionDailyPtrOutputWithContext(ctx context.Context) PolicyVMRetentionDailyPtrOutput

type PolicyVMRetentionMonthly

type PolicyVMRetentionMonthly struct {
	// The number of yearly backups to keep. Must be between `1` and `9999`
	Count int `pulumi:"count"`
	// The weekday backups to retain . Must be one of `Sunday`, `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday` or `Saturday`.
	Weekdays []string `pulumi:"weekdays"`
	// The weeks of the month to retain backups of. Must be one of `First`, `Second`, `Third`, `Fourth`, `Last`.
	Weeks []string `pulumi:"weeks"`
}

type PolicyVMRetentionMonthlyArgs

type PolicyVMRetentionMonthlyArgs struct {
	// The number of yearly backups to keep. Must be between `1` and `9999`
	Count pulumi.IntInput `pulumi:"count"`
	// The weekday backups to retain . Must be one of `Sunday`, `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday` or `Saturday`.
	Weekdays pulumi.StringArrayInput `pulumi:"weekdays"`
	// The weeks of the month to retain backups of. Must be one of `First`, `Second`, `Third`, `Fourth`, `Last`.
	Weeks pulumi.StringArrayInput `pulumi:"weeks"`
}

func (PolicyVMRetentionMonthlyArgs) ElementType

func (PolicyVMRetentionMonthlyArgs) ToPolicyVMRetentionMonthlyOutput

func (i PolicyVMRetentionMonthlyArgs) ToPolicyVMRetentionMonthlyOutput() PolicyVMRetentionMonthlyOutput

func (PolicyVMRetentionMonthlyArgs) ToPolicyVMRetentionMonthlyOutputWithContext

func (i PolicyVMRetentionMonthlyArgs) ToPolicyVMRetentionMonthlyOutputWithContext(ctx context.Context) PolicyVMRetentionMonthlyOutput

func (PolicyVMRetentionMonthlyArgs) ToPolicyVMRetentionMonthlyPtrOutput

func (i PolicyVMRetentionMonthlyArgs) ToPolicyVMRetentionMonthlyPtrOutput() PolicyVMRetentionMonthlyPtrOutput

func (PolicyVMRetentionMonthlyArgs) ToPolicyVMRetentionMonthlyPtrOutputWithContext

func (i PolicyVMRetentionMonthlyArgs) ToPolicyVMRetentionMonthlyPtrOutputWithContext(ctx context.Context) PolicyVMRetentionMonthlyPtrOutput

type PolicyVMRetentionMonthlyInput

type PolicyVMRetentionMonthlyInput interface {
	pulumi.Input

	ToPolicyVMRetentionMonthlyOutput() PolicyVMRetentionMonthlyOutput
	ToPolicyVMRetentionMonthlyOutputWithContext(context.Context) PolicyVMRetentionMonthlyOutput
}

PolicyVMRetentionMonthlyInput is an input type that accepts PolicyVMRetentionMonthlyArgs and PolicyVMRetentionMonthlyOutput values. You can construct a concrete instance of `PolicyVMRetentionMonthlyInput` via:

PolicyVMRetentionMonthlyArgs{...}

type PolicyVMRetentionMonthlyOutput

type PolicyVMRetentionMonthlyOutput struct{ *pulumi.OutputState }

func (PolicyVMRetentionMonthlyOutput) Count

The number of yearly backups to keep. Must be between `1` and `9999`

func (PolicyVMRetentionMonthlyOutput) ElementType

func (PolicyVMRetentionMonthlyOutput) ToPolicyVMRetentionMonthlyOutput

func (o PolicyVMRetentionMonthlyOutput) ToPolicyVMRetentionMonthlyOutput() PolicyVMRetentionMonthlyOutput

func (PolicyVMRetentionMonthlyOutput) ToPolicyVMRetentionMonthlyOutputWithContext

func (o PolicyVMRetentionMonthlyOutput) ToPolicyVMRetentionMonthlyOutputWithContext(ctx context.Context) PolicyVMRetentionMonthlyOutput

func (PolicyVMRetentionMonthlyOutput) ToPolicyVMRetentionMonthlyPtrOutput

func (o PolicyVMRetentionMonthlyOutput) ToPolicyVMRetentionMonthlyPtrOutput() PolicyVMRetentionMonthlyPtrOutput

func (PolicyVMRetentionMonthlyOutput) ToPolicyVMRetentionMonthlyPtrOutputWithContext

func (o PolicyVMRetentionMonthlyOutput) ToPolicyVMRetentionMonthlyPtrOutputWithContext(ctx context.Context) PolicyVMRetentionMonthlyPtrOutput

func (PolicyVMRetentionMonthlyOutput) Weekdays

The weekday backups to retain . Must be one of `Sunday`, `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday` or `Saturday`.

func (PolicyVMRetentionMonthlyOutput) Weeks

The weeks of the month to retain backups of. Must be one of `First`, `Second`, `Third`, `Fourth`, `Last`.

type PolicyVMRetentionMonthlyPtrInput

type PolicyVMRetentionMonthlyPtrInput interface {
	pulumi.Input

	ToPolicyVMRetentionMonthlyPtrOutput() PolicyVMRetentionMonthlyPtrOutput
	ToPolicyVMRetentionMonthlyPtrOutputWithContext(context.Context) PolicyVMRetentionMonthlyPtrOutput
}

PolicyVMRetentionMonthlyPtrInput is an input type that accepts PolicyVMRetentionMonthlyArgs, PolicyVMRetentionMonthlyPtr and PolicyVMRetentionMonthlyPtrOutput values. You can construct a concrete instance of `PolicyVMRetentionMonthlyPtrInput` via:

        PolicyVMRetentionMonthlyArgs{...}

or:

        nil

type PolicyVMRetentionMonthlyPtrOutput

type PolicyVMRetentionMonthlyPtrOutput struct{ *pulumi.OutputState }

func (PolicyVMRetentionMonthlyPtrOutput) Count

The number of yearly backups to keep. Must be between `1` and `9999`

func (PolicyVMRetentionMonthlyPtrOutput) Elem

func (PolicyVMRetentionMonthlyPtrOutput) ElementType

func (PolicyVMRetentionMonthlyPtrOutput) ToPolicyVMRetentionMonthlyPtrOutput

func (o PolicyVMRetentionMonthlyPtrOutput) ToPolicyVMRetentionMonthlyPtrOutput() PolicyVMRetentionMonthlyPtrOutput

func (PolicyVMRetentionMonthlyPtrOutput) ToPolicyVMRetentionMonthlyPtrOutputWithContext

func (o PolicyVMRetentionMonthlyPtrOutput) ToPolicyVMRetentionMonthlyPtrOutputWithContext(ctx context.Context) PolicyVMRetentionMonthlyPtrOutput

func (PolicyVMRetentionMonthlyPtrOutput) Weekdays

The weekday backups to retain . Must be one of `Sunday`, `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday` or `Saturday`.

func (PolicyVMRetentionMonthlyPtrOutput) Weeks

The weeks of the month to retain backups of. Must be one of `First`, `Second`, `Third`, `Fourth`, `Last`.

type PolicyVMRetentionWeekly

type PolicyVMRetentionWeekly struct {
	// The number of yearly backups to keep. Must be between `1` and `9999`
	Count int `pulumi:"count"`
	// The weekday backups to retain . Must be one of `Sunday`, `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday` or `Saturday`.
	Weekdays []string `pulumi:"weekdays"`
}

type PolicyVMRetentionWeeklyArgs

type PolicyVMRetentionWeeklyArgs struct {
	// The number of yearly backups to keep. Must be between `1` and `9999`
	Count pulumi.IntInput `pulumi:"count"`
	// The weekday backups to retain . Must be one of `Sunday`, `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday` or `Saturday`.
	Weekdays pulumi.StringArrayInput `pulumi:"weekdays"`
}

func (PolicyVMRetentionWeeklyArgs) ElementType

func (PolicyVMRetentionWeeklyArgs) ToPolicyVMRetentionWeeklyOutput

func (i PolicyVMRetentionWeeklyArgs) ToPolicyVMRetentionWeeklyOutput() PolicyVMRetentionWeeklyOutput

func (PolicyVMRetentionWeeklyArgs) ToPolicyVMRetentionWeeklyOutputWithContext

func (i PolicyVMRetentionWeeklyArgs) ToPolicyVMRetentionWeeklyOutputWithContext(ctx context.Context) PolicyVMRetentionWeeklyOutput

func (PolicyVMRetentionWeeklyArgs) ToPolicyVMRetentionWeeklyPtrOutput

func (i PolicyVMRetentionWeeklyArgs) ToPolicyVMRetentionWeeklyPtrOutput() PolicyVMRetentionWeeklyPtrOutput

func (PolicyVMRetentionWeeklyArgs) ToPolicyVMRetentionWeeklyPtrOutputWithContext

func (i PolicyVMRetentionWeeklyArgs) ToPolicyVMRetentionWeeklyPtrOutputWithContext(ctx context.Context) PolicyVMRetentionWeeklyPtrOutput

type PolicyVMRetentionWeeklyInput

type PolicyVMRetentionWeeklyInput interface {
	pulumi.Input

	ToPolicyVMRetentionWeeklyOutput() PolicyVMRetentionWeeklyOutput
	ToPolicyVMRetentionWeeklyOutputWithContext(context.Context) PolicyVMRetentionWeeklyOutput
}

PolicyVMRetentionWeeklyInput is an input type that accepts PolicyVMRetentionWeeklyArgs and PolicyVMRetentionWeeklyOutput values. You can construct a concrete instance of `PolicyVMRetentionWeeklyInput` via:

PolicyVMRetentionWeeklyArgs{...}

type PolicyVMRetentionWeeklyOutput

type PolicyVMRetentionWeeklyOutput struct{ *pulumi.OutputState }

func (PolicyVMRetentionWeeklyOutput) Count

The number of yearly backups to keep. Must be between `1` and `9999`

func (PolicyVMRetentionWeeklyOutput) ElementType

func (PolicyVMRetentionWeeklyOutput) ToPolicyVMRetentionWeeklyOutput

func (o PolicyVMRetentionWeeklyOutput) ToPolicyVMRetentionWeeklyOutput() PolicyVMRetentionWeeklyOutput

func (PolicyVMRetentionWeeklyOutput) ToPolicyVMRetentionWeeklyOutputWithContext

func (o PolicyVMRetentionWeeklyOutput) ToPolicyVMRetentionWeeklyOutputWithContext(ctx context.Context) PolicyVMRetentionWeeklyOutput

func (PolicyVMRetentionWeeklyOutput) ToPolicyVMRetentionWeeklyPtrOutput

func (o PolicyVMRetentionWeeklyOutput) ToPolicyVMRetentionWeeklyPtrOutput() PolicyVMRetentionWeeklyPtrOutput

func (PolicyVMRetentionWeeklyOutput) ToPolicyVMRetentionWeeklyPtrOutputWithContext

func (o PolicyVMRetentionWeeklyOutput) ToPolicyVMRetentionWeeklyPtrOutputWithContext(ctx context.Context) PolicyVMRetentionWeeklyPtrOutput

func (PolicyVMRetentionWeeklyOutput) Weekdays

The weekday backups to retain . Must be one of `Sunday`, `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday` or `Saturday`.

type PolicyVMRetentionWeeklyPtrInput

type PolicyVMRetentionWeeklyPtrInput interface {
	pulumi.Input

	ToPolicyVMRetentionWeeklyPtrOutput() PolicyVMRetentionWeeklyPtrOutput
	ToPolicyVMRetentionWeeklyPtrOutputWithContext(context.Context) PolicyVMRetentionWeeklyPtrOutput
}

PolicyVMRetentionWeeklyPtrInput is an input type that accepts PolicyVMRetentionWeeklyArgs, PolicyVMRetentionWeeklyPtr and PolicyVMRetentionWeeklyPtrOutput values. You can construct a concrete instance of `PolicyVMRetentionWeeklyPtrInput` via:

        PolicyVMRetentionWeeklyArgs{...}

or:

        nil

type PolicyVMRetentionWeeklyPtrOutput

type PolicyVMRetentionWeeklyPtrOutput struct{ *pulumi.OutputState }

func (PolicyVMRetentionWeeklyPtrOutput) Count

The number of yearly backups to keep. Must be between `1` and `9999`

func (PolicyVMRetentionWeeklyPtrOutput) Elem

func (PolicyVMRetentionWeeklyPtrOutput) ElementType

func (PolicyVMRetentionWeeklyPtrOutput) ToPolicyVMRetentionWeeklyPtrOutput

func (o PolicyVMRetentionWeeklyPtrOutput) ToPolicyVMRetentionWeeklyPtrOutput() PolicyVMRetentionWeeklyPtrOutput

func (PolicyVMRetentionWeeklyPtrOutput) ToPolicyVMRetentionWeeklyPtrOutputWithContext

func (o PolicyVMRetentionWeeklyPtrOutput) ToPolicyVMRetentionWeeklyPtrOutputWithContext(ctx context.Context) PolicyVMRetentionWeeklyPtrOutput

func (PolicyVMRetentionWeeklyPtrOutput) Weekdays

The weekday backups to retain . Must be one of `Sunday`, `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday` or `Saturday`.

type PolicyVMRetentionYearly

type PolicyVMRetentionYearly struct {
	// The number of yearly backups to keep. Must be between `1` and `9999`
	Count int `pulumi:"count"`
	// The months of the year to retain backups of. Must be one of `January`, `February`, `March`, `April`, `May`, `June`, `July`, `Augest`, `September`, `October`, `November` and `December`.
	Months []string `pulumi:"months"`
	// The weekday backups to retain . Must be one of `Sunday`, `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday` or `Saturday`.
	Weekdays []string `pulumi:"weekdays"`
	// The weeks of the month to retain backups of. Must be one of `First`, `Second`, `Third`, `Fourth`, `Last`.
	Weeks []string `pulumi:"weeks"`
}

type PolicyVMRetentionYearlyArgs

type PolicyVMRetentionYearlyArgs struct {
	// The number of yearly backups to keep. Must be between `1` and `9999`
	Count pulumi.IntInput `pulumi:"count"`
	// The months of the year to retain backups of. Must be one of `January`, `February`, `March`, `April`, `May`, `June`, `July`, `Augest`, `September`, `October`, `November` and `December`.
	Months pulumi.StringArrayInput `pulumi:"months"`
	// The weekday backups to retain . Must be one of `Sunday`, `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday` or `Saturday`.
	Weekdays pulumi.StringArrayInput `pulumi:"weekdays"`
	// The weeks of the month to retain backups of. Must be one of `First`, `Second`, `Third`, `Fourth`, `Last`.
	Weeks pulumi.StringArrayInput `pulumi:"weeks"`
}

func (PolicyVMRetentionYearlyArgs) ElementType

func (PolicyVMRetentionYearlyArgs) ToPolicyVMRetentionYearlyOutput

func (i PolicyVMRetentionYearlyArgs) ToPolicyVMRetentionYearlyOutput() PolicyVMRetentionYearlyOutput

func (PolicyVMRetentionYearlyArgs) ToPolicyVMRetentionYearlyOutputWithContext

func (i PolicyVMRetentionYearlyArgs) ToPolicyVMRetentionYearlyOutputWithContext(ctx context.Context) PolicyVMRetentionYearlyOutput

func (PolicyVMRetentionYearlyArgs) ToPolicyVMRetentionYearlyPtrOutput

func (i PolicyVMRetentionYearlyArgs) ToPolicyVMRetentionYearlyPtrOutput() PolicyVMRetentionYearlyPtrOutput

func (PolicyVMRetentionYearlyArgs) ToPolicyVMRetentionYearlyPtrOutputWithContext

func (i PolicyVMRetentionYearlyArgs) ToPolicyVMRetentionYearlyPtrOutputWithContext(ctx context.Context) PolicyVMRetentionYearlyPtrOutput

type PolicyVMRetentionYearlyInput

type PolicyVMRetentionYearlyInput interface {
	pulumi.Input

	ToPolicyVMRetentionYearlyOutput() PolicyVMRetentionYearlyOutput
	ToPolicyVMRetentionYearlyOutputWithContext(context.Context) PolicyVMRetentionYearlyOutput
}

PolicyVMRetentionYearlyInput is an input type that accepts PolicyVMRetentionYearlyArgs and PolicyVMRetentionYearlyOutput values. You can construct a concrete instance of `PolicyVMRetentionYearlyInput` via:

PolicyVMRetentionYearlyArgs{...}

type PolicyVMRetentionYearlyOutput

type PolicyVMRetentionYearlyOutput struct{ *pulumi.OutputState }

func (PolicyVMRetentionYearlyOutput) Count

The number of yearly backups to keep. Must be between `1` and `9999`

func (PolicyVMRetentionYearlyOutput) ElementType

func (PolicyVMRetentionYearlyOutput) Months

The months of the year to retain backups of. Must be one of `January`, `February`, `March`, `April`, `May`, `June`, `July`, `Augest`, `September`, `October`, `November` and `December`.

func (PolicyVMRetentionYearlyOutput) ToPolicyVMRetentionYearlyOutput

func (o PolicyVMRetentionYearlyOutput) ToPolicyVMRetentionYearlyOutput() PolicyVMRetentionYearlyOutput

func (PolicyVMRetentionYearlyOutput) ToPolicyVMRetentionYearlyOutputWithContext

func (o PolicyVMRetentionYearlyOutput) ToPolicyVMRetentionYearlyOutputWithContext(ctx context.Context) PolicyVMRetentionYearlyOutput

func (PolicyVMRetentionYearlyOutput) ToPolicyVMRetentionYearlyPtrOutput

func (o PolicyVMRetentionYearlyOutput) ToPolicyVMRetentionYearlyPtrOutput() PolicyVMRetentionYearlyPtrOutput

func (PolicyVMRetentionYearlyOutput) ToPolicyVMRetentionYearlyPtrOutputWithContext

func (o PolicyVMRetentionYearlyOutput) ToPolicyVMRetentionYearlyPtrOutputWithContext(ctx context.Context) PolicyVMRetentionYearlyPtrOutput

func (PolicyVMRetentionYearlyOutput) Weekdays

The weekday backups to retain . Must be one of `Sunday`, `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday` or `Saturday`.

func (PolicyVMRetentionYearlyOutput) Weeks

The weeks of the month to retain backups of. Must be one of `First`, `Second`, `Third`, `Fourth`, `Last`.

type PolicyVMRetentionYearlyPtrInput

type PolicyVMRetentionYearlyPtrInput interface {
	pulumi.Input

	ToPolicyVMRetentionYearlyPtrOutput() PolicyVMRetentionYearlyPtrOutput
	ToPolicyVMRetentionYearlyPtrOutputWithContext(context.Context) PolicyVMRetentionYearlyPtrOutput
}

PolicyVMRetentionYearlyPtrInput is an input type that accepts PolicyVMRetentionYearlyArgs, PolicyVMRetentionYearlyPtr and PolicyVMRetentionYearlyPtrOutput values. You can construct a concrete instance of `PolicyVMRetentionYearlyPtrInput` via:

        PolicyVMRetentionYearlyArgs{...}

or:

        nil

type PolicyVMRetentionYearlyPtrOutput

type PolicyVMRetentionYearlyPtrOutput struct{ *pulumi.OutputState }

func (PolicyVMRetentionYearlyPtrOutput) Count

The number of yearly backups to keep. Must be between `1` and `9999`

func (PolicyVMRetentionYearlyPtrOutput) Elem

func (PolicyVMRetentionYearlyPtrOutput) ElementType

func (PolicyVMRetentionYearlyPtrOutput) Months

The months of the year to retain backups of. Must be one of `January`, `February`, `March`, `April`, `May`, `June`, `July`, `Augest`, `September`, `October`, `November` and `December`.

func (PolicyVMRetentionYearlyPtrOutput) ToPolicyVMRetentionYearlyPtrOutput

func (o PolicyVMRetentionYearlyPtrOutput) ToPolicyVMRetentionYearlyPtrOutput() PolicyVMRetentionYearlyPtrOutput

func (PolicyVMRetentionYearlyPtrOutput) ToPolicyVMRetentionYearlyPtrOutputWithContext

func (o PolicyVMRetentionYearlyPtrOutput) ToPolicyVMRetentionYearlyPtrOutputWithContext(ctx context.Context) PolicyVMRetentionYearlyPtrOutput

func (PolicyVMRetentionYearlyPtrOutput) Weekdays

The weekday backups to retain . Must be one of `Sunday`, `Monday`, `Tuesday`, `Wednesday`, `Thursday`, `Friday` or `Saturday`.

func (PolicyVMRetentionYearlyPtrOutput) Weeks

The weeks of the month to retain backups of. Must be one of `First`, `Second`, `Third`, `Fourth`, `Last`.

type PolicyVMState

type PolicyVMState struct {
	// Configures the Policy backup frequency, times & days as documented in the `backup` block below.
	Backup PolicyVMBackupPtrInput
	// Specifies the instant restore retention range in days.
	InstantRestoreRetentionDays pulumi.IntPtrInput
	// Specifies the name of the Backup Policy. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringPtrInput
	// The name of the resource group in which to create the policy. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// Configures the policy daily retention as documented in the `retentionDaily` block below. Required when backup frequency is `Daily`.
	RetentionDaily PolicyVMRetentionDailyPtrInput
	// Configures the policy monthly retention as documented in the `retentionMonthly` block below.
	RetentionMonthly PolicyVMRetentionMonthlyPtrInput
	// Configures the policy weekly retention as documented in the `retentionWeekly` block below. Required when backup frequency is `Weekly`.
	RetentionWeekly PolicyVMRetentionWeeklyPtrInput
	// Configures the policy yearly retention as documented in the `retentionYearly` block below.
	RetentionYearly PolicyVMRetentionYearlyPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Specifies the timezone. [the possible values are defined here](http://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/). Defaults to `UTC`
	Timezone pulumi.StringPtrInput
}

func (PolicyVMState) ElementType

func (PolicyVMState) ElementType() reflect.Type

type ProtectedFileShare

type ProtectedFileShare struct {
	pulumi.CustomResourceState

	// Specifies the ID of the backup policy to use. The policy must be an Azure File Share backup policy. Other types are not supported.
	BackupPolicyId pulumi.StringOutput `pulumi:"backupPolicyId"`
	// Specifies the name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"`
	// The name of the resource group in which to create the Azure Backup Protected File Share. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// Specifies the name of the file share to backup. Changing this forces a new resource to be created.
	SourceFileShareName pulumi.StringOutput `pulumi:"sourceFileShareName"`
	// Specifies the ID of the storage account of the file share to backup. Changing this forces a new resource to be created.
	SourceStorageAccountId pulumi.StringOutput `pulumi:"sourceStorageAccountId"`
}

Manages an Azure Backup Protected File Share to enable backups for file shares within an Azure Storage Account

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/backup"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/recoveryservices"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/storage"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		rg, err := core.NewResourceGroup(ctx, "rg", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		vault, err := recoveryservices.NewVault(ctx, "vault", &recoveryservices.VaultArgs{
			Location:          rg.Location,
			ResourceGroupName: rg.Name,
			Sku:               pulumi.String("Standard"),
		})
		if err != nil {
			return err
		}
		sa, err := storage.NewAccount(ctx, "sa", &storage.AccountArgs{
			Location:               rg.Location,
			ResourceGroupName:      rg.Name,
			AccountTier:            pulumi.String("Standard"),
			AccountReplicationType: pulumi.String("LRS"),
		})
		if err != nil {
			return err
		}
		exampleShare, err := storage.NewShare(ctx, "exampleShare", &storage.ShareArgs{
			StorageAccountName: sa.Name,
		})
		if err != nil {
			return err
		}
		_, err = backup.NewContainerStorageAccount(ctx, "protection_container", &backup.ContainerStorageAccountArgs{
			ResourceGroupName: rg.Name,
			RecoveryVaultName: vault.Name,
			StorageAccountId:  sa.ID(),
		})
		if err != nil {
			return err
		}
		examplePolicyFileShare, err := backup.NewPolicyFileShare(ctx, "examplePolicyFileShare", &backup.PolicyFileShareArgs{
			ResourceGroupName: rg.Name,
			RecoveryVaultName: vault.Name,
			Backup: &backup.PolicyFileShareBackupArgs{
				Frequency: pulumi.String("Daily"),
				Time:      pulumi.String("23:00"),
			},
			RetentionDaily: &backup.PolicyFileShareRetentionDailyArgs{
				Count: pulumi.Int(10),
			},
		})
		if err != nil {
			return err
		}
		_, err = backup.NewProtectedFileShare(ctx, "share1", &backup.ProtectedFileShareArgs{
			ResourceGroupName:      rg.Name,
			RecoveryVaultName:      vault.Name,
			SourceStorageAccountId: protection_container.StorageAccountId,
			SourceFileShareName:    exampleShare.Name,
			BackupPolicyId:         examplePolicyFileShare.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Azure Backup Protected File Shares can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:backup/protectedFileShare:ProtectedFileShare item1 "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.RecoveryServices/vaults/example-recovery-vault/backupFabrics/Azure/protectionContainers/StorageContainer;storage;group2;example-storage-account/protectedItems/AzureFileShare;3f6e3108a45793581bcbd1c61c87a3b2ceeb4ff4bc02a95ce9d1022b23722935"

```

-> **NOTE** The ID requires quoting as there are semicolons. This user unfriendly ID can be found in the Deployments of the used resourcegroup, look for an Deployment which starts with `ConfigureAFSProtection-`, click then `Go to resource`.

func GetProtectedFileShare

func GetProtectedFileShare(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProtectedFileShareState, opts ...pulumi.ResourceOption) (*ProtectedFileShare, error)

GetProtectedFileShare gets an existing ProtectedFileShare 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 NewProtectedFileShare

func NewProtectedFileShare(ctx *pulumi.Context,
	name string, args *ProtectedFileShareArgs, opts ...pulumi.ResourceOption) (*ProtectedFileShare, error)

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

func (*ProtectedFileShare) ElementType added in v3.31.1

func (*ProtectedFileShare) ElementType() reflect.Type

func (*ProtectedFileShare) ToProtectedFileShareOutput added in v3.31.1

func (i *ProtectedFileShare) ToProtectedFileShareOutput() ProtectedFileShareOutput

func (*ProtectedFileShare) ToProtectedFileShareOutputWithContext added in v3.31.1

func (i *ProtectedFileShare) ToProtectedFileShareOutputWithContext(ctx context.Context) ProtectedFileShareOutput

func (*ProtectedFileShare) ToProtectedFileSharePtrOutput added in v3.47.1

func (i *ProtectedFileShare) ToProtectedFileSharePtrOutput() ProtectedFileSharePtrOutput

func (*ProtectedFileShare) ToProtectedFileSharePtrOutputWithContext added in v3.47.1

func (i *ProtectedFileShare) ToProtectedFileSharePtrOutputWithContext(ctx context.Context) ProtectedFileSharePtrOutput

type ProtectedFileShareArgs

type ProtectedFileShareArgs struct {
	// Specifies the ID of the backup policy to use. The policy must be an Azure File Share backup policy. Other types are not supported.
	BackupPolicyId pulumi.StringInput
	// Specifies the name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringInput
	// The name of the resource group in which to create the Azure Backup Protected File Share. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// Specifies the name of the file share to backup. Changing this forces a new resource to be created.
	SourceFileShareName pulumi.StringInput
	// Specifies the ID of the storage account of the file share to backup. Changing this forces a new resource to be created.
	SourceStorageAccountId pulumi.StringInput
}

The set of arguments for constructing a ProtectedFileShare resource.

func (ProtectedFileShareArgs) ElementType

func (ProtectedFileShareArgs) ElementType() reflect.Type

type ProtectedFileShareArray added in v3.47.1

type ProtectedFileShareArray []ProtectedFileShareInput

func (ProtectedFileShareArray) ElementType added in v3.47.1

func (ProtectedFileShareArray) ElementType() reflect.Type

func (ProtectedFileShareArray) ToProtectedFileShareArrayOutput added in v3.47.1

func (i ProtectedFileShareArray) ToProtectedFileShareArrayOutput() ProtectedFileShareArrayOutput

func (ProtectedFileShareArray) ToProtectedFileShareArrayOutputWithContext added in v3.47.1

func (i ProtectedFileShareArray) ToProtectedFileShareArrayOutputWithContext(ctx context.Context) ProtectedFileShareArrayOutput

type ProtectedFileShareArrayInput added in v3.47.1

type ProtectedFileShareArrayInput interface {
	pulumi.Input

	ToProtectedFileShareArrayOutput() ProtectedFileShareArrayOutput
	ToProtectedFileShareArrayOutputWithContext(context.Context) ProtectedFileShareArrayOutput
}

ProtectedFileShareArrayInput is an input type that accepts ProtectedFileShareArray and ProtectedFileShareArrayOutput values. You can construct a concrete instance of `ProtectedFileShareArrayInput` via:

ProtectedFileShareArray{ ProtectedFileShareArgs{...} }

type ProtectedFileShareArrayOutput added in v3.47.1

type ProtectedFileShareArrayOutput struct{ *pulumi.OutputState }

func (ProtectedFileShareArrayOutput) ElementType added in v3.47.1

func (ProtectedFileShareArrayOutput) Index added in v3.47.1

func (ProtectedFileShareArrayOutput) ToProtectedFileShareArrayOutput added in v3.47.1

func (o ProtectedFileShareArrayOutput) ToProtectedFileShareArrayOutput() ProtectedFileShareArrayOutput

func (ProtectedFileShareArrayOutput) ToProtectedFileShareArrayOutputWithContext added in v3.47.1

func (o ProtectedFileShareArrayOutput) ToProtectedFileShareArrayOutputWithContext(ctx context.Context) ProtectedFileShareArrayOutput

type ProtectedFileShareInput added in v3.31.1

type ProtectedFileShareInput interface {
	pulumi.Input

	ToProtectedFileShareOutput() ProtectedFileShareOutput
	ToProtectedFileShareOutputWithContext(ctx context.Context) ProtectedFileShareOutput
}

type ProtectedFileShareMap added in v3.47.1

type ProtectedFileShareMap map[string]ProtectedFileShareInput

func (ProtectedFileShareMap) ElementType added in v3.47.1

func (ProtectedFileShareMap) ElementType() reflect.Type

func (ProtectedFileShareMap) ToProtectedFileShareMapOutput added in v3.47.1

func (i ProtectedFileShareMap) ToProtectedFileShareMapOutput() ProtectedFileShareMapOutput

func (ProtectedFileShareMap) ToProtectedFileShareMapOutputWithContext added in v3.47.1

func (i ProtectedFileShareMap) ToProtectedFileShareMapOutputWithContext(ctx context.Context) ProtectedFileShareMapOutput

type ProtectedFileShareMapInput added in v3.47.1

type ProtectedFileShareMapInput interface {
	pulumi.Input

	ToProtectedFileShareMapOutput() ProtectedFileShareMapOutput
	ToProtectedFileShareMapOutputWithContext(context.Context) ProtectedFileShareMapOutput
}

ProtectedFileShareMapInput is an input type that accepts ProtectedFileShareMap and ProtectedFileShareMapOutput values. You can construct a concrete instance of `ProtectedFileShareMapInput` via:

ProtectedFileShareMap{ "key": ProtectedFileShareArgs{...} }

type ProtectedFileShareMapOutput added in v3.47.1

type ProtectedFileShareMapOutput struct{ *pulumi.OutputState }

func (ProtectedFileShareMapOutput) ElementType added in v3.47.1

func (ProtectedFileShareMapOutput) MapIndex added in v3.47.1

func (ProtectedFileShareMapOutput) ToProtectedFileShareMapOutput added in v3.47.1

func (o ProtectedFileShareMapOutput) ToProtectedFileShareMapOutput() ProtectedFileShareMapOutput

func (ProtectedFileShareMapOutput) ToProtectedFileShareMapOutputWithContext added in v3.47.1

func (o ProtectedFileShareMapOutput) ToProtectedFileShareMapOutputWithContext(ctx context.Context) ProtectedFileShareMapOutput

type ProtectedFileShareOutput added in v3.31.1

type ProtectedFileShareOutput struct {
	*pulumi.OutputState
}

func (ProtectedFileShareOutput) ElementType added in v3.31.1

func (ProtectedFileShareOutput) ElementType() reflect.Type

func (ProtectedFileShareOutput) ToProtectedFileShareOutput added in v3.31.1

func (o ProtectedFileShareOutput) ToProtectedFileShareOutput() ProtectedFileShareOutput

func (ProtectedFileShareOutput) ToProtectedFileShareOutputWithContext added in v3.31.1

func (o ProtectedFileShareOutput) ToProtectedFileShareOutputWithContext(ctx context.Context) ProtectedFileShareOutput

func (ProtectedFileShareOutput) ToProtectedFileSharePtrOutput added in v3.47.1

func (o ProtectedFileShareOutput) ToProtectedFileSharePtrOutput() ProtectedFileSharePtrOutput

func (ProtectedFileShareOutput) ToProtectedFileSharePtrOutputWithContext added in v3.47.1

func (o ProtectedFileShareOutput) ToProtectedFileSharePtrOutputWithContext(ctx context.Context) ProtectedFileSharePtrOutput

type ProtectedFileSharePtrInput added in v3.47.1

type ProtectedFileSharePtrInput interface {
	pulumi.Input

	ToProtectedFileSharePtrOutput() ProtectedFileSharePtrOutput
	ToProtectedFileSharePtrOutputWithContext(ctx context.Context) ProtectedFileSharePtrOutput
}

type ProtectedFileSharePtrOutput added in v3.47.1

type ProtectedFileSharePtrOutput struct {
	*pulumi.OutputState
}

func (ProtectedFileSharePtrOutput) ElementType added in v3.47.1

func (ProtectedFileSharePtrOutput) ToProtectedFileSharePtrOutput added in v3.47.1

func (o ProtectedFileSharePtrOutput) ToProtectedFileSharePtrOutput() ProtectedFileSharePtrOutput

func (ProtectedFileSharePtrOutput) ToProtectedFileSharePtrOutputWithContext added in v3.47.1

func (o ProtectedFileSharePtrOutput) ToProtectedFileSharePtrOutputWithContext(ctx context.Context) ProtectedFileSharePtrOutput

type ProtectedFileShareState

type ProtectedFileShareState struct {
	// Specifies the ID of the backup policy to use. The policy must be an Azure File Share backup policy. Other types are not supported.
	BackupPolicyId pulumi.StringPtrInput
	// Specifies the name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringPtrInput
	// The name of the resource group in which to create the Azure Backup Protected File Share. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// Specifies the name of the file share to backup. Changing this forces a new resource to be created.
	SourceFileShareName pulumi.StringPtrInput
	// Specifies the ID of the storage account of the file share to backup. Changing this forces a new resource to be created.
	SourceStorageAccountId pulumi.StringPtrInput
}

func (ProtectedFileShareState) ElementType

func (ProtectedFileShareState) ElementType() reflect.Type

type ProtectedVM

type ProtectedVM struct {
	pulumi.CustomResourceState

	// Specifies the id of the backup policy to use.
	BackupPolicyId pulumi.StringOutput `pulumi:"backupPolicyId"`
	// Specifies the name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"`
	// The name of the resource group in which to create the Recovery Services Vault. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// Specifies the ID of the VM to backup. Changing this forces a new resource to be created.
	SourceVmId pulumi.StringOutput `pulumi:"sourceVmId"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Manages Azure Backup for an Azure VM

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/backup"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/recoveryservices"
"github.com/pulumi/pulumi/sdk/v2/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
		}
		exampleVault, err := recoveryservices.NewVault(ctx, "exampleVault", &recoveryservices.VaultArgs{
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			Sku:               pulumi.String("Standard"),
		})
		if err != nil {
			return err
		}
		examplePolicyVM, err := backup.NewPolicyVM(ctx, "examplePolicyVM", &backup.PolicyVMArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			RecoveryVaultName: exampleVault.Name,
			Backup: &backup.PolicyVMBackupArgs{
				Frequency: pulumi.String("Daily"),
				Time:      pulumi.String("23:00"),
			},
		})
		if err != nil {
			return err
		}
		_, err = backup.NewProtectedVM(ctx, "vm1", &backup.ProtectedVMArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			RecoveryVaultName: exampleVault.Name,
			SourceVmId:        pulumi.Any(azurerm_virtual_machine.Example.Id),
			BackupPolicyId:    examplePolicyVM.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Recovery Services Protected VMs can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:backup/protectedVM:ProtectedVM item1 "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.RecoveryServices/vaults/example-recovery-vault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;group1;vm1/protectedItems/vm;iaasvmcontainerv2;group1;vm1"

```

Note the ID requires quoting as there are semicolons

func GetProtectedVM

func GetProtectedVM(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProtectedVMState, opts ...pulumi.ResourceOption) (*ProtectedVM, error)

GetProtectedVM gets an existing ProtectedVM 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 NewProtectedVM

func NewProtectedVM(ctx *pulumi.Context,
	name string, args *ProtectedVMArgs, opts ...pulumi.ResourceOption) (*ProtectedVM, error)

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

func (*ProtectedVM) ElementType added in v3.31.1

func (*ProtectedVM) ElementType() reflect.Type

func (*ProtectedVM) ToProtectedVMOutput added in v3.31.1

func (i *ProtectedVM) ToProtectedVMOutput() ProtectedVMOutput

func (*ProtectedVM) ToProtectedVMOutputWithContext added in v3.31.1

func (i *ProtectedVM) ToProtectedVMOutputWithContext(ctx context.Context) ProtectedVMOutput

func (*ProtectedVM) ToProtectedVMPtrOutput added in v3.47.1

func (i *ProtectedVM) ToProtectedVMPtrOutput() ProtectedVMPtrOutput

func (*ProtectedVM) ToProtectedVMPtrOutputWithContext added in v3.47.1

func (i *ProtectedVM) ToProtectedVMPtrOutputWithContext(ctx context.Context) ProtectedVMPtrOutput

type ProtectedVMArgs

type ProtectedVMArgs struct {
	// Specifies the id of the backup policy to use.
	BackupPolicyId pulumi.StringInput
	// Specifies the name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringInput
	// The name of the resource group in which to create the Recovery Services Vault. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// Specifies the ID of the VM to backup. Changing this forces a new resource to be created.
	SourceVmId pulumi.StringInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ProtectedVM resource.

func (ProtectedVMArgs) ElementType

func (ProtectedVMArgs) ElementType() reflect.Type

type ProtectedVMArray added in v3.47.1

type ProtectedVMArray []ProtectedVMInput

func (ProtectedVMArray) ElementType added in v3.47.1

func (ProtectedVMArray) ElementType() reflect.Type

func (ProtectedVMArray) ToProtectedVMArrayOutput added in v3.47.1

func (i ProtectedVMArray) ToProtectedVMArrayOutput() ProtectedVMArrayOutput

func (ProtectedVMArray) ToProtectedVMArrayOutputWithContext added in v3.47.1

func (i ProtectedVMArray) ToProtectedVMArrayOutputWithContext(ctx context.Context) ProtectedVMArrayOutput

type ProtectedVMArrayInput added in v3.47.1

type ProtectedVMArrayInput interface {
	pulumi.Input

	ToProtectedVMArrayOutput() ProtectedVMArrayOutput
	ToProtectedVMArrayOutputWithContext(context.Context) ProtectedVMArrayOutput
}

ProtectedVMArrayInput is an input type that accepts ProtectedVMArray and ProtectedVMArrayOutput values. You can construct a concrete instance of `ProtectedVMArrayInput` via:

ProtectedVMArray{ ProtectedVMArgs{...} }

type ProtectedVMArrayOutput added in v3.47.1

type ProtectedVMArrayOutput struct{ *pulumi.OutputState }

func (ProtectedVMArrayOutput) ElementType added in v3.47.1

func (ProtectedVMArrayOutput) ElementType() reflect.Type

func (ProtectedVMArrayOutput) Index added in v3.47.1

func (ProtectedVMArrayOutput) ToProtectedVMArrayOutput added in v3.47.1

func (o ProtectedVMArrayOutput) ToProtectedVMArrayOutput() ProtectedVMArrayOutput

func (ProtectedVMArrayOutput) ToProtectedVMArrayOutputWithContext added in v3.47.1

func (o ProtectedVMArrayOutput) ToProtectedVMArrayOutputWithContext(ctx context.Context) ProtectedVMArrayOutput

type ProtectedVMInput added in v3.31.1

type ProtectedVMInput interface {
	pulumi.Input

	ToProtectedVMOutput() ProtectedVMOutput
	ToProtectedVMOutputWithContext(ctx context.Context) ProtectedVMOutput
}

type ProtectedVMMap added in v3.47.1

type ProtectedVMMap map[string]ProtectedVMInput

func (ProtectedVMMap) ElementType added in v3.47.1

func (ProtectedVMMap) ElementType() reflect.Type

func (ProtectedVMMap) ToProtectedVMMapOutput added in v3.47.1

func (i ProtectedVMMap) ToProtectedVMMapOutput() ProtectedVMMapOutput

func (ProtectedVMMap) ToProtectedVMMapOutputWithContext added in v3.47.1

func (i ProtectedVMMap) ToProtectedVMMapOutputWithContext(ctx context.Context) ProtectedVMMapOutput

type ProtectedVMMapInput added in v3.47.1

type ProtectedVMMapInput interface {
	pulumi.Input

	ToProtectedVMMapOutput() ProtectedVMMapOutput
	ToProtectedVMMapOutputWithContext(context.Context) ProtectedVMMapOutput
}

ProtectedVMMapInput is an input type that accepts ProtectedVMMap and ProtectedVMMapOutput values. You can construct a concrete instance of `ProtectedVMMapInput` via:

ProtectedVMMap{ "key": ProtectedVMArgs{...} }

type ProtectedVMMapOutput added in v3.47.1

type ProtectedVMMapOutput struct{ *pulumi.OutputState }

func (ProtectedVMMapOutput) ElementType added in v3.47.1

func (ProtectedVMMapOutput) ElementType() reflect.Type

func (ProtectedVMMapOutput) MapIndex added in v3.47.1

func (ProtectedVMMapOutput) ToProtectedVMMapOutput added in v3.47.1

func (o ProtectedVMMapOutput) ToProtectedVMMapOutput() ProtectedVMMapOutput

func (ProtectedVMMapOutput) ToProtectedVMMapOutputWithContext added in v3.47.1

func (o ProtectedVMMapOutput) ToProtectedVMMapOutputWithContext(ctx context.Context) ProtectedVMMapOutput

type ProtectedVMOutput added in v3.31.1

type ProtectedVMOutput struct {
	*pulumi.OutputState
}

func (ProtectedVMOutput) ElementType added in v3.31.1

func (ProtectedVMOutput) ElementType() reflect.Type

func (ProtectedVMOutput) ToProtectedVMOutput added in v3.31.1

func (o ProtectedVMOutput) ToProtectedVMOutput() ProtectedVMOutput

func (ProtectedVMOutput) ToProtectedVMOutputWithContext added in v3.31.1

func (o ProtectedVMOutput) ToProtectedVMOutputWithContext(ctx context.Context) ProtectedVMOutput

func (ProtectedVMOutput) ToProtectedVMPtrOutput added in v3.47.1

func (o ProtectedVMOutput) ToProtectedVMPtrOutput() ProtectedVMPtrOutput

func (ProtectedVMOutput) ToProtectedVMPtrOutputWithContext added in v3.47.1

func (o ProtectedVMOutput) ToProtectedVMPtrOutputWithContext(ctx context.Context) ProtectedVMPtrOutput

type ProtectedVMPtrInput added in v3.47.1

type ProtectedVMPtrInput interface {
	pulumi.Input

	ToProtectedVMPtrOutput() ProtectedVMPtrOutput
	ToProtectedVMPtrOutputWithContext(ctx context.Context) ProtectedVMPtrOutput
}

type ProtectedVMPtrOutput added in v3.47.1

type ProtectedVMPtrOutput struct {
	*pulumi.OutputState
}

func (ProtectedVMPtrOutput) ElementType added in v3.47.1

func (ProtectedVMPtrOutput) ElementType() reflect.Type

func (ProtectedVMPtrOutput) ToProtectedVMPtrOutput added in v3.47.1

func (o ProtectedVMPtrOutput) ToProtectedVMPtrOutput() ProtectedVMPtrOutput

func (ProtectedVMPtrOutput) ToProtectedVMPtrOutputWithContext added in v3.47.1

func (o ProtectedVMPtrOutput) ToProtectedVMPtrOutputWithContext(ctx context.Context) ProtectedVMPtrOutput

type ProtectedVMState

type ProtectedVMState struct {
	// Specifies the id of the backup policy to use.
	BackupPolicyId pulumi.StringPtrInput
	// Specifies the name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringPtrInput
	// The name of the resource group in which to create the Recovery Services Vault. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// Specifies the ID of the VM to backup. Changing this forces a new resource to be created.
	SourceVmId pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

func (ProtectedVMState) ElementType

func (ProtectedVMState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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