siterecovery

package
v5.37.0 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Fabric

type Fabric struct {
	pulumi.CustomResourceState

	// In what region should the fabric be located. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The name of the network mapping. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"`
	// Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
}

Manages a Azure Site Recovery Replication Fabric within a Recovery Services vault. Only Azure fabrics are supported at this time. Replication Fabrics serve as a container within an Azure region for other Site Recovery resources such as protection containers, protected items, network mappings.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		primary, err := core.NewResourceGroup(ctx, "primary", &core.ResourceGroupArgs{
			Location: pulumi.String("West US"),
		})
		if err != nil {
			return err
		}
		secondary, err := core.NewResourceGroup(ctx, "secondary", &core.ResourceGroupArgs{
			Location: pulumi.String("East US"),
		})
		if err != nil {
			return err
		}
		vault, err := recoveryservices.NewVault(ctx, "vault", &recoveryservices.VaultArgs{
			Location:          secondary.Location,
			ResourceGroupName: secondary.Name,
			Sku:               pulumi.String("Standard"),
		})
		if err != nil {
			return err
		}
		_, err = siterecovery.NewFabric(ctx, "fabric", &siterecovery.FabricArgs{
			ResourceGroupName: secondary.Name,
			RecoveryVaultName: vault.Name,
			Location:          primary.Location,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Site Recovery Fabric can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:siterecovery/fabric:Fabric myfabric /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-name/providers/Microsoft.RecoveryServices/vaults/recovery-vault-name/replicationFabrics/fabric-name

```

func GetFabric

func GetFabric(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FabricState, opts ...pulumi.ResourceOption) (*Fabric, error)

GetFabric gets an existing Fabric 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 NewFabric

func NewFabric(ctx *pulumi.Context,
	name string, args *FabricArgs, opts ...pulumi.ResourceOption) (*Fabric, error)

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

func (*Fabric) ElementType

func (*Fabric) ElementType() reflect.Type

func (*Fabric) ToFabricOutput

func (i *Fabric) ToFabricOutput() FabricOutput

func (*Fabric) ToFabricOutputWithContext

func (i *Fabric) ToFabricOutputWithContext(ctx context.Context) FabricOutput

type FabricArgs

type FabricArgs struct {
	// In what region should the fabric be located. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The name of the network mapping. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringInput
	// Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
}

The set of arguments for constructing a Fabric resource.

func (FabricArgs) ElementType

func (FabricArgs) ElementType() reflect.Type

type FabricArray

type FabricArray []FabricInput

func (FabricArray) ElementType

func (FabricArray) ElementType() reflect.Type

func (FabricArray) ToFabricArrayOutput

func (i FabricArray) ToFabricArrayOutput() FabricArrayOutput

func (FabricArray) ToFabricArrayOutputWithContext

func (i FabricArray) ToFabricArrayOutputWithContext(ctx context.Context) FabricArrayOutput

type FabricArrayInput

type FabricArrayInput interface {
	pulumi.Input

	ToFabricArrayOutput() FabricArrayOutput
	ToFabricArrayOutputWithContext(context.Context) FabricArrayOutput
}

FabricArrayInput is an input type that accepts FabricArray and FabricArrayOutput values. You can construct a concrete instance of `FabricArrayInput` via:

FabricArray{ FabricArgs{...} }

type FabricArrayOutput

type FabricArrayOutput struct{ *pulumi.OutputState }

func (FabricArrayOutput) ElementType

func (FabricArrayOutput) ElementType() reflect.Type

func (FabricArrayOutput) Index

func (FabricArrayOutput) ToFabricArrayOutput

func (o FabricArrayOutput) ToFabricArrayOutput() FabricArrayOutput

func (FabricArrayOutput) ToFabricArrayOutputWithContext

func (o FabricArrayOutput) ToFabricArrayOutputWithContext(ctx context.Context) FabricArrayOutput

type FabricInput

type FabricInput interface {
	pulumi.Input

	ToFabricOutput() FabricOutput
	ToFabricOutputWithContext(ctx context.Context) FabricOutput
}

type FabricMap

type FabricMap map[string]FabricInput

func (FabricMap) ElementType

func (FabricMap) ElementType() reflect.Type

func (FabricMap) ToFabricMapOutput

func (i FabricMap) ToFabricMapOutput() FabricMapOutput

func (FabricMap) ToFabricMapOutputWithContext

func (i FabricMap) ToFabricMapOutputWithContext(ctx context.Context) FabricMapOutput

type FabricMapInput

type FabricMapInput interface {
	pulumi.Input

	ToFabricMapOutput() FabricMapOutput
	ToFabricMapOutputWithContext(context.Context) FabricMapOutput
}

FabricMapInput is an input type that accepts FabricMap and FabricMapOutput values. You can construct a concrete instance of `FabricMapInput` via:

FabricMap{ "key": FabricArgs{...} }

type FabricMapOutput

type FabricMapOutput struct{ *pulumi.OutputState }

func (FabricMapOutput) ElementType

func (FabricMapOutput) ElementType() reflect.Type

func (FabricMapOutput) MapIndex

func (FabricMapOutput) ToFabricMapOutput

func (o FabricMapOutput) ToFabricMapOutput() FabricMapOutput

func (FabricMapOutput) ToFabricMapOutputWithContext

func (o FabricMapOutput) ToFabricMapOutputWithContext(ctx context.Context) FabricMapOutput

type FabricOutput

type FabricOutput struct{ *pulumi.OutputState }

func (FabricOutput) ElementType

func (FabricOutput) ElementType() reflect.Type

func (FabricOutput) Location added in v5.5.0

func (o FabricOutput) Location() pulumi.StringOutput

In what region should the fabric be located. Changing this forces a new resource to be created.

func (FabricOutput) Name added in v5.5.0

func (o FabricOutput) Name() pulumi.StringOutput

The name of the network mapping. Changing this forces a new resource to be created.

func (FabricOutput) RecoveryVaultName added in v5.5.0

func (o FabricOutput) RecoveryVaultName() pulumi.StringOutput

The name of the vault that should be updated. Changing this forces a new resource to be created.

func (FabricOutput) ResourceGroupName added in v5.5.0

func (o FabricOutput) ResourceGroupName() pulumi.StringOutput

Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.

func (FabricOutput) ToFabricOutput

func (o FabricOutput) ToFabricOutput() FabricOutput

func (FabricOutput) ToFabricOutputWithContext

func (o FabricOutput) ToFabricOutputWithContext(ctx context.Context) FabricOutput

type FabricState

type FabricState struct {
	// In what region should the fabric be located. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The name of the network mapping. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringPtrInput
	// Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
}

func (FabricState) ElementType

func (FabricState) ElementType() reflect.Type

type GetReplicationRecoveryPlanRecoveryGroup added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroup struct {
	// one or more `action` block. which will be executed after the group recovery.
	PostActions [][]GetReplicationRecoveryPlanRecoveryGroupPostAction `pulumi:"postActions"`
	// one or more `action` block. which will be executed before the group recovery.
	PreActions [][]GetReplicationRecoveryPlanRecoveryGroupPreAction `pulumi:"preActions"`
	// one or more id of protected VM.
	ReplicatedProtectedItems []string `pulumi:"replicatedProtectedItems"`
	// Type of the action detail.
	Type string `pulumi:"type"`
}

type GetReplicationRecoveryPlanRecoveryGroupArgs added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupArgs struct {
	// one or more `action` block. which will be executed after the group recovery.
	PostActions GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayInput `pulumi:"postActions"`
	// one or more `action` block. which will be executed before the group recovery.
	PreActions GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayInput `pulumi:"preActions"`
	// one or more id of protected VM.
	ReplicatedProtectedItems pulumi.StringArrayInput `pulumi:"replicatedProtectedItems"`
	// Type of the action detail.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetReplicationRecoveryPlanRecoveryGroupArgs) ElementType added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupArgs) ToGetReplicationRecoveryPlanRecoveryGroupOutput added in v5.33.0

func (i GetReplicationRecoveryPlanRecoveryGroupArgs) ToGetReplicationRecoveryPlanRecoveryGroupOutput() GetReplicationRecoveryPlanRecoveryGroupOutput

func (GetReplicationRecoveryPlanRecoveryGroupArgs) ToGetReplicationRecoveryPlanRecoveryGroupOutputWithContext added in v5.33.0

func (i GetReplicationRecoveryPlanRecoveryGroupArgs) ToGetReplicationRecoveryPlanRecoveryGroupOutputWithContext(ctx context.Context) GetReplicationRecoveryPlanRecoveryGroupOutput

type GetReplicationRecoveryPlanRecoveryGroupArray added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupArray []GetReplicationRecoveryPlanRecoveryGroupInput

func (GetReplicationRecoveryPlanRecoveryGroupArray) ElementType added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupArray) ToGetReplicationRecoveryPlanRecoveryGroupArrayOutput added in v5.33.0

func (i GetReplicationRecoveryPlanRecoveryGroupArray) ToGetReplicationRecoveryPlanRecoveryGroupArrayOutput() GetReplicationRecoveryPlanRecoveryGroupArrayOutput

func (GetReplicationRecoveryPlanRecoveryGroupArray) ToGetReplicationRecoveryPlanRecoveryGroupArrayOutputWithContext added in v5.33.0

func (i GetReplicationRecoveryPlanRecoveryGroupArray) ToGetReplicationRecoveryPlanRecoveryGroupArrayOutputWithContext(ctx context.Context) GetReplicationRecoveryPlanRecoveryGroupArrayOutput

type GetReplicationRecoveryPlanRecoveryGroupArrayInput added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupArrayInput interface {
	pulumi.Input

	ToGetReplicationRecoveryPlanRecoveryGroupArrayOutput() GetReplicationRecoveryPlanRecoveryGroupArrayOutput
	ToGetReplicationRecoveryPlanRecoveryGroupArrayOutputWithContext(context.Context) GetReplicationRecoveryPlanRecoveryGroupArrayOutput
}

GetReplicationRecoveryPlanRecoveryGroupArrayInput is an input type that accepts GetReplicationRecoveryPlanRecoveryGroupArray and GetReplicationRecoveryPlanRecoveryGroupArrayOutput values. You can construct a concrete instance of `GetReplicationRecoveryPlanRecoveryGroupArrayInput` via:

GetReplicationRecoveryPlanRecoveryGroupArray{ GetReplicationRecoveryPlanRecoveryGroupArgs{...} }

type GetReplicationRecoveryPlanRecoveryGroupArrayOutput added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupArrayOutput struct{ *pulumi.OutputState }

func (GetReplicationRecoveryPlanRecoveryGroupArrayOutput) ElementType added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupArrayOutput) Index added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupArrayOutput) ToGetReplicationRecoveryPlanRecoveryGroupArrayOutput added in v5.33.0

func (o GetReplicationRecoveryPlanRecoveryGroupArrayOutput) ToGetReplicationRecoveryPlanRecoveryGroupArrayOutput() GetReplicationRecoveryPlanRecoveryGroupArrayOutput

func (GetReplicationRecoveryPlanRecoveryGroupArrayOutput) ToGetReplicationRecoveryPlanRecoveryGroupArrayOutputWithContext added in v5.33.0

func (o GetReplicationRecoveryPlanRecoveryGroupArrayOutput) ToGetReplicationRecoveryPlanRecoveryGroupArrayOutputWithContext(ctx context.Context) GetReplicationRecoveryPlanRecoveryGroupArrayOutput

type GetReplicationRecoveryPlanRecoveryGroupInput added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupInput interface {
	pulumi.Input

	ToGetReplicationRecoveryPlanRecoveryGroupOutput() GetReplicationRecoveryPlanRecoveryGroupOutput
	ToGetReplicationRecoveryPlanRecoveryGroupOutputWithContext(context.Context) GetReplicationRecoveryPlanRecoveryGroupOutput
}

GetReplicationRecoveryPlanRecoveryGroupInput is an input type that accepts GetReplicationRecoveryPlanRecoveryGroupArgs and GetReplicationRecoveryPlanRecoveryGroupOutput values. You can construct a concrete instance of `GetReplicationRecoveryPlanRecoveryGroupInput` via:

GetReplicationRecoveryPlanRecoveryGroupArgs{...}

type GetReplicationRecoveryPlanRecoveryGroupOutput added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupOutput struct{ *pulumi.OutputState }

func (GetReplicationRecoveryPlanRecoveryGroupOutput) ElementType added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupOutput) PostActions added in v5.33.0

one or more `action` block. which will be executed after the group recovery.

func (GetReplicationRecoveryPlanRecoveryGroupOutput) PreActions added in v5.33.0

one or more `action` block. which will be executed before the group recovery.

func (GetReplicationRecoveryPlanRecoveryGroupOutput) ReplicatedProtectedItems added in v5.33.0

one or more id of protected VM.

func (GetReplicationRecoveryPlanRecoveryGroupOutput) ToGetReplicationRecoveryPlanRecoveryGroupOutput added in v5.33.0

func (o GetReplicationRecoveryPlanRecoveryGroupOutput) ToGetReplicationRecoveryPlanRecoveryGroupOutput() GetReplicationRecoveryPlanRecoveryGroupOutput

func (GetReplicationRecoveryPlanRecoveryGroupOutput) ToGetReplicationRecoveryPlanRecoveryGroupOutputWithContext added in v5.33.0

func (o GetReplicationRecoveryPlanRecoveryGroupOutput) ToGetReplicationRecoveryPlanRecoveryGroupOutputWithContext(ctx context.Context) GetReplicationRecoveryPlanRecoveryGroupOutput

func (GetReplicationRecoveryPlanRecoveryGroupOutput) Type added in v5.33.0

Type of the action detail.

type GetReplicationRecoveryPlanRecoveryGroupPostAction added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPostAction struct {
	// The fabric location of runbook or script.
	FabricLocation string `pulumi:"fabricLocation"`
	// Directions of fail over.
	FailOverDirections []string `pulumi:"failOverDirections"`
	// Types of fail over.
	FailOverTypes []string `pulumi:"failOverTypes"`
	// Instructions of manual action.
	ManualActionInstruction string `pulumi:"manualActionInstruction"`
	// The name of the Replication Plan.
	Name string `pulumi:"name"`
	// Id of runbook.
	RunbookId string `pulumi:"runbookId"`
	// Path of action script.
	ScriptPath string `pulumi:"scriptPath"`
	// Type of the action detail.
	Type string `pulumi:"type"`
}

type GetReplicationRecoveryPlanRecoveryGroupPostActionArgs added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPostActionArgs struct {
	// The fabric location of runbook or script.
	FabricLocation pulumi.StringInput `pulumi:"fabricLocation"`
	// Directions of fail over.
	FailOverDirections pulumi.StringArrayInput `pulumi:"failOverDirections"`
	// Types of fail over.
	FailOverTypes pulumi.StringArrayInput `pulumi:"failOverTypes"`
	// Instructions of manual action.
	ManualActionInstruction pulumi.StringInput `pulumi:"manualActionInstruction"`
	// The name of the Replication Plan.
	Name pulumi.StringInput `pulumi:"name"`
	// Id of runbook.
	RunbookId pulumi.StringInput `pulumi:"runbookId"`
	// Path of action script.
	ScriptPath pulumi.StringInput `pulumi:"scriptPath"`
	// Type of the action detail.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetReplicationRecoveryPlanRecoveryGroupPostActionArgs) ElementType added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPostActionArgs) ToGetReplicationRecoveryPlanRecoveryGroupPostActionOutput added in v5.33.0

func (i GetReplicationRecoveryPlanRecoveryGroupPostActionArgs) ToGetReplicationRecoveryPlanRecoveryGroupPostActionOutput() GetReplicationRecoveryPlanRecoveryGroupPostActionOutput

func (GetReplicationRecoveryPlanRecoveryGroupPostActionArgs) ToGetReplicationRecoveryPlanRecoveryGroupPostActionOutputWithContext added in v5.33.0

func (i GetReplicationRecoveryPlanRecoveryGroupPostActionArgs) ToGetReplicationRecoveryPlanRecoveryGroupPostActionOutputWithContext(ctx context.Context) GetReplicationRecoveryPlanRecoveryGroupPostActionOutput

type GetReplicationRecoveryPlanRecoveryGroupPostActionArray added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPostActionArray []GetReplicationRecoveryPlanRecoveryGroupPostActionInput

func (GetReplicationRecoveryPlanRecoveryGroupPostActionArray) ElementType added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPostActionArray) ToGetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput added in v5.33.0

func (i GetReplicationRecoveryPlanRecoveryGroupPostActionArray) ToGetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput() GetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput

func (GetReplicationRecoveryPlanRecoveryGroupPostActionArray) ToGetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutputWithContext added in v5.33.0

func (i GetReplicationRecoveryPlanRecoveryGroupPostActionArray) ToGetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutputWithContext(ctx context.Context) GetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput

type GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArray added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArray []GetReplicationRecoveryPlanRecoveryGroupPostActionArrayInput

func (GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArray) ElementType added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArray) ToGetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutput added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArray) ToGetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutputWithContext added in v5.33.0

func (i GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArray) ToGetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutputWithContext(ctx context.Context) GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutput

type GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayInput added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayInput interface {
	pulumi.Input

	ToGetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutput() GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutput
	ToGetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutputWithContext(context.Context) GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutput
}

GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayInput is an input type that accepts GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArray and GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutput values. You can construct a concrete instance of `GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayInput` via:

GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArray{ GetReplicationRecoveryPlanRecoveryGroupPostActionArray{ GetReplicationRecoveryPlanRecoveryGroupPostActionArgs{...} } }

type GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutput added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutput struct{ *pulumi.OutputState }

func (GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutput) ElementType added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutput) Index added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutput) ToGetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutput added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutput) ToGetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutputWithContext added in v5.33.0

func (o GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutput) ToGetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutputWithContext(ctx context.Context) GetReplicationRecoveryPlanRecoveryGroupPostActionArrayArrayOutput

type GetReplicationRecoveryPlanRecoveryGroupPostActionArrayInput added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPostActionArrayInput interface {
	pulumi.Input

	ToGetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput() GetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput
	ToGetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutputWithContext(context.Context) GetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput
}

GetReplicationRecoveryPlanRecoveryGroupPostActionArrayInput is an input type that accepts GetReplicationRecoveryPlanRecoveryGroupPostActionArray and GetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput values. You can construct a concrete instance of `GetReplicationRecoveryPlanRecoveryGroupPostActionArrayInput` via:

GetReplicationRecoveryPlanRecoveryGroupPostActionArray{ GetReplicationRecoveryPlanRecoveryGroupPostActionArgs{...} }

type GetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput struct{ *pulumi.OutputState }

func (GetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput) ElementType added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput) Index added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput) ToGetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput) ToGetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutputWithContext added in v5.33.0

func (o GetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput) ToGetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutputWithContext(ctx context.Context) GetReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput

type GetReplicationRecoveryPlanRecoveryGroupPostActionInput added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPostActionInput interface {
	pulumi.Input

	ToGetReplicationRecoveryPlanRecoveryGroupPostActionOutput() GetReplicationRecoveryPlanRecoveryGroupPostActionOutput
	ToGetReplicationRecoveryPlanRecoveryGroupPostActionOutputWithContext(context.Context) GetReplicationRecoveryPlanRecoveryGroupPostActionOutput
}

GetReplicationRecoveryPlanRecoveryGroupPostActionInput is an input type that accepts GetReplicationRecoveryPlanRecoveryGroupPostActionArgs and GetReplicationRecoveryPlanRecoveryGroupPostActionOutput values. You can construct a concrete instance of `GetReplicationRecoveryPlanRecoveryGroupPostActionInput` via:

GetReplicationRecoveryPlanRecoveryGroupPostActionArgs{...}

type GetReplicationRecoveryPlanRecoveryGroupPostActionOutput added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPostActionOutput struct{ *pulumi.OutputState }

func (GetReplicationRecoveryPlanRecoveryGroupPostActionOutput) ElementType added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPostActionOutput) FabricLocation added in v5.33.0

The fabric location of runbook or script.

func (GetReplicationRecoveryPlanRecoveryGroupPostActionOutput) FailOverDirections added in v5.33.0

Directions of fail over.

func (GetReplicationRecoveryPlanRecoveryGroupPostActionOutput) FailOverTypes added in v5.33.0

Types of fail over.

func (GetReplicationRecoveryPlanRecoveryGroupPostActionOutput) ManualActionInstruction added in v5.33.0

Instructions of manual action.

func (GetReplicationRecoveryPlanRecoveryGroupPostActionOutput) Name added in v5.33.0

The name of the Replication Plan.

func (GetReplicationRecoveryPlanRecoveryGroupPostActionOutput) RunbookId added in v5.33.0

Id of runbook.

func (GetReplicationRecoveryPlanRecoveryGroupPostActionOutput) ScriptPath added in v5.33.0

Path of action script.

func (GetReplicationRecoveryPlanRecoveryGroupPostActionOutput) ToGetReplicationRecoveryPlanRecoveryGroupPostActionOutput added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPostActionOutput) ToGetReplicationRecoveryPlanRecoveryGroupPostActionOutputWithContext added in v5.33.0

func (o GetReplicationRecoveryPlanRecoveryGroupPostActionOutput) ToGetReplicationRecoveryPlanRecoveryGroupPostActionOutputWithContext(ctx context.Context) GetReplicationRecoveryPlanRecoveryGroupPostActionOutput

func (GetReplicationRecoveryPlanRecoveryGroupPostActionOutput) Type added in v5.33.0

Type of the action detail.

type GetReplicationRecoveryPlanRecoveryGroupPreAction added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPreAction struct {
	// The fabric location of runbook or script.
	FabricLocation string `pulumi:"fabricLocation"`
	// Directions of fail over.
	FailOverDirections []string `pulumi:"failOverDirections"`
	// Types of fail over.
	FailOverTypes []string `pulumi:"failOverTypes"`
	// Instructions of manual action.
	ManualActionInstruction string `pulumi:"manualActionInstruction"`
	// The name of the Replication Plan.
	Name string `pulumi:"name"`
	// Id of runbook.
	RunbookId string `pulumi:"runbookId"`
	// Path of action script.
	ScriptPath string `pulumi:"scriptPath"`
	// Type of the action detail.
	Type string `pulumi:"type"`
}

type GetReplicationRecoveryPlanRecoveryGroupPreActionArgs added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPreActionArgs struct {
	// The fabric location of runbook or script.
	FabricLocation pulumi.StringInput `pulumi:"fabricLocation"`
	// Directions of fail over.
	FailOverDirections pulumi.StringArrayInput `pulumi:"failOverDirections"`
	// Types of fail over.
	FailOverTypes pulumi.StringArrayInput `pulumi:"failOverTypes"`
	// Instructions of manual action.
	ManualActionInstruction pulumi.StringInput `pulumi:"manualActionInstruction"`
	// The name of the Replication Plan.
	Name pulumi.StringInput `pulumi:"name"`
	// Id of runbook.
	RunbookId pulumi.StringInput `pulumi:"runbookId"`
	// Path of action script.
	ScriptPath pulumi.StringInput `pulumi:"scriptPath"`
	// Type of the action detail.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetReplicationRecoveryPlanRecoveryGroupPreActionArgs) ElementType added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPreActionArgs) ToGetReplicationRecoveryPlanRecoveryGroupPreActionOutput added in v5.33.0

func (i GetReplicationRecoveryPlanRecoveryGroupPreActionArgs) ToGetReplicationRecoveryPlanRecoveryGroupPreActionOutput() GetReplicationRecoveryPlanRecoveryGroupPreActionOutput

func (GetReplicationRecoveryPlanRecoveryGroupPreActionArgs) ToGetReplicationRecoveryPlanRecoveryGroupPreActionOutputWithContext added in v5.33.0

func (i GetReplicationRecoveryPlanRecoveryGroupPreActionArgs) ToGetReplicationRecoveryPlanRecoveryGroupPreActionOutputWithContext(ctx context.Context) GetReplicationRecoveryPlanRecoveryGroupPreActionOutput

type GetReplicationRecoveryPlanRecoveryGroupPreActionArray added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPreActionArray []GetReplicationRecoveryPlanRecoveryGroupPreActionInput

func (GetReplicationRecoveryPlanRecoveryGroupPreActionArray) ElementType added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPreActionArray) ToGetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput added in v5.33.0

func (i GetReplicationRecoveryPlanRecoveryGroupPreActionArray) ToGetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput() GetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput

func (GetReplicationRecoveryPlanRecoveryGroupPreActionArray) ToGetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutputWithContext added in v5.33.0

func (i GetReplicationRecoveryPlanRecoveryGroupPreActionArray) ToGetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutputWithContext(ctx context.Context) GetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput

type GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArray added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArray []GetReplicationRecoveryPlanRecoveryGroupPreActionArrayInput

func (GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArray) ElementType added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArray) ToGetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutput added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArray) ToGetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutputWithContext added in v5.33.0

func (i GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArray) ToGetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutputWithContext(ctx context.Context) GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutput

type GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayInput added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayInput interface {
	pulumi.Input

	ToGetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutput() GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutput
	ToGetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutputWithContext(context.Context) GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutput
}

GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayInput is an input type that accepts GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArray and GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutput values. You can construct a concrete instance of `GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayInput` via:

GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArray{ GetReplicationRecoveryPlanRecoveryGroupPreActionArray{ GetReplicationRecoveryPlanRecoveryGroupPreActionArgs{...} } }

type GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutput added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutput struct{ *pulumi.OutputState }

func (GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutput) ElementType added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutput) Index added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutput) ToGetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutput added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutput) ToGetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutputWithContext added in v5.33.0

func (o GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutput) ToGetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutputWithContext(ctx context.Context) GetReplicationRecoveryPlanRecoveryGroupPreActionArrayArrayOutput

type GetReplicationRecoveryPlanRecoveryGroupPreActionArrayInput added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPreActionArrayInput interface {
	pulumi.Input

	ToGetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput() GetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput
	ToGetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutputWithContext(context.Context) GetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput
}

GetReplicationRecoveryPlanRecoveryGroupPreActionArrayInput is an input type that accepts GetReplicationRecoveryPlanRecoveryGroupPreActionArray and GetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput values. You can construct a concrete instance of `GetReplicationRecoveryPlanRecoveryGroupPreActionArrayInput` via:

GetReplicationRecoveryPlanRecoveryGroupPreActionArray{ GetReplicationRecoveryPlanRecoveryGroupPreActionArgs{...} }

type GetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput struct{ *pulumi.OutputState }

func (GetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput) ElementType added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput) Index added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput) ToGetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput) ToGetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutputWithContext added in v5.33.0

func (o GetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput) ToGetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutputWithContext(ctx context.Context) GetReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput

type GetReplicationRecoveryPlanRecoveryGroupPreActionInput added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPreActionInput interface {
	pulumi.Input

	ToGetReplicationRecoveryPlanRecoveryGroupPreActionOutput() GetReplicationRecoveryPlanRecoveryGroupPreActionOutput
	ToGetReplicationRecoveryPlanRecoveryGroupPreActionOutputWithContext(context.Context) GetReplicationRecoveryPlanRecoveryGroupPreActionOutput
}

GetReplicationRecoveryPlanRecoveryGroupPreActionInput is an input type that accepts GetReplicationRecoveryPlanRecoveryGroupPreActionArgs and GetReplicationRecoveryPlanRecoveryGroupPreActionOutput values. You can construct a concrete instance of `GetReplicationRecoveryPlanRecoveryGroupPreActionInput` via:

GetReplicationRecoveryPlanRecoveryGroupPreActionArgs{...}

type GetReplicationRecoveryPlanRecoveryGroupPreActionOutput added in v5.33.0

type GetReplicationRecoveryPlanRecoveryGroupPreActionOutput struct{ *pulumi.OutputState }

func (GetReplicationRecoveryPlanRecoveryGroupPreActionOutput) ElementType added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPreActionOutput) FabricLocation added in v5.33.0

The fabric location of runbook or script.

func (GetReplicationRecoveryPlanRecoveryGroupPreActionOutput) FailOverDirections added in v5.33.0

Directions of fail over.

func (GetReplicationRecoveryPlanRecoveryGroupPreActionOutput) FailOverTypes added in v5.33.0

Types of fail over.

func (GetReplicationRecoveryPlanRecoveryGroupPreActionOutput) ManualActionInstruction added in v5.33.0

Instructions of manual action.

func (GetReplicationRecoveryPlanRecoveryGroupPreActionOutput) Name added in v5.33.0

The name of the Replication Plan.

func (GetReplicationRecoveryPlanRecoveryGroupPreActionOutput) RunbookId added in v5.33.0

Id of runbook.

func (GetReplicationRecoveryPlanRecoveryGroupPreActionOutput) ScriptPath added in v5.33.0

Path of action script.

func (GetReplicationRecoveryPlanRecoveryGroupPreActionOutput) ToGetReplicationRecoveryPlanRecoveryGroupPreActionOutput added in v5.33.0

func (GetReplicationRecoveryPlanRecoveryGroupPreActionOutput) ToGetReplicationRecoveryPlanRecoveryGroupPreActionOutputWithContext added in v5.33.0

func (o GetReplicationRecoveryPlanRecoveryGroupPreActionOutput) ToGetReplicationRecoveryPlanRecoveryGroupPreActionOutputWithContext(ctx context.Context) GetReplicationRecoveryPlanRecoveryGroupPreActionOutput

func (GetReplicationRecoveryPlanRecoveryGroupPreActionOutput) Type added in v5.33.0

Type of the action detail.

type HyperVReplicationPolicy added in v5.36.0

type HyperVReplicationPolicy struct {
	pulumi.CustomResourceState

	// Specifies the frequency at which to create application consistent recovery points.
	ApplicationConsistentSnapshotFrequencyInHours pulumi.IntOutput `pulumi:"applicationConsistentSnapshotFrequencyInHours"`
	// The name of the replication policy. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The duration in hours for which the recovery points need to be stored.
	RecoveryPointRetentionInHours pulumi.IntOutput    `pulumi:"recoveryPointRetentionInHours"`
	RecoveryVaultId               pulumi.StringOutput `pulumi:"recoveryVaultId"`
	// Specifies how frequently data should be synchronized between source and target locations. Possible values are `30` and `300`.
	ReplicationIntervalInSeconds pulumi.IntOutput `pulumi:"replicationIntervalInSeconds"`
}

Manages a Azure Site Recovery replication policy for HyperV within a Recovery Vault. Replication policies define the frequency at which recovery points are created and how long they are stored.

## Import

Site Recovery Replication Policies can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:siterecovery/hyperVReplicationPolicy:HyperVReplicationPolicy mypolicy /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-name/providers/Microsoft.RecoveryServices/vaults/recovery-vault-name/replicationPolicies/policy-name

```

func GetHyperVReplicationPolicy added in v5.36.0

func GetHyperVReplicationPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *HyperVReplicationPolicyState, opts ...pulumi.ResourceOption) (*HyperVReplicationPolicy, error)

GetHyperVReplicationPolicy gets an existing HyperVReplicationPolicy 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 NewHyperVReplicationPolicy added in v5.36.0

func NewHyperVReplicationPolicy(ctx *pulumi.Context,
	name string, args *HyperVReplicationPolicyArgs, opts ...pulumi.ResourceOption) (*HyperVReplicationPolicy, error)

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

func (*HyperVReplicationPolicy) ElementType added in v5.36.0

func (*HyperVReplicationPolicy) ElementType() reflect.Type

func (*HyperVReplicationPolicy) ToHyperVReplicationPolicyOutput added in v5.36.0

func (i *HyperVReplicationPolicy) ToHyperVReplicationPolicyOutput() HyperVReplicationPolicyOutput

func (*HyperVReplicationPolicy) ToHyperVReplicationPolicyOutputWithContext added in v5.36.0

func (i *HyperVReplicationPolicy) ToHyperVReplicationPolicyOutputWithContext(ctx context.Context) HyperVReplicationPolicyOutput

type HyperVReplicationPolicyArgs added in v5.36.0

type HyperVReplicationPolicyArgs struct {
	// Specifies the frequency at which to create application consistent recovery points.
	ApplicationConsistentSnapshotFrequencyInHours pulumi.IntInput
	// The name of the replication policy. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The duration in hours for which the recovery points need to be stored.
	RecoveryPointRetentionInHours pulumi.IntInput
	RecoveryVaultId               pulumi.StringInput
	// Specifies how frequently data should be synchronized between source and target locations. Possible values are `30` and `300`.
	ReplicationIntervalInSeconds pulumi.IntInput
}

The set of arguments for constructing a HyperVReplicationPolicy resource.

func (HyperVReplicationPolicyArgs) ElementType added in v5.36.0

type HyperVReplicationPolicyArray added in v5.36.0

type HyperVReplicationPolicyArray []HyperVReplicationPolicyInput

func (HyperVReplicationPolicyArray) ElementType added in v5.36.0

func (HyperVReplicationPolicyArray) ToHyperVReplicationPolicyArrayOutput added in v5.36.0

func (i HyperVReplicationPolicyArray) ToHyperVReplicationPolicyArrayOutput() HyperVReplicationPolicyArrayOutput

func (HyperVReplicationPolicyArray) ToHyperVReplicationPolicyArrayOutputWithContext added in v5.36.0

func (i HyperVReplicationPolicyArray) ToHyperVReplicationPolicyArrayOutputWithContext(ctx context.Context) HyperVReplicationPolicyArrayOutput

type HyperVReplicationPolicyArrayInput added in v5.36.0

type HyperVReplicationPolicyArrayInput interface {
	pulumi.Input

	ToHyperVReplicationPolicyArrayOutput() HyperVReplicationPolicyArrayOutput
	ToHyperVReplicationPolicyArrayOutputWithContext(context.Context) HyperVReplicationPolicyArrayOutput
}

HyperVReplicationPolicyArrayInput is an input type that accepts HyperVReplicationPolicyArray and HyperVReplicationPolicyArrayOutput values. You can construct a concrete instance of `HyperVReplicationPolicyArrayInput` via:

HyperVReplicationPolicyArray{ HyperVReplicationPolicyArgs{...} }

type HyperVReplicationPolicyArrayOutput added in v5.36.0

type HyperVReplicationPolicyArrayOutput struct{ *pulumi.OutputState }

func (HyperVReplicationPolicyArrayOutput) ElementType added in v5.36.0

func (HyperVReplicationPolicyArrayOutput) Index added in v5.36.0

func (HyperVReplicationPolicyArrayOutput) ToHyperVReplicationPolicyArrayOutput added in v5.36.0

func (o HyperVReplicationPolicyArrayOutput) ToHyperVReplicationPolicyArrayOutput() HyperVReplicationPolicyArrayOutput

func (HyperVReplicationPolicyArrayOutput) ToHyperVReplicationPolicyArrayOutputWithContext added in v5.36.0

func (o HyperVReplicationPolicyArrayOutput) ToHyperVReplicationPolicyArrayOutputWithContext(ctx context.Context) HyperVReplicationPolicyArrayOutput

type HyperVReplicationPolicyAssociation added in v5.36.0

type HyperVReplicationPolicyAssociation struct {
	pulumi.CustomResourceState

	// The ID of the HyperV site to which the policy should be associated. Changing this forces a new association to be created.
	HypervSiteId pulumi.StringOutput `pulumi:"hypervSiteId"`
	// The name of the replication policy association. Changing this forces a new association to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the HyperV replication policy which to be associated. Changing this forces a new association to be created.
	PolicyId pulumi.StringOutput `pulumi:"policyId"`
}

Manages an Azure Site Recovery replication policy for HyperV within a Recovery Vault.

## Import

Site Recovery Replication Policies can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:siterecovery/hyperVReplicationPolicyAssociation:HyperVReplicationPolicyAssociation azurerm_site_recovery_hyperv_replication_policy_association.mypolicy /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-name/providers/Microsoft.RecoveryServices/vaults/recovery-vault-name/replicationFabrics/site-name/replicationProtectionContainers/container-name/replicationProtectionContainerMappings/mapping-name

```

func GetHyperVReplicationPolicyAssociation added in v5.36.0

func GetHyperVReplicationPolicyAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *HyperVReplicationPolicyAssociationState, opts ...pulumi.ResourceOption) (*HyperVReplicationPolicyAssociation, error)

GetHyperVReplicationPolicyAssociation gets an existing HyperVReplicationPolicyAssociation 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 NewHyperVReplicationPolicyAssociation added in v5.36.0

func NewHyperVReplicationPolicyAssociation(ctx *pulumi.Context,
	name string, args *HyperVReplicationPolicyAssociationArgs, opts ...pulumi.ResourceOption) (*HyperVReplicationPolicyAssociation, error)

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

func (*HyperVReplicationPolicyAssociation) ElementType added in v5.36.0

func (*HyperVReplicationPolicyAssociation) ToHyperVReplicationPolicyAssociationOutput added in v5.36.0

func (i *HyperVReplicationPolicyAssociation) ToHyperVReplicationPolicyAssociationOutput() HyperVReplicationPolicyAssociationOutput

func (*HyperVReplicationPolicyAssociation) ToHyperVReplicationPolicyAssociationOutputWithContext added in v5.36.0

func (i *HyperVReplicationPolicyAssociation) ToHyperVReplicationPolicyAssociationOutputWithContext(ctx context.Context) HyperVReplicationPolicyAssociationOutput

type HyperVReplicationPolicyAssociationArgs added in v5.36.0

type HyperVReplicationPolicyAssociationArgs struct {
	// The ID of the HyperV site to which the policy should be associated. Changing this forces a new association to be created.
	HypervSiteId pulumi.StringInput
	// The name of the replication policy association. Changing this forces a new association to be created.
	Name pulumi.StringPtrInput
	// The ID of the HyperV replication policy which to be associated. Changing this forces a new association to be created.
	PolicyId pulumi.StringInput
}

The set of arguments for constructing a HyperVReplicationPolicyAssociation resource.

func (HyperVReplicationPolicyAssociationArgs) ElementType added in v5.36.0

type HyperVReplicationPolicyAssociationArray added in v5.36.0

type HyperVReplicationPolicyAssociationArray []HyperVReplicationPolicyAssociationInput

func (HyperVReplicationPolicyAssociationArray) ElementType added in v5.36.0

func (HyperVReplicationPolicyAssociationArray) ToHyperVReplicationPolicyAssociationArrayOutput added in v5.36.0

func (i HyperVReplicationPolicyAssociationArray) ToHyperVReplicationPolicyAssociationArrayOutput() HyperVReplicationPolicyAssociationArrayOutput

func (HyperVReplicationPolicyAssociationArray) ToHyperVReplicationPolicyAssociationArrayOutputWithContext added in v5.36.0

func (i HyperVReplicationPolicyAssociationArray) ToHyperVReplicationPolicyAssociationArrayOutputWithContext(ctx context.Context) HyperVReplicationPolicyAssociationArrayOutput

type HyperVReplicationPolicyAssociationArrayInput added in v5.36.0

type HyperVReplicationPolicyAssociationArrayInput interface {
	pulumi.Input

	ToHyperVReplicationPolicyAssociationArrayOutput() HyperVReplicationPolicyAssociationArrayOutput
	ToHyperVReplicationPolicyAssociationArrayOutputWithContext(context.Context) HyperVReplicationPolicyAssociationArrayOutput
}

HyperVReplicationPolicyAssociationArrayInput is an input type that accepts HyperVReplicationPolicyAssociationArray and HyperVReplicationPolicyAssociationArrayOutput values. You can construct a concrete instance of `HyperVReplicationPolicyAssociationArrayInput` via:

HyperVReplicationPolicyAssociationArray{ HyperVReplicationPolicyAssociationArgs{...} }

type HyperVReplicationPolicyAssociationArrayOutput added in v5.36.0

type HyperVReplicationPolicyAssociationArrayOutput struct{ *pulumi.OutputState }

func (HyperVReplicationPolicyAssociationArrayOutput) ElementType added in v5.36.0

func (HyperVReplicationPolicyAssociationArrayOutput) Index added in v5.36.0

func (HyperVReplicationPolicyAssociationArrayOutput) ToHyperVReplicationPolicyAssociationArrayOutput added in v5.36.0

func (o HyperVReplicationPolicyAssociationArrayOutput) ToHyperVReplicationPolicyAssociationArrayOutput() HyperVReplicationPolicyAssociationArrayOutput

func (HyperVReplicationPolicyAssociationArrayOutput) ToHyperVReplicationPolicyAssociationArrayOutputWithContext added in v5.36.0

func (o HyperVReplicationPolicyAssociationArrayOutput) ToHyperVReplicationPolicyAssociationArrayOutputWithContext(ctx context.Context) HyperVReplicationPolicyAssociationArrayOutput

type HyperVReplicationPolicyAssociationInput added in v5.36.0

type HyperVReplicationPolicyAssociationInput interface {
	pulumi.Input

	ToHyperVReplicationPolicyAssociationOutput() HyperVReplicationPolicyAssociationOutput
	ToHyperVReplicationPolicyAssociationOutputWithContext(ctx context.Context) HyperVReplicationPolicyAssociationOutput
}

type HyperVReplicationPolicyAssociationMap added in v5.36.0

type HyperVReplicationPolicyAssociationMap map[string]HyperVReplicationPolicyAssociationInput

func (HyperVReplicationPolicyAssociationMap) ElementType added in v5.36.0

func (HyperVReplicationPolicyAssociationMap) ToHyperVReplicationPolicyAssociationMapOutput added in v5.36.0

func (i HyperVReplicationPolicyAssociationMap) ToHyperVReplicationPolicyAssociationMapOutput() HyperVReplicationPolicyAssociationMapOutput

func (HyperVReplicationPolicyAssociationMap) ToHyperVReplicationPolicyAssociationMapOutputWithContext added in v5.36.0

func (i HyperVReplicationPolicyAssociationMap) ToHyperVReplicationPolicyAssociationMapOutputWithContext(ctx context.Context) HyperVReplicationPolicyAssociationMapOutput

type HyperVReplicationPolicyAssociationMapInput added in v5.36.0

type HyperVReplicationPolicyAssociationMapInput interface {
	pulumi.Input

	ToHyperVReplicationPolicyAssociationMapOutput() HyperVReplicationPolicyAssociationMapOutput
	ToHyperVReplicationPolicyAssociationMapOutputWithContext(context.Context) HyperVReplicationPolicyAssociationMapOutput
}

HyperVReplicationPolicyAssociationMapInput is an input type that accepts HyperVReplicationPolicyAssociationMap and HyperVReplicationPolicyAssociationMapOutput values. You can construct a concrete instance of `HyperVReplicationPolicyAssociationMapInput` via:

HyperVReplicationPolicyAssociationMap{ "key": HyperVReplicationPolicyAssociationArgs{...} }

type HyperVReplicationPolicyAssociationMapOutput added in v5.36.0

type HyperVReplicationPolicyAssociationMapOutput struct{ *pulumi.OutputState }

func (HyperVReplicationPolicyAssociationMapOutput) ElementType added in v5.36.0

func (HyperVReplicationPolicyAssociationMapOutput) MapIndex added in v5.36.0

func (HyperVReplicationPolicyAssociationMapOutput) ToHyperVReplicationPolicyAssociationMapOutput added in v5.36.0

func (o HyperVReplicationPolicyAssociationMapOutput) ToHyperVReplicationPolicyAssociationMapOutput() HyperVReplicationPolicyAssociationMapOutput

func (HyperVReplicationPolicyAssociationMapOutput) ToHyperVReplicationPolicyAssociationMapOutputWithContext added in v5.36.0

func (o HyperVReplicationPolicyAssociationMapOutput) ToHyperVReplicationPolicyAssociationMapOutputWithContext(ctx context.Context) HyperVReplicationPolicyAssociationMapOutput

type HyperVReplicationPolicyAssociationOutput added in v5.36.0

type HyperVReplicationPolicyAssociationOutput struct{ *pulumi.OutputState }

func (HyperVReplicationPolicyAssociationOutput) ElementType added in v5.36.0

func (HyperVReplicationPolicyAssociationOutput) HypervSiteId added in v5.36.0

The ID of the HyperV site to which the policy should be associated. Changing this forces a new association to be created.

func (HyperVReplicationPolicyAssociationOutput) Name added in v5.36.0

The name of the replication policy association. Changing this forces a new association to be created.

func (HyperVReplicationPolicyAssociationOutput) PolicyId added in v5.36.0

The ID of the HyperV replication policy which to be associated. Changing this forces a new association to be created.

func (HyperVReplicationPolicyAssociationOutput) ToHyperVReplicationPolicyAssociationOutput added in v5.36.0

func (o HyperVReplicationPolicyAssociationOutput) ToHyperVReplicationPolicyAssociationOutput() HyperVReplicationPolicyAssociationOutput

func (HyperVReplicationPolicyAssociationOutput) ToHyperVReplicationPolicyAssociationOutputWithContext added in v5.36.0

func (o HyperVReplicationPolicyAssociationOutput) ToHyperVReplicationPolicyAssociationOutputWithContext(ctx context.Context) HyperVReplicationPolicyAssociationOutput

type HyperVReplicationPolicyAssociationState added in v5.36.0

type HyperVReplicationPolicyAssociationState struct {
	// The ID of the HyperV site to which the policy should be associated. Changing this forces a new association to be created.
	HypervSiteId pulumi.StringPtrInput
	// The name of the replication policy association. Changing this forces a new association to be created.
	Name pulumi.StringPtrInput
	// The ID of the HyperV replication policy which to be associated. Changing this forces a new association to be created.
	PolicyId pulumi.StringPtrInput
}

func (HyperVReplicationPolicyAssociationState) ElementType added in v5.36.0

type HyperVReplicationPolicyInput added in v5.36.0

type HyperVReplicationPolicyInput interface {
	pulumi.Input

	ToHyperVReplicationPolicyOutput() HyperVReplicationPolicyOutput
	ToHyperVReplicationPolicyOutputWithContext(ctx context.Context) HyperVReplicationPolicyOutput
}

type HyperVReplicationPolicyMap added in v5.36.0

type HyperVReplicationPolicyMap map[string]HyperVReplicationPolicyInput

func (HyperVReplicationPolicyMap) ElementType added in v5.36.0

func (HyperVReplicationPolicyMap) ElementType() reflect.Type

func (HyperVReplicationPolicyMap) ToHyperVReplicationPolicyMapOutput added in v5.36.0

func (i HyperVReplicationPolicyMap) ToHyperVReplicationPolicyMapOutput() HyperVReplicationPolicyMapOutput

func (HyperVReplicationPolicyMap) ToHyperVReplicationPolicyMapOutputWithContext added in v5.36.0

func (i HyperVReplicationPolicyMap) ToHyperVReplicationPolicyMapOutputWithContext(ctx context.Context) HyperVReplicationPolicyMapOutput

type HyperVReplicationPolicyMapInput added in v5.36.0

type HyperVReplicationPolicyMapInput interface {
	pulumi.Input

	ToHyperVReplicationPolicyMapOutput() HyperVReplicationPolicyMapOutput
	ToHyperVReplicationPolicyMapOutputWithContext(context.Context) HyperVReplicationPolicyMapOutput
}

HyperVReplicationPolicyMapInput is an input type that accepts HyperVReplicationPolicyMap and HyperVReplicationPolicyMapOutput values. You can construct a concrete instance of `HyperVReplicationPolicyMapInput` via:

HyperVReplicationPolicyMap{ "key": HyperVReplicationPolicyArgs{...} }

type HyperVReplicationPolicyMapOutput added in v5.36.0

type HyperVReplicationPolicyMapOutput struct{ *pulumi.OutputState }

func (HyperVReplicationPolicyMapOutput) ElementType added in v5.36.0

func (HyperVReplicationPolicyMapOutput) MapIndex added in v5.36.0

func (HyperVReplicationPolicyMapOutput) ToHyperVReplicationPolicyMapOutput added in v5.36.0

func (o HyperVReplicationPolicyMapOutput) ToHyperVReplicationPolicyMapOutput() HyperVReplicationPolicyMapOutput

func (HyperVReplicationPolicyMapOutput) ToHyperVReplicationPolicyMapOutputWithContext added in v5.36.0

func (o HyperVReplicationPolicyMapOutput) ToHyperVReplicationPolicyMapOutputWithContext(ctx context.Context) HyperVReplicationPolicyMapOutput

type HyperVReplicationPolicyOutput added in v5.36.0

type HyperVReplicationPolicyOutput struct{ *pulumi.OutputState }

func (HyperVReplicationPolicyOutput) ApplicationConsistentSnapshotFrequencyInHours added in v5.36.0

func (o HyperVReplicationPolicyOutput) ApplicationConsistentSnapshotFrequencyInHours() pulumi.IntOutput

Specifies the frequency at which to create application consistent recovery points.

func (HyperVReplicationPolicyOutput) ElementType added in v5.36.0

func (HyperVReplicationPolicyOutput) Name added in v5.36.0

The name of the replication policy. Changing this forces a new resource to be created.

func (HyperVReplicationPolicyOutput) RecoveryPointRetentionInHours added in v5.36.0

func (o HyperVReplicationPolicyOutput) RecoveryPointRetentionInHours() pulumi.IntOutput

The duration in hours for which the recovery points need to be stored.

func (HyperVReplicationPolicyOutput) RecoveryVaultId added in v5.36.0

func (HyperVReplicationPolicyOutput) ReplicationIntervalInSeconds added in v5.36.0

func (o HyperVReplicationPolicyOutput) ReplicationIntervalInSeconds() pulumi.IntOutput

Specifies how frequently data should be synchronized between source and target locations. Possible values are `30` and `300`.

func (HyperVReplicationPolicyOutput) ToHyperVReplicationPolicyOutput added in v5.36.0

func (o HyperVReplicationPolicyOutput) ToHyperVReplicationPolicyOutput() HyperVReplicationPolicyOutput

func (HyperVReplicationPolicyOutput) ToHyperVReplicationPolicyOutputWithContext added in v5.36.0

func (o HyperVReplicationPolicyOutput) ToHyperVReplicationPolicyOutputWithContext(ctx context.Context) HyperVReplicationPolicyOutput

type HyperVReplicationPolicyState added in v5.36.0

type HyperVReplicationPolicyState struct {
	// Specifies the frequency at which to create application consistent recovery points.
	ApplicationConsistentSnapshotFrequencyInHours pulumi.IntPtrInput
	// The name of the replication policy. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The duration in hours for which the recovery points need to be stored.
	RecoveryPointRetentionInHours pulumi.IntPtrInput
	RecoveryVaultId               pulumi.StringPtrInput
	// Specifies how frequently data should be synchronized between source and target locations. Possible values are `30` and `300`.
	ReplicationIntervalInSeconds pulumi.IntPtrInput
}

func (HyperVReplicationPolicyState) ElementType added in v5.36.0

type HyperVSite added in v5.36.0

type HyperVSite struct {
	pulumi.CustomResourceState

	// The name which should be used for this Recovery Service. Changing this forces a new Site to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the Recovery Services Vault where the Site created. Changing this forces a new Site to be created.
	RecoveryVaultId pulumi.StringOutput `pulumi:"recoveryVaultId"`
}

Manages a HyperV Site in Recovery Service Vault.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("eastus"),
		})
		if err != nil {
			return err
		}
		exampleVault, err := recoveryservices.NewVault(ctx, "exampleVault", &recoveryservices.VaultArgs{
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			Sku:               pulumi.String("Standard"),
			SoftDeleteEnabled: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		_, err = siterecovery.NewHyperVSite(ctx, "exampleHyperVSite", &siterecovery.HyperVSiteArgs{
			RecoveryVaultId: exampleVault.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import azure:siterecovery/hyperVSite:HyperVSite example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric1

```

func GetHyperVSite added in v5.36.0

func GetHyperVSite(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *HyperVSiteState, opts ...pulumi.ResourceOption) (*HyperVSite, error)

GetHyperVSite gets an existing HyperVSite 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 NewHyperVSite added in v5.36.0

func NewHyperVSite(ctx *pulumi.Context,
	name string, args *HyperVSiteArgs, opts ...pulumi.ResourceOption) (*HyperVSite, error)

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

func (*HyperVSite) ElementType added in v5.36.0

func (*HyperVSite) ElementType() reflect.Type

func (*HyperVSite) ToHyperVSiteOutput added in v5.36.0

func (i *HyperVSite) ToHyperVSiteOutput() HyperVSiteOutput

func (*HyperVSite) ToHyperVSiteOutputWithContext added in v5.36.0

func (i *HyperVSite) ToHyperVSiteOutputWithContext(ctx context.Context) HyperVSiteOutput

type HyperVSiteArgs added in v5.36.0

type HyperVSiteArgs struct {
	// The name which should be used for this Recovery Service. Changing this forces a new Site to be created.
	Name pulumi.StringPtrInput
	// The ID of the Recovery Services Vault where the Site created. Changing this forces a new Site to be created.
	RecoveryVaultId pulumi.StringInput
}

The set of arguments for constructing a HyperVSite resource.

func (HyperVSiteArgs) ElementType added in v5.36.0

func (HyperVSiteArgs) ElementType() reflect.Type

type HyperVSiteArray added in v5.36.0

type HyperVSiteArray []HyperVSiteInput

func (HyperVSiteArray) ElementType added in v5.36.0

func (HyperVSiteArray) ElementType() reflect.Type

func (HyperVSiteArray) ToHyperVSiteArrayOutput added in v5.36.0

func (i HyperVSiteArray) ToHyperVSiteArrayOutput() HyperVSiteArrayOutput

func (HyperVSiteArray) ToHyperVSiteArrayOutputWithContext added in v5.36.0

func (i HyperVSiteArray) ToHyperVSiteArrayOutputWithContext(ctx context.Context) HyperVSiteArrayOutput

type HyperVSiteArrayInput added in v5.36.0

type HyperVSiteArrayInput interface {
	pulumi.Input

	ToHyperVSiteArrayOutput() HyperVSiteArrayOutput
	ToHyperVSiteArrayOutputWithContext(context.Context) HyperVSiteArrayOutput
}

HyperVSiteArrayInput is an input type that accepts HyperVSiteArray and HyperVSiteArrayOutput values. You can construct a concrete instance of `HyperVSiteArrayInput` via:

HyperVSiteArray{ HyperVSiteArgs{...} }

type HyperVSiteArrayOutput added in v5.36.0

type HyperVSiteArrayOutput struct{ *pulumi.OutputState }

func (HyperVSiteArrayOutput) ElementType added in v5.36.0

func (HyperVSiteArrayOutput) ElementType() reflect.Type

func (HyperVSiteArrayOutput) Index added in v5.36.0

func (HyperVSiteArrayOutput) ToHyperVSiteArrayOutput added in v5.36.0

func (o HyperVSiteArrayOutput) ToHyperVSiteArrayOutput() HyperVSiteArrayOutput

func (HyperVSiteArrayOutput) ToHyperVSiteArrayOutputWithContext added in v5.36.0

func (o HyperVSiteArrayOutput) ToHyperVSiteArrayOutputWithContext(ctx context.Context) HyperVSiteArrayOutput

type HyperVSiteInput added in v5.36.0

type HyperVSiteInput interface {
	pulumi.Input

	ToHyperVSiteOutput() HyperVSiteOutput
	ToHyperVSiteOutputWithContext(ctx context.Context) HyperVSiteOutput
}

type HyperVSiteMap added in v5.36.0

type HyperVSiteMap map[string]HyperVSiteInput

func (HyperVSiteMap) ElementType added in v5.36.0

func (HyperVSiteMap) ElementType() reflect.Type

func (HyperVSiteMap) ToHyperVSiteMapOutput added in v5.36.0

func (i HyperVSiteMap) ToHyperVSiteMapOutput() HyperVSiteMapOutput

func (HyperVSiteMap) ToHyperVSiteMapOutputWithContext added in v5.36.0

func (i HyperVSiteMap) ToHyperVSiteMapOutputWithContext(ctx context.Context) HyperVSiteMapOutput

type HyperVSiteMapInput added in v5.36.0

type HyperVSiteMapInput interface {
	pulumi.Input

	ToHyperVSiteMapOutput() HyperVSiteMapOutput
	ToHyperVSiteMapOutputWithContext(context.Context) HyperVSiteMapOutput
}

HyperVSiteMapInput is an input type that accepts HyperVSiteMap and HyperVSiteMapOutput values. You can construct a concrete instance of `HyperVSiteMapInput` via:

HyperVSiteMap{ "key": HyperVSiteArgs{...} }

type HyperVSiteMapOutput added in v5.36.0

type HyperVSiteMapOutput struct{ *pulumi.OutputState }

func (HyperVSiteMapOutput) ElementType added in v5.36.0

func (HyperVSiteMapOutput) ElementType() reflect.Type

func (HyperVSiteMapOutput) MapIndex added in v5.36.0

func (HyperVSiteMapOutput) ToHyperVSiteMapOutput added in v5.36.0

func (o HyperVSiteMapOutput) ToHyperVSiteMapOutput() HyperVSiteMapOutput

func (HyperVSiteMapOutput) ToHyperVSiteMapOutputWithContext added in v5.36.0

func (o HyperVSiteMapOutput) ToHyperVSiteMapOutputWithContext(ctx context.Context) HyperVSiteMapOutput

type HyperVSiteOutput added in v5.36.0

type HyperVSiteOutput struct{ *pulumi.OutputState }

func (HyperVSiteOutput) ElementType added in v5.36.0

func (HyperVSiteOutput) ElementType() reflect.Type

func (HyperVSiteOutput) Name added in v5.36.0

The name which should be used for this Recovery Service. Changing this forces a new Site to be created.

func (HyperVSiteOutput) RecoveryVaultId added in v5.36.0

func (o HyperVSiteOutput) RecoveryVaultId() pulumi.StringOutput

The ID of the Recovery Services Vault where the Site created. Changing this forces a new Site to be created.

func (HyperVSiteOutput) ToHyperVSiteOutput added in v5.36.0

func (o HyperVSiteOutput) ToHyperVSiteOutput() HyperVSiteOutput

func (HyperVSiteOutput) ToHyperVSiteOutputWithContext added in v5.36.0

func (o HyperVSiteOutput) ToHyperVSiteOutputWithContext(ctx context.Context) HyperVSiteOutput

type HyperVSiteState added in v5.36.0

type HyperVSiteState struct {
	// The name which should be used for this Recovery Service. Changing this forces a new Site to be created.
	Name pulumi.StringPtrInput
	// The ID of the Recovery Services Vault where the Site created. Changing this forces a new Site to be created.
	RecoveryVaultId pulumi.StringPtrInput
}

func (HyperVSiteState) ElementType added in v5.36.0

func (HyperVSiteState) ElementType() reflect.Type

type LookupFabricArgs

type LookupFabricArgs struct {
	// Specifies the name of the Site Recovery Replication Fabric.
	Name string `pulumi:"name"`
	// The name of the Recovery Services Vault that the Site Recovery Replication Fabric is associated witth.
	RecoveryVaultName string `pulumi:"recoveryVaultName"`
	// The name of the resource group in which the associated Recovery Services Vault resides.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getFabric.

type LookupFabricOutputArgs

type LookupFabricOutputArgs struct {
	// Specifies the name of the Site Recovery Replication Fabric.
	Name pulumi.StringInput `pulumi:"name"`
	// The name of the Recovery Services Vault that the Site Recovery Replication Fabric is associated witth.
	RecoveryVaultName pulumi.StringInput `pulumi:"recoveryVaultName"`
	// The name of the resource group in which the associated Recovery Services Vault resides.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getFabric.

func (LookupFabricOutputArgs) ElementType

func (LookupFabricOutputArgs) ElementType() reflect.Type

type LookupFabricResult

type LookupFabricResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The Azure location where the Site Recovery Replication Fabric resides.
	Location          string `pulumi:"location"`
	Name              string `pulumi:"name"`
	RecoveryVaultName string `pulumi:"recoveryVaultName"`
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of values returned by getFabric.

func LookupFabric

func LookupFabric(ctx *pulumi.Context, args *LookupFabricArgs, opts ...pulumi.InvokeOption) (*LookupFabricResult, error)

Use this data source to access information about an existing Site Recovery Replication Fabric.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := siterecovery.LookupFabric(ctx, &siterecovery.LookupFabricArgs{
			Name:              "primary-fabric",
			RecoveryVaultName: "tfex-recovery_vault",
			ResourceGroupName: "tfex-resource_group",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupFabricResultOutput

type LookupFabricResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getFabric.

func (LookupFabricResultOutput) ElementType

func (LookupFabricResultOutput) ElementType() reflect.Type

func (LookupFabricResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupFabricResultOutput) Location

The Azure location where the Site Recovery Replication Fabric resides.

func (LookupFabricResultOutput) Name

func (LookupFabricResultOutput) RecoveryVaultName

func (o LookupFabricResultOutput) RecoveryVaultName() pulumi.StringOutput

func (LookupFabricResultOutput) ResourceGroupName

func (o LookupFabricResultOutput) ResourceGroupName() pulumi.StringOutput

func (LookupFabricResultOutput) ToLookupFabricResultOutput

func (o LookupFabricResultOutput) ToLookupFabricResultOutput() LookupFabricResultOutput

func (LookupFabricResultOutput) ToLookupFabricResultOutputWithContext

func (o LookupFabricResultOutput) ToLookupFabricResultOutputWithContext(ctx context.Context) LookupFabricResultOutput

type LookupProtectionContainerArgs

type LookupProtectionContainerArgs struct {
	// Specifies the name of the protection container.
	Name string `pulumi:"name"`
	// The name of the fabric that contains the protection container.
	RecoveryFabricName string `pulumi:"recoveryFabricName"`
	// The name of the Recovery Services Vault that the protection container is associated witth.
	RecoveryVaultName string `pulumi:"recoveryVaultName"`
	// The name of the resource group in which the associated protection container resides.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getProtectionContainer.

type LookupProtectionContainerOutputArgs

type LookupProtectionContainerOutputArgs struct {
	// Specifies the name of the protection container.
	Name pulumi.StringInput `pulumi:"name"`
	// The name of the fabric that contains the protection container.
	RecoveryFabricName pulumi.StringInput `pulumi:"recoveryFabricName"`
	// The name of the Recovery Services Vault that the protection container is associated witth.
	RecoveryVaultName pulumi.StringInput `pulumi:"recoveryVaultName"`
	// The name of the resource group in which the associated protection container resides.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getProtectionContainer.

func (LookupProtectionContainerOutputArgs) ElementType

type LookupProtectionContainerResult

type LookupProtectionContainerResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id                 string `pulumi:"id"`
	Name               string `pulumi:"name"`
	RecoveryFabricName string `pulumi:"recoveryFabricName"`
	RecoveryVaultName  string `pulumi:"recoveryVaultName"`
	ResourceGroupName  string `pulumi:"resourceGroupName"`
}

A collection of values returned by getProtectionContainer.

func LookupProtectionContainer

func LookupProtectionContainer(ctx *pulumi.Context, args *LookupProtectionContainerArgs, opts ...pulumi.InvokeOption) (*LookupProtectionContainerResult, error)

Use this data source to access information about an existing site recovery services protection container.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := siterecovery.LookupProtectionContainer(ctx, &siterecovery.LookupProtectionContainerArgs{
			Name:               "primary-container",
			RecoveryFabricName: "primary-fabric",
			RecoveryVaultName:  "tfex-recovery_vault",
			ResourceGroupName:  "tfex-resource_group",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupProtectionContainerResultOutput

type LookupProtectionContainerResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getProtectionContainer.

func (LookupProtectionContainerResultOutput) ElementType

func (LookupProtectionContainerResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupProtectionContainerResultOutput) Name

func (LookupProtectionContainerResultOutput) RecoveryFabricName

func (LookupProtectionContainerResultOutput) RecoveryVaultName

func (LookupProtectionContainerResultOutput) ResourceGroupName

func (LookupProtectionContainerResultOutput) ToLookupProtectionContainerResultOutput

func (o LookupProtectionContainerResultOutput) ToLookupProtectionContainerResultOutput() LookupProtectionContainerResultOutput

func (LookupProtectionContainerResultOutput) ToLookupProtectionContainerResultOutputWithContext

func (o LookupProtectionContainerResultOutput) ToLookupProtectionContainerResultOutputWithContext(ctx context.Context) LookupProtectionContainerResultOutput

type LookupReplicationPolicyArgs

type LookupReplicationPolicyArgs struct {
	// Specifies the name of the Azure Site Recovery replication policy.
	Name string `pulumi:"name"`
	// The name of the Recovery Services Vault that the Azure Site Recovery replication policy is associated witth.
	RecoveryVaultName string `pulumi:"recoveryVaultName"`
	// The name of the resource group in which the associated Azure Site Recovery replication policy resides.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getReplicationPolicy.

type LookupReplicationPolicyOutputArgs

type LookupReplicationPolicyOutputArgs struct {
	// Specifies the name of the Azure Site Recovery replication policy.
	Name pulumi.StringInput `pulumi:"name"`
	// The name of the Recovery Services Vault that the Azure Site Recovery replication policy is associated witth.
	RecoveryVaultName pulumi.StringInput `pulumi:"recoveryVaultName"`
	// The name of the resource group in which the associated Azure Site Recovery replication policy resides.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getReplicationPolicy.

func (LookupReplicationPolicyOutputArgs) ElementType

type LookupReplicationPolicyResult

type LookupReplicationPolicyResult struct {
	// Specifies the frequency (in minutes) at which to create application consistent recovery.
	ApplicationConsistentSnapshotFrequencyInMinutes int `pulumi:"applicationConsistentSnapshotFrequencyInMinutes"`
	// The provider-assigned unique ID for this managed resource.
	Id   string `pulumi:"id"`
	Name string `pulumi:"name"`
	// The duration in minutes for which the recovery points need to be stored.
	RecoveryPointRetentionInMinutes int    `pulumi:"recoveryPointRetentionInMinutes"`
	RecoveryVaultName               string `pulumi:"recoveryVaultName"`
	ResourceGroupName               string `pulumi:"resourceGroupName"`
}

A collection of values returned by getReplicationPolicy.

func LookupReplicationPolicy

func LookupReplicationPolicy(ctx *pulumi.Context, args *LookupReplicationPolicyArgs, opts ...pulumi.InvokeOption) (*LookupReplicationPolicyResult, error)

Use this data source to access information about an existing Azure Site Recovery replication policy.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := siterecovery.LookupReplicationPolicy(ctx, &siterecovery.LookupReplicationPolicyArgs{
			Name:              "replication-policy",
			RecoveryVaultName: "tfex-recovery_vault",
			ResourceGroupName: "tfex-resource_group",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupReplicationPolicyResultOutput

type LookupReplicationPolicyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getReplicationPolicy.

func (LookupReplicationPolicyResultOutput) ApplicationConsistentSnapshotFrequencyInMinutes

func (o LookupReplicationPolicyResultOutput) ApplicationConsistentSnapshotFrequencyInMinutes() pulumi.IntOutput

Specifies the frequency (in minutes) at which to create application consistent recovery.

func (LookupReplicationPolicyResultOutput) ElementType

func (LookupReplicationPolicyResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupReplicationPolicyResultOutput) Name

func (LookupReplicationPolicyResultOutput) RecoveryPointRetentionInMinutes

func (o LookupReplicationPolicyResultOutput) RecoveryPointRetentionInMinutes() pulumi.IntOutput

The duration in minutes for which the recovery points need to be stored.

func (LookupReplicationPolicyResultOutput) RecoveryVaultName

func (LookupReplicationPolicyResultOutput) ResourceGroupName

func (LookupReplicationPolicyResultOutput) ToLookupReplicationPolicyResultOutput

func (o LookupReplicationPolicyResultOutput) ToLookupReplicationPolicyResultOutput() LookupReplicationPolicyResultOutput

func (LookupReplicationPolicyResultOutput) ToLookupReplicationPolicyResultOutputWithContext

func (o LookupReplicationPolicyResultOutput) ToLookupReplicationPolicyResultOutputWithContext(ctx context.Context) LookupReplicationPolicyResultOutput

type LookupReplicationRecoveryPlanArgs added in v5.33.0

type LookupReplicationRecoveryPlanArgs struct {
	// The name of the Replication Plan.
	Name string `pulumi:"name"`
	// The ID of the vault that should be updated.
	RecoveryVaultId string `pulumi:"recoveryVaultId"`
}

A collection of arguments for invoking getReplicationRecoveryPlan.

type LookupReplicationRecoveryPlanOutputArgs added in v5.33.0

type LookupReplicationRecoveryPlanOutputArgs struct {
	// The name of the Replication Plan.
	Name pulumi.StringInput `pulumi:"name"`
	// The ID of the vault that should be updated.
	RecoveryVaultId pulumi.StringInput `pulumi:"recoveryVaultId"`
}

A collection of arguments for invoking getReplicationRecoveryPlan.

func (LookupReplicationRecoveryPlanOutputArgs) ElementType added in v5.33.0

type LookupReplicationRecoveryPlanResult added in v5.33.0

type LookupReplicationRecoveryPlanResult struct {
	FailoverDeploymentModel string `pulumi:"failoverDeploymentModel"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Name of the Action.
	Name string `pulumi:"name"`
	// `recoveryGroup` block defined as below.
	// ---
	RecoveryGroups  []GetReplicationRecoveryPlanRecoveryGroup `pulumi:"recoveryGroups"`
	RecoveryVaultId string                                    `pulumi:"recoveryVaultId"`
	// The ID of source fabric to be recovered from.
	SourceRecoveryFabricId string `pulumi:"sourceRecoveryFabricId"`
	// The ID of target fabric to recover.
	TargetRecoveryFabricId string `pulumi:"targetRecoveryFabricId"`
}

A collection of values returned by getReplicationRecoveryPlan.

func LookupReplicationRecoveryPlan added in v5.33.0

Get information about an Azure Site Recovery Plan within a Recovery Services vault. A recovery plan gathers machines into recovery groups for the purpose of failover.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		vault, err := recoveryservices.LookupVault(ctx, &recoveryservices.LookupVaultArgs{
			Name:              "tfex-recovery_vault",
			ResourceGroupName: "tfex-resource_group",
		}, nil)
		if err != nil {
			return err
		}
		_, err = siterecovery.LookupReplicationRecoveryPlan(ctx, &siterecovery.LookupReplicationRecoveryPlanArgs{
			Name:            "example-recovery-plan",
			RecoveryVaultId: vault.Id,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupReplicationRecoveryPlanResultOutput added in v5.33.0

type LookupReplicationRecoveryPlanResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getReplicationRecoveryPlan.

func (LookupReplicationRecoveryPlanResultOutput) ElementType added in v5.33.0

func (LookupReplicationRecoveryPlanResultOutput) FailoverDeploymentModel added in v5.33.0

func (LookupReplicationRecoveryPlanResultOutput) Id added in v5.33.0

The provider-assigned unique ID for this managed resource.

func (LookupReplicationRecoveryPlanResultOutput) Name added in v5.33.0

Name of the Action.

func (LookupReplicationRecoveryPlanResultOutput) RecoveryGroups added in v5.33.0

`recoveryGroup` block defined as below. ---

func (LookupReplicationRecoveryPlanResultOutput) RecoveryVaultId added in v5.33.0

func (LookupReplicationRecoveryPlanResultOutput) SourceRecoveryFabricId added in v5.33.0

The ID of source fabric to be recovered from.

func (LookupReplicationRecoveryPlanResultOutput) TargetRecoveryFabricId added in v5.33.0

The ID of target fabric to recover.

func (LookupReplicationRecoveryPlanResultOutput) ToLookupReplicationRecoveryPlanResultOutput added in v5.33.0

func (o LookupReplicationRecoveryPlanResultOutput) ToLookupReplicationRecoveryPlanResultOutput() LookupReplicationRecoveryPlanResultOutput

func (LookupReplicationRecoveryPlanResultOutput) ToLookupReplicationRecoveryPlanResultOutputWithContext added in v5.33.0

func (o LookupReplicationRecoveryPlanResultOutput) ToLookupReplicationRecoveryPlanResultOutputWithContext(ctx context.Context) LookupReplicationRecoveryPlanResultOutput

type NetworkMapping

type NetworkMapping struct {
	pulumi.CustomResourceState

	// The name of the network mapping. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"`
	// Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// The id of the primary network. Changing this forces a new resource to be created.
	SourceNetworkId pulumi.StringOutput `pulumi:"sourceNetworkId"`
	// Specifies the ASR fabric where mapping should be created. Changing this forces a new resource to be created.
	SourceRecoveryFabricName pulumi.StringOutput `pulumi:"sourceRecoveryFabricName"`
	// The id of the recovery network. Changing this forces a new resource to be created.
	TargetNetworkId pulumi.StringOutput `pulumi:"targetNetworkId"`
	// The Azure Site Recovery fabric object corresponding to the recovery Azure region. Changing this forces a new resource to be created.
	TargetRecoveryFabricName pulumi.StringOutput `pulumi:"targetRecoveryFabricName"`
}

Manages a site recovery network mapping on Azure. A network mapping decides how to translate connected networks when a VM is migrated from one region to another.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/recoveryservices"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/siterecovery"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		primaryResourceGroup, err := core.NewResourceGroup(ctx, "primaryResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West US"),
		})
		if err != nil {
			return err
		}
		secondaryResourceGroup, err := core.NewResourceGroup(ctx, "secondaryResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("East US"),
		})
		if err != nil {
			return err
		}
		vault, err := recoveryservices.NewVault(ctx, "vault", &recoveryservices.VaultArgs{
			Location:          secondaryResourceGroup.Location,
			ResourceGroupName: secondaryResourceGroup.Name,
			Sku:               pulumi.String("Standard"),
		})
		if err != nil {
			return err
		}
		primaryFabric, err := siterecovery.NewFabric(ctx, "primaryFabric", &siterecovery.FabricArgs{
			ResourceGroupName: secondaryResourceGroup.Name,
			RecoveryVaultName: vault.Name,
			Location:          primaryResourceGroup.Location,
		})
		if err != nil {
			return err
		}
		_, err = siterecovery.NewFabric(ctx, "secondaryFabric", &siterecovery.FabricArgs{
			ResourceGroupName: secondaryResourceGroup.Name,
			RecoveryVaultName: vault.Name,
			Location:          secondaryResourceGroup.Location,
		}, pulumi.DependsOn([]pulumi.Resource{
			primaryFabric,
		}))
		if err != nil {
			return err
		}
		primaryVirtualNetwork, err := network.NewVirtualNetwork(ctx, "primaryVirtualNetwork", &network.VirtualNetworkArgs{
			ResourceGroupName: primaryResourceGroup.Name,
			AddressSpaces: pulumi.StringArray{
				pulumi.String("192.168.1.0/24"),
			},
			Location: primaryResourceGroup.Location,
		})
		if err != nil {
			return err
		}
		secondaryVirtualNetwork, err := network.NewVirtualNetwork(ctx, "secondaryVirtualNetwork", &network.VirtualNetworkArgs{
			ResourceGroupName: secondaryResourceGroup.Name,
			AddressSpaces: pulumi.StringArray{
				pulumi.String("192.168.2.0/24"),
			},
			Location: secondaryResourceGroup.Location,
		})
		if err != nil {
			return err
		}
		_, err = siterecovery.NewNetworkMapping(ctx, "recovery-mapping", &siterecovery.NetworkMappingArgs{
			ResourceGroupName:        secondaryResourceGroup.Name,
			RecoveryVaultName:        vault.Name,
			SourceRecoveryFabricName: pulumi.String("primary-fabric"),
			TargetRecoveryFabricName: pulumi.String("secondary-fabric"),
			SourceNetworkId:          primaryVirtualNetwork.ID(),
			TargetNetworkId:          secondaryVirtualNetwork.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Site Recovery Network Mapping can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:siterecovery/networkMapping:NetworkMapping mymapping /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-name/providers/Microsoft.RecoveryServices/vaults/recovery-vault-name/replicationFabrics/primary-fabric-name/replicationNetworks/azureNetwork/replicationNetworkMappings/mapping-name

```

func GetNetworkMapping

func GetNetworkMapping(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NetworkMappingState, opts ...pulumi.ResourceOption) (*NetworkMapping, error)

GetNetworkMapping gets an existing NetworkMapping 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 NewNetworkMapping

func NewNetworkMapping(ctx *pulumi.Context,
	name string, args *NetworkMappingArgs, opts ...pulumi.ResourceOption) (*NetworkMapping, error)

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

func (*NetworkMapping) ElementType

func (*NetworkMapping) ElementType() reflect.Type

func (*NetworkMapping) ToNetworkMappingOutput

func (i *NetworkMapping) ToNetworkMappingOutput() NetworkMappingOutput

func (*NetworkMapping) ToNetworkMappingOutputWithContext

func (i *NetworkMapping) ToNetworkMappingOutputWithContext(ctx context.Context) NetworkMappingOutput

type NetworkMappingArgs

type NetworkMappingArgs struct {
	// The name of the network mapping. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringInput
	// Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// The id of the primary network. Changing this forces a new resource to be created.
	SourceNetworkId pulumi.StringInput
	// Specifies the ASR fabric where mapping should be created. Changing this forces a new resource to be created.
	SourceRecoveryFabricName pulumi.StringInput
	// The id of the recovery network. Changing this forces a new resource to be created.
	TargetNetworkId pulumi.StringInput
	// The Azure Site Recovery fabric object corresponding to the recovery Azure region. Changing this forces a new resource to be created.
	TargetRecoveryFabricName pulumi.StringInput
}

The set of arguments for constructing a NetworkMapping resource.

func (NetworkMappingArgs) ElementType

func (NetworkMappingArgs) ElementType() reflect.Type

type NetworkMappingArray

type NetworkMappingArray []NetworkMappingInput

func (NetworkMappingArray) ElementType

func (NetworkMappingArray) ElementType() reflect.Type

func (NetworkMappingArray) ToNetworkMappingArrayOutput

func (i NetworkMappingArray) ToNetworkMappingArrayOutput() NetworkMappingArrayOutput

func (NetworkMappingArray) ToNetworkMappingArrayOutputWithContext

func (i NetworkMappingArray) ToNetworkMappingArrayOutputWithContext(ctx context.Context) NetworkMappingArrayOutput

type NetworkMappingArrayInput

type NetworkMappingArrayInput interface {
	pulumi.Input

	ToNetworkMappingArrayOutput() NetworkMappingArrayOutput
	ToNetworkMappingArrayOutputWithContext(context.Context) NetworkMappingArrayOutput
}

NetworkMappingArrayInput is an input type that accepts NetworkMappingArray and NetworkMappingArrayOutput values. You can construct a concrete instance of `NetworkMappingArrayInput` via:

NetworkMappingArray{ NetworkMappingArgs{...} }

type NetworkMappingArrayOutput

type NetworkMappingArrayOutput struct{ *pulumi.OutputState }

func (NetworkMappingArrayOutput) ElementType

func (NetworkMappingArrayOutput) ElementType() reflect.Type

func (NetworkMappingArrayOutput) Index

func (NetworkMappingArrayOutput) ToNetworkMappingArrayOutput

func (o NetworkMappingArrayOutput) ToNetworkMappingArrayOutput() NetworkMappingArrayOutput

func (NetworkMappingArrayOutput) ToNetworkMappingArrayOutputWithContext

func (o NetworkMappingArrayOutput) ToNetworkMappingArrayOutputWithContext(ctx context.Context) NetworkMappingArrayOutput

type NetworkMappingInput

type NetworkMappingInput interface {
	pulumi.Input

	ToNetworkMappingOutput() NetworkMappingOutput
	ToNetworkMappingOutputWithContext(ctx context.Context) NetworkMappingOutput
}

type NetworkMappingMap

type NetworkMappingMap map[string]NetworkMappingInput

func (NetworkMappingMap) ElementType

func (NetworkMappingMap) ElementType() reflect.Type

func (NetworkMappingMap) ToNetworkMappingMapOutput

func (i NetworkMappingMap) ToNetworkMappingMapOutput() NetworkMappingMapOutput

func (NetworkMappingMap) ToNetworkMappingMapOutputWithContext

func (i NetworkMappingMap) ToNetworkMappingMapOutputWithContext(ctx context.Context) NetworkMappingMapOutput

type NetworkMappingMapInput

type NetworkMappingMapInput interface {
	pulumi.Input

	ToNetworkMappingMapOutput() NetworkMappingMapOutput
	ToNetworkMappingMapOutputWithContext(context.Context) NetworkMappingMapOutput
}

NetworkMappingMapInput is an input type that accepts NetworkMappingMap and NetworkMappingMapOutput values. You can construct a concrete instance of `NetworkMappingMapInput` via:

NetworkMappingMap{ "key": NetworkMappingArgs{...} }

type NetworkMappingMapOutput

type NetworkMappingMapOutput struct{ *pulumi.OutputState }

func (NetworkMappingMapOutput) ElementType

func (NetworkMappingMapOutput) ElementType() reflect.Type

func (NetworkMappingMapOutput) MapIndex

func (NetworkMappingMapOutput) ToNetworkMappingMapOutput

func (o NetworkMappingMapOutput) ToNetworkMappingMapOutput() NetworkMappingMapOutput

func (NetworkMappingMapOutput) ToNetworkMappingMapOutputWithContext

func (o NetworkMappingMapOutput) ToNetworkMappingMapOutputWithContext(ctx context.Context) NetworkMappingMapOutput

type NetworkMappingOutput

type NetworkMappingOutput struct{ *pulumi.OutputState }

func (NetworkMappingOutput) ElementType

func (NetworkMappingOutput) ElementType() reflect.Type

func (NetworkMappingOutput) Name added in v5.5.0

The name of the network mapping. Changing this forces a new resource to be created.

func (NetworkMappingOutput) RecoveryVaultName added in v5.5.0

func (o NetworkMappingOutput) RecoveryVaultName() pulumi.StringOutput

The name of the vault that should be updated. Changing this forces a new resource to be created.

func (NetworkMappingOutput) ResourceGroupName added in v5.5.0

func (o NetworkMappingOutput) ResourceGroupName() pulumi.StringOutput

Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.

func (NetworkMappingOutput) SourceNetworkId added in v5.5.0

func (o NetworkMappingOutput) SourceNetworkId() pulumi.StringOutput

The id of the primary network. Changing this forces a new resource to be created.

func (NetworkMappingOutput) SourceRecoveryFabricName added in v5.5.0

func (o NetworkMappingOutput) SourceRecoveryFabricName() pulumi.StringOutput

Specifies the ASR fabric where mapping should be created. Changing this forces a new resource to be created.

func (NetworkMappingOutput) TargetNetworkId added in v5.5.0

func (o NetworkMappingOutput) TargetNetworkId() pulumi.StringOutput

The id of the recovery network. Changing this forces a new resource to be created.

func (NetworkMappingOutput) TargetRecoveryFabricName added in v5.5.0

func (o NetworkMappingOutput) TargetRecoveryFabricName() pulumi.StringOutput

The Azure Site Recovery fabric object corresponding to the recovery Azure region. Changing this forces a new resource to be created.

func (NetworkMappingOutput) ToNetworkMappingOutput

func (o NetworkMappingOutput) ToNetworkMappingOutput() NetworkMappingOutput

func (NetworkMappingOutput) ToNetworkMappingOutputWithContext

func (o NetworkMappingOutput) ToNetworkMappingOutputWithContext(ctx context.Context) NetworkMappingOutput

type NetworkMappingState

type NetworkMappingState struct {
	// The name of the network mapping. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringPtrInput
	// Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// The id of the primary network. Changing this forces a new resource to be created.
	SourceNetworkId pulumi.StringPtrInput
	// Specifies the ASR fabric where mapping should be created. Changing this forces a new resource to be created.
	SourceRecoveryFabricName pulumi.StringPtrInput
	// The id of the recovery network. Changing this forces a new resource to be created.
	TargetNetworkId pulumi.StringPtrInput
	// The Azure Site Recovery fabric object corresponding to the recovery Azure region. Changing this forces a new resource to be created.
	TargetRecoveryFabricName pulumi.StringPtrInput
}

func (NetworkMappingState) ElementType

func (NetworkMappingState) ElementType() reflect.Type

type ProtectionContainer

type ProtectionContainer struct {
	pulumi.CustomResourceState

	// The name of the protection container. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Name of fabric that should contain this protection container. Changing this forces a new resource to be created.
	RecoveryFabricName pulumi.StringOutput `pulumi:"recoveryFabricName"`
	// The name of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"`
	// Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
}

Manages a Azure Site Recovery protection container. Protection containers serve as containers for replicated VMs and belong to a single region / recovery fabric. Protection containers can contain more than one replicated VM. To replicate a VM, a container must exist in both the source and target Azure regions.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		primary, err := core.NewResourceGroup(ctx, "primary", &core.ResourceGroupArgs{
			Location: pulumi.String("West US"),
		})
		if err != nil {
			return err
		}
		secondary, err := core.NewResourceGroup(ctx, "secondary", &core.ResourceGroupArgs{
			Location: pulumi.String("East US"),
		})
		if err != nil {
			return err
		}
		vault, err := recoveryservices.NewVault(ctx, "vault", &recoveryservices.VaultArgs{
			Location:          secondary.Location,
			ResourceGroupName: secondary.Name,
			Sku:               pulumi.String("Standard"),
		})
		if err != nil {
			return err
		}
		fabric, err := siterecovery.NewFabric(ctx, "fabric", &siterecovery.FabricArgs{
			ResourceGroupName: secondary.Name,
			RecoveryVaultName: vault.Name,
			Location:          primary.Location,
		})
		if err != nil {
			return err
		}
		_, err = siterecovery.NewProtectionContainer(ctx, "protection-container", &siterecovery.ProtectionContainerArgs{
			ResourceGroupName:  secondary.Name,
			RecoveryVaultName:  vault.Name,
			RecoveryFabricName: fabric.Name,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Site Recovery Protection Containers can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:siterecovery/protectionContainer:ProtectionContainer mycontainer /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-name/providers/Microsoft.RecoveryServices/vaults/recovery-vault-name/replicationFabrics/fabric-name/replicationProtectionContainers/protection-container-name

```

func GetProtectionContainer

func GetProtectionContainer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProtectionContainerState, opts ...pulumi.ResourceOption) (*ProtectionContainer, error)

GetProtectionContainer gets an existing ProtectionContainer 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 NewProtectionContainer

func NewProtectionContainer(ctx *pulumi.Context,
	name string, args *ProtectionContainerArgs, opts ...pulumi.ResourceOption) (*ProtectionContainer, error)

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

func (*ProtectionContainer) ElementType

func (*ProtectionContainer) ElementType() reflect.Type

func (*ProtectionContainer) ToProtectionContainerOutput

func (i *ProtectionContainer) ToProtectionContainerOutput() ProtectionContainerOutput

func (*ProtectionContainer) ToProtectionContainerOutputWithContext

func (i *ProtectionContainer) ToProtectionContainerOutputWithContext(ctx context.Context) ProtectionContainerOutput

type ProtectionContainerArgs

type ProtectionContainerArgs struct {
	// The name of the protection container. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Name of fabric that should contain this protection container. Changing this forces a new resource to be created.
	RecoveryFabricName pulumi.StringInput
	// The name of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringInput
	// Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
}

The set of arguments for constructing a ProtectionContainer resource.

func (ProtectionContainerArgs) ElementType

func (ProtectionContainerArgs) ElementType() reflect.Type

type ProtectionContainerArray

type ProtectionContainerArray []ProtectionContainerInput

func (ProtectionContainerArray) ElementType

func (ProtectionContainerArray) ElementType() reflect.Type

func (ProtectionContainerArray) ToProtectionContainerArrayOutput

func (i ProtectionContainerArray) ToProtectionContainerArrayOutput() ProtectionContainerArrayOutput

func (ProtectionContainerArray) ToProtectionContainerArrayOutputWithContext

func (i ProtectionContainerArray) ToProtectionContainerArrayOutputWithContext(ctx context.Context) ProtectionContainerArrayOutput

type ProtectionContainerArrayInput

type ProtectionContainerArrayInput interface {
	pulumi.Input

	ToProtectionContainerArrayOutput() ProtectionContainerArrayOutput
	ToProtectionContainerArrayOutputWithContext(context.Context) ProtectionContainerArrayOutput
}

ProtectionContainerArrayInput is an input type that accepts ProtectionContainerArray and ProtectionContainerArrayOutput values. You can construct a concrete instance of `ProtectionContainerArrayInput` via:

ProtectionContainerArray{ ProtectionContainerArgs{...} }

type ProtectionContainerArrayOutput

type ProtectionContainerArrayOutput struct{ *pulumi.OutputState }

func (ProtectionContainerArrayOutput) ElementType

func (ProtectionContainerArrayOutput) Index

func (ProtectionContainerArrayOutput) ToProtectionContainerArrayOutput

func (o ProtectionContainerArrayOutput) ToProtectionContainerArrayOutput() ProtectionContainerArrayOutput

func (ProtectionContainerArrayOutput) ToProtectionContainerArrayOutputWithContext

func (o ProtectionContainerArrayOutput) ToProtectionContainerArrayOutputWithContext(ctx context.Context) ProtectionContainerArrayOutput

type ProtectionContainerInput

type ProtectionContainerInput interface {
	pulumi.Input

	ToProtectionContainerOutput() ProtectionContainerOutput
	ToProtectionContainerOutputWithContext(ctx context.Context) ProtectionContainerOutput
}

type ProtectionContainerMap

type ProtectionContainerMap map[string]ProtectionContainerInput

func (ProtectionContainerMap) ElementType

func (ProtectionContainerMap) ElementType() reflect.Type

func (ProtectionContainerMap) ToProtectionContainerMapOutput

func (i ProtectionContainerMap) ToProtectionContainerMapOutput() ProtectionContainerMapOutput

func (ProtectionContainerMap) ToProtectionContainerMapOutputWithContext

func (i ProtectionContainerMap) ToProtectionContainerMapOutputWithContext(ctx context.Context) ProtectionContainerMapOutput

type ProtectionContainerMapInput

type ProtectionContainerMapInput interface {
	pulumi.Input

	ToProtectionContainerMapOutput() ProtectionContainerMapOutput
	ToProtectionContainerMapOutputWithContext(context.Context) ProtectionContainerMapOutput
}

ProtectionContainerMapInput is an input type that accepts ProtectionContainerMap and ProtectionContainerMapOutput values. You can construct a concrete instance of `ProtectionContainerMapInput` via:

ProtectionContainerMap{ "key": ProtectionContainerArgs{...} }

type ProtectionContainerMapOutput

type ProtectionContainerMapOutput struct{ *pulumi.OutputState }

func (ProtectionContainerMapOutput) ElementType

func (ProtectionContainerMapOutput) MapIndex

func (ProtectionContainerMapOutput) ToProtectionContainerMapOutput

func (o ProtectionContainerMapOutput) ToProtectionContainerMapOutput() ProtectionContainerMapOutput

func (ProtectionContainerMapOutput) ToProtectionContainerMapOutputWithContext

func (o ProtectionContainerMapOutput) ToProtectionContainerMapOutputWithContext(ctx context.Context) ProtectionContainerMapOutput

type ProtectionContainerMapping

type ProtectionContainerMapping struct {
	pulumi.CustomResourceState

	// a `automaticUpdate` block defined as below.
	AutomaticUpdate ProtectionContainerMappingAutomaticUpdateOutput `pulumi:"automaticUpdate"`
	// The name of the protection container mapping. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Name of fabric that should contains the protection container to map. Changing this forces a new resource to be created.
	RecoveryFabricName pulumi.StringOutput `pulumi:"recoveryFabricName"`
	// Id of the policy to use for this mapping. Changing this forces a new resource to be created.
	RecoveryReplicationPolicyId pulumi.StringOutput `pulumi:"recoveryReplicationPolicyId"`
	// Name of the source protection container to map. Changing this forces a new resource to be created.
	RecoverySourceProtectionContainerName pulumi.StringOutput `pulumi:"recoverySourceProtectionContainerName"`
	// Id of target protection container to map to. Changing this forces a new resource to be created.
	RecoveryTargetProtectionContainerId pulumi.StringOutput `pulumi:"recoveryTargetProtectionContainerId"`
	// The name of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"`
	// Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
}

Manages a Azure recovery vault protection container mapping. A protection container mapping decides how to translate the protection container when a VM is migrated from one region to another.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		primaryResourceGroup, err := core.NewResourceGroup(ctx, "primaryResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West US"),
		})
		if err != nil {
			return err
		}
		secondaryResourceGroup, err := core.NewResourceGroup(ctx, "secondaryResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("East US"),
		})
		if err != nil {
			return err
		}
		vault, err := recoveryservices.NewVault(ctx, "vault", &recoveryservices.VaultArgs{
			Location:          secondaryResourceGroup.Location,
			ResourceGroupName: secondaryResourceGroup.Name,
			Sku:               pulumi.String("Standard"),
		})
		if err != nil {
			return err
		}
		primaryFabric, err := siterecovery.NewFabric(ctx, "primaryFabric", &siterecovery.FabricArgs{
			ResourceGroupName: secondaryResourceGroup.Name,
			RecoveryVaultName: vault.Name,
			Location:          primaryResourceGroup.Location,
		})
		if err != nil {
			return err
		}
		secondaryFabric, err := siterecovery.NewFabric(ctx, "secondaryFabric", &siterecovery.FabricArgs{
			ResourceGroupName: secondaryResourceGroup.Name,
			RecoveryVaultName: vault.Name,
			Location:          secondaryResourceGroup.Location,
		})
		if err != nil {
			return err
		}
		primaryProtectionContainer, err := siterecovery.NewProtectionContainer(ctx, "primaryProtectionContainer", &siterecovery.ProtectionContainerArgs{
			ResourceGroupName:  secondaryResourceGroup.Name,
			RecoveryVaultName:  vault.Name,
			RecoveryFabricName: primaryFabric.Name,
		})
		if err != nil {
			return err
		}
		secondaryProtectionContainer, err := siterecovery.NewProtectionContainer(ctx, "secondaryProtectionContainer", &siterecovery.ProtectionContainerArgs{
			ResourceGroupName:  secondaryResourceGroup.Name,
			RecoveryVaultName:  vault.Name,
			RecoveryFabricName: secondaryFabric.Name,
		})
		if err != nil {
			return err
		}
		policy, err := siterecovery.NewReplicationPolicy(ctx, "policy", &siterecovery.ReplicationPolicyArgs{
			ResourceGroupName:                               secondaryResourceGroup.Name,
			RecoveryVaultName:                               vault.Name,
			RecoveryPointRetentionInMinutes:                 24 * 60,
			ApplicationConsistentSnapshotFrequencyInMinutes: 4 * 60,
		})
		if err != nil {
			return err
		}
		_, err = siterecovery.NewProtectionContainerMapping(ctx, "container-mapping", &siterecovery.ProtectionContainerMappingArgs{
			ResourceGroupName:                     secondaryResourceGroup.Name,
			RecoveryVaultName:                     vault.Name,
			RecoveryFabricName:                    primaryFabric.Name,
			RecoverySourceProtectionContainerName: primaryProtectionContainer.Name,
			RecoveryTargetProtectionContainerId:   secondaryProtectionContainer.ID(),
			RecoveryReplicationPolicyId:           policy.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Site Recovery Protection Container Mappings can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:siterecovery/protectionContainerMapping:ProtectionContainerMapping mymapping /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-name/providers/Microsoft.RecoveryServices/vaults/recovery-vault-name/replicationFabrics/fabric1/replicationProtectionContainers/container1/replicationProtectionContainerMappings/mapping1

```

func GetProtectionContainerMapping

func GetProtectionContainerMapping(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProtectionContainerMappingState, opts ...pulumi.ResourceOption) (*ProtectionContainerMapping, error)

GetProtectionContainerMapping gets an existing ProtectionContainerMapping 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 NewProtectionContainerMapping

func NewProtectionContainerMapping(ctx *pulumi.Context,
	name string, args *ProtectionContainerMappingArgs, opts ...pulumi.ResourceOption) (*ProtectionContainerMapping, error)

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

func (*ProtectionContainerMapping) ElementType

func (*ProtectionContainerMapping) ElementType() reflect.Type

func (*ProtectionContainerMapping) ToProtectionContainerMappingOutput

func (i *ProtectionContainerMapping) ToProtectionContainerMappingOutput() ProtectionContainerMappingOutput

func (*ProtectionContainerMapping) ToProtectionContainerMappingOutputWithContext

func (i *ProtectionContainerMapping) ToProtectionContainerMappingOutputWithContext(ctx context.Context) ProtectionContainerMappingOutput

type ProtectionContainerMappingArgs

type ProtectionContainerMappingArgs struct {
	// a `automaticUpdate` block defined as below.
	AutomaticUpdate ProtectionContainerMappingAutomaticUpdatePtrInput
	// The name of the protection container mapping. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Name of fabric that should contains the protection container to map. Changing this forces a new resource to be created.
	RecoveryFabricName pulumi.StringInput
	// Id of the policy to use for this mapping. Changing this forces a new resource to be created.
	RecoveryReplicationPolicyId pulumi.StringInput
	// Name of the source protection container to map. Changing this forces a new resource to be created.
	RecoverySourceProtectionContainerName pulumi.StringInput
	// Id of target protection container to map to. Changing this forces a new resource to be created.
	RecoveryTargetProtectionContainerId pulumi.StringInput
	// The name of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringInput
	// Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
}

The set of arguments for constructing a ProtectionContainerMapping resource.

func (ProtectionContainerMappingArgs) ElementType

type ProtectionContainerMappingArray

type ProtectionContainerMappingArray []ProtectionContainerMappingInput

func (ProtectionContainerMappingArray) ElementType

func (ProtectionContainerMappingArray) ToProtectionContainerMappingArrayOutput

func (i ProtectionContainerMappingArray) ToProtectionContainerMappingArrayOutput() ProtectionContainerMappingArrayOutput

func (ProtectionContainerMappingArray) ToProtectionContainerMappingArrayOutputWithContext

func (i ProtectionContainerMappingArray) ToProtectionContainerMappingArrayOutputWithContext(ctx context.Context) ProtectionContainerMappingArrayOutput

type ProtectionContainerMappingArrayInput

type ProtectionContainerMappingArrayInput interface {
	pulumi.Input

	ToProtectionContainerMappingArrayOutput() ProtectionContainerMappingArrayOutput
	ToProtectionContainerMappingArrayOutputWithContext(context.Context) ProtectionContainerMappingArrayOutput
}

ProtectionContainerMappingArrayInput is an input type that accepts ProtectionContainerMappingArray and ProtectionContainerMappingArrayOutput values. You can construct a concrete instance of `ProtectionContainerMappingArrayInput` via:

ProtectionContainerMappingArray{ ProtectionContainerMappingArgs{...} }

type ProtectionContainerMappingArrayOutput

type ProtectionContainerMappingArrayOutput struct{ *pulumi.OutputState }

func (ProtectionContainerMappingArrayOutput) ElementType

func (ProtectionContainerMappingArrayOutput) Index

func (ProtectionContainerMappingArrayOutput) ToProtectionContainerMappingArrayOutput

func (o ProtectionContainerMappingArrayOutput) ToProtectionContainerMappingArrayOutput() ProtectionContainerMappingArrayOutput

func (ProtectionContainerMappingArrayOutput) ToProtectionContainerMappingArrayOutputWithContext

func (o ProtectionContainerMappingArrayOutput) ToProtectionContainerMappingArrayOutputWithContext(ctx context.Context) ProtectionContainerMappingArrayOutput

type ProtectionContainerMappingAutomaticUpdate added in v5.34.0

type ProtectionContainerMappingAutomaticUpdate struct {
	// The automation account ID which holds the automatic update runbook and authenticates to Azure resources.
	AutomationAccountId *string `pulumi:"automationAccountId"`
	// Should the Mobility service installed on Azure virtual machines be automatically updated. Defaults to `false`.
	Enabled *bool `pulumi:"enabled"`
}

type ProtectionContainerMappingAutomaticUpdateArgs added in v5.34.0

type ProtectionContainerMappingAutomaticUpdateArgs struct {
	// The automation account ID which holds the automatic update runbook and authenticates to Azure resources.
	AutomationAccountId pulumi.StringPtrInput `pulumi:"automationAccountId"`
	// Should the Mobility service installed on Azure virtual machines be automatically updated. Defaults to `false`.
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
}

func (ProtectionContainerMappingAutomaticUpdateArgs) ElementType added in v5.34.0

func (ProtectionContainerMappingAutomaticUpdateArgs) ToProtectionContainerMappingAutomaticUpdateOutput added in v5.34.0

func (i ProtectionContainerMappingAutomaticUpdateArgs) ToProtectionContainerMappingAutomaticUpdateOutput() ProtectionContainerMappingAutomaticUpdateOutput

func (ProtectionContainerMappingAutomaticUpdateArgs) ToProtectionContainerMappingAutomaticUpdateOutputWithContext added in v5.34.0

func (i ProtectionContainerMappingAutomaticUpdateArgs) ToProtectionContainerMappingAutomaticUpdateOutputWithContext(ctx context.Context) ProtectionContainerMappingAutomaticUpdateOutput

func (ProtectionContainerMappingAutomaticUpdateArgs) ToProtectionContainerMappingAutomaticUpdatePtrOutput added in v5.34.0

func (i ProtectionContainerMappingAutomaticUpdateArgs) ToProtectionContainerMappingAutomaticUpdatePtrOutput() ProtectionContainerMappingAutomaticUpdatePtrOutput

func (ProtectionContainerMappingAutomaticUpdateArgs) ToProtectionContainerMappingAutomaticUpdatePtrOutputWithContext added in v5.34.0

func (i ProtectionContainerMappingAutomaticUpdateArgs) ToProtectionContainerMappingAutomaticUpdatePtrOutputWithContext(ctx context.Context) ProtectionContainerMappingAutomaticUpdatePtrOutput

type ProtectionContainerMappingAutomaticUpdateInput added in v5.34.0

type ProtectionContainerMappingAutomaticUpdateInput interface {
	pulumi.Input

	ToProtectionContainerMappingAutomaticUpdateOutput() ProtectionContainerMappingAutomaticUpdateOutput
	ToProtectionContainerMappingAutomaticUpdateOutputWithContext(context.Context) ProtectionContainerMappingAutomaticUpdateOutput
}

ProtectionContainerMappingAutomaticUpdateInput is an input type that accepts ProtectionContainerMappingAutomaticUpdateArgs and ProtectionContainerMappingAutomaticUpdateOutput values. You can construct a concrete instance of `ProtectionContainerMappingAutomaticUpdateInput` via:

ProtectionContainerMappingAutomaticUpdateArgs{...}

type ProtectionContainerMappingAutomaticUpdateOutput added in v5.34.0

type ProtectionContainerMappingAutomaticUpdateOutput struct{ *pulumi.OutputState }

func (ProtectionContainerMappingAutomaticUpdateOutput) AutomationAccountId added in v5.34.0

The automation account ID which holds the automatic update runbook and authenticates to Azure resources.

func (ProtectionContainerMappingAutomaticUpdateOutput) ElementType added in v5.34.0

func (ProtectionContainerMappingAutomaticUpdateOutput) Enabled added in v5.34.0

Should the Mobility service installed on Azure virtual machines be automatically updated. Defaults to `false`.

func (ProtectionContainerMappingAutomaticUpdateOutput) ToProtectionContainerMappingAutomaticUpdateOutput added in v5.34.0

func (o ProtectionContainerMappingAutomaticUpdateOutput) ToProtectionContainerMappingAutomaticUpdateOutput() ProtectionContainerMappingAutomaticUpdateOutput

func (ProtectionContainerMappingAutomaticUpdateOutput) ToProtectionContainerMappingAutomaticUpdateOutputWithContext added in v5.34.0

func (o ProtectionContainerMappingAutomaticUpdateOutput) ToProtectionContainerMappingAutomaticUpdateOutputWithContext(ctx context.Context) ProtectionContainerMappingAutomaticUpdateOutput

func (ProtectionContainerMappingAutomaticUpdateOutput) ToProtectionContainerMappingAutomaticUpdatePtrOutput added in v5.34.0

func (o ProtectionContainerMappingAutomaticUpdateOutput) ToProtectionContainerMappingAutomaticUpdatePtrOutput() ProtectionContainerMappingAutomaticUpdatePtrOutput

func (ProtectionContainerMappingAutomaticUpdateOutput) ToProtectionContainerMappingAutomaticUpdatePtrOutputWithContext added in v5.34.0

func (o ProtectionContainerMappingAutomaticUpdateOutput) ToProtectionContainerMappingAutomaticUpdatePtrOutputWithContext(ctx context.Context) ProtectionContainerMappingAutomaticUpdatePtrOutput

type ProtectionContainerMappingAutomaticUpdatePtrInput added in v5.34.0

type ProtectionContainerMappingAutomaticUpdatePtrInput interface {
	pulumi.Input

	ToProtectionContainerMappingAutomaticUpdatePtrOutput() ProtectionContainerMappingAutomaticUpdatePtrOutput
	ToProtectionContainerMappingAutomaticUpdatePtrOutputWithContext(context.Context) ProtectionContainerMappingAutomaticUpdatePtrOutput
}

ProtectionContainerMappingAutomaticUpdatePtrInput is an input type that accepts ProtectionContainerMappingAutomaticUpdateArgs, ProtectionContainerMappingAutomaticUpdatePtr and ProtectionContainerMappingAutomaticUpdatePtrOutput values. You can construct a concrete instance of `ProtectionContainerMappingAutomaticUpdatePtrInput` via:

        ProtectionContainerMappingAutomaticUpdateArgs{...}

or:

        nil

type ProtectionContainerMappingAutomaticUpdatePtrOutput added in v5.34.0

type ProtectionContainerMappingAutomaticUpdatePtrOutput struct{ *pulumi.OutputState }

func (ProtectionContainerMappingAutomaticUpdatePtrOutput) AutomationAccountId added in v5.34.0

The automation account ID which holds the automatic update runbook and authenticates to Azure resources.

func (ProtectionContainerMappingAutomaticUpdatePtrOutput) Elem added in v5.34.0

func (ProtectionContainerMappingAutomaticUpdatePtrOutput) ElementType added in v5.34.0

func (ProtectionContainerMappingAutomaticUpdatePtrOutput) Enabled added in v5.34.0

Should the Mobility service installed on Azure virtual machines be automatically updated. Defaults to `false`.

func (ProtectionContainerMappingAutomaticUpdatePtrOutput) ToProtectionContainerMappingAutomaticUpdatePtrOutput added in v5.34.0

func (o ProtectionContainerMappingAutomaticUpdatePtrOutput) ToProtectionContainerMappingAutomaticUpdatePtrOutput() ProtectionContainerMappingAutomaticUpdatePtrOutput

func (ProtectionContainerMappingAutomaticUpdatePtrOutput) ToProtectionContainerMappingAutomaticUpdatePtrOutputWithContext added in v5.34.0

func (o ProtectionContainerMappingAutomaticUpdatePtrOutput) ToProtectionContainerMappingAutomaticUpdatePtrOutputWithContext(ctx context.Context) ProtectionContainerMappingAutomaticUpdatePtrOutput

type ProtectionContainerMappingInput

type ProtectionContainerMappingInput interface {
	pulumi.Input

	ToProtectionContainerMappingOutput() ProtectionContainerMappingOutput
	ToProtectionContainerMappingOutputWithContext(ctx context.Context) ProtectionContainerMappingOutput
}

type ProtectionContainerMappingMap

type ProtectionContainerMappingMap map[string]ProtectionContainerMappingInput

func (ProtectionContainerMappingMap) ElementType

func (ProtectionContainerMappingMap) ToProtectionContainerMappingMapOutput

func (i ProtectionContainerMappingMap) ToProtectionContainerMappingMapOutput() ProtectionContainerMappingMapOutput

func (ProtectionContainerMappingMap) ToProtectionContainerMappingMapOutputWithContext

func (i ProtectionContainerMappingMap) ToProtectionContainerMappingMapOutputWithContext(ctx context.Context) ProtectionContainerMappingMapOutput

type ProtectionContainerMappingMapInput

type ProtectionContainerMappingMapInput interface {
	pulumi.Input

	ToProtectionContainerMappingMapOutput() ProtectionContainerMappingMapOutput
	ToProtectionContainerMappingMapOutputWithContext(context.Context) ProtectionContainerMappingMapOutput
}

ProtectionContainerMappingMapInput is an input type that accepts ProtectionContainerMappingMap and ProtectionContainerMappingMapOutput values. You can construct a concrete instance of `ProtectionContainerMappingMapInput` via:

ProtectionContainerMappingMap{ "key": ProtectionContainerMappingArgs{...} }

type ProtectionContainerMappingMapOutput

type ProtectionContainerMappingMapOutput struct{ *pulumi.OutputState }

func (ProtectionContainerMappingMapOutput) ElementType

func (ProtectionContainerMappingMapOutput) MapIndex

func (ProtectionContainerMappingMapOutput) ToProtectionContainerMappingMapOutput

func (o ProtectionContainerMappingMapOutput) ToProtectionContainerMappingMapOutput() ProtectionContainerMappingMapOutput

func (ProtectionContainerMappingMapOutput) ToProtectionContainerMappingMapOutputWithContext

func (o ProtectionContainerMappingMapOutput) ToProtectionContainerMappingMapOutputWithContext(ctx context.Context) ProtectionContainerMappingMapOutput

type ProtectionContainerMappingOutput

type ProtectionContainerMappingOutput struct{ *pulumi.OutputState }

func (ProtectionContainerMappingOutput) AutomaticUpdate added in v5.34.0

a `automaticUpdate` block defined as below.

func (ProtectionContainerMappingOutput) ElementType

func (ProtectionContainerMappingOutput) Name added in v5.5.0

The name of the protection container mapping. Changing this forces a new resource to be created.

func (ProtectionContainerMappingOutput) RecoveryFabricName added in v5.5.0

func (o ProtectionContainerMappingOutput) RecoveryFabricName() pulumi.StringOutput

Name of fabric that should contains the protection container to map. Changing this forces a new resource to be created.

func (ProtectionContainerMappingOutput) RecoveryReplicationPolicyId added in v5.5.0

func (o ProtectionContainerMappingOutput) RecoveryReplicationPolicyId() pulumi.StringOutput

Id of the policy to use for this mapping. Changing this forces a new resource to be created.

func (ProtectionContainerMappingOutput) RecoverySourceProtectionContainerName added in v5.5.0

func (o ProtectionContainerMappingOutput) RecoverySourceProtectionContainerName() pulumi.StringOutput

Name of the source protection container to map. Changing this forces a new resource to be created.

func (ProtectionContainerMappingOutput) RecoveryTargetProtectionContainerId added in v5.5.0

func (o ProtectionContainerMappingOutput) RecoveryTargetProtectionContainerId() pulumi.StringOutput

Id of target protection container to map to. Changing this forces a new resource to be created.

func (ProtectionContainerMappingOutput) RecoveryVaultName added in v5.5.0

The name of the vault that should be updated. Changing this forces a new resource to be created.

func (ProtectionContainerMappingOutput) ResourceGroupName added in v5.5.0

Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.

func (ProtectionContainerMappingOutput) ToProtectionContainerMappingOutput

func (o ProtectionContainerMappingOutput) ToProtectionContainerMappingOutput() ProtectionContainerMappingOutput

func (ProtectionContainerMappingOutput) ToProtectionContainerMappingOutputWithContext

func (o ProtectionContainerMappingOutput) ToProtectionContainerMappingOutputWithContext(ctx context.Context) ProtectionContainerMappingOutput

type ProtectionContainerMappingState

type ProtectionContainerMappingState struct {
	// a `automaticUpdate` block defined as below.
	AutomaticUpdate ProtectionContainerMappingAutomaticUpdatePtrInput
	// The name of the protection container mapping. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Name of fabric that should contains the protection container to map. Changing this forces a new resource to be created.
	RecoveryFabricName pulumi.StringPtrInput
	// Id of the policy to use for this mapping. Changing this forces a new resource to be created.
	RecoveryReplicationPolicyId pulumi.StringPtrInput
	// Name of the source protection container to map. Changing this forces a new resource to be created.
	RecoverySourceProtectionContainerName pulumi.StringPtrInput
	// Id of target protection container to map to. Changing this forces a new resource to be created.
	RecoveryTargetProtectionContainerId pulumi.StringPtrInput
	// The name of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringPtrInput
	// Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
}

func (ProtectionContainerMappingState) ElementType

type ProtectionContainerOutput

type ProtectionContainerOutput struct{ *pulumi.OutputState }

func (ProtectionContainerOutput) ElementType

func (ProtectionContainerOutput) ElementType() reflect.Type

func (ProtectionContainerOutput) Name added in v5.5.0

The name of the protection container. Changing this forces a new resource to be created.

func (ProtectionContainerOutput) RecoveryFabricName added in v5.5.0

func (o ProtectionContainerOutput) RecoveryFabricName() pulumi.StringOutput

Name of fabric that should contain this protection container. Changing this forces a new resource to be created.

func (ProtectionContainerOutput) RecoveryVaultName added in v5.5.0

func (o ProtectionContainerOutput) RecoveryVaultName() pulumi.StringOutput

The name of the vault that should be updated. Changing this forces a new resource to be created.

func (ProtectionContainerOutput) ResourceGroupName added in v5.5.0

func (o ProtectionContainerOutput) ResourceGroupName() pulumi.StringOutput

Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.

func (ProtectionContainerOutput) ToProtectionContainerOutput

func (o ProtectionContainerOutput) ToProtectionContainerOutput() ProtectionContainerOutput

func (ProtectionContainerOutput) ToProtectionContainerOutputWithContext

func (o ProtectionContainerOutput) ToProtectionContainerOutputWithContext(ctx context.Context) ProtectionContainerOutput

type ProtectionContainerState

type ProtectionContainerState struct {
	// The name of the protection container. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Name of fabric that should contain this protection container. Changing this forces a new resource to be created.
	RecoveryFabricName pulumi.StringPtrInput
	// The name of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringPtrInput
	// Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
}

func (ProtectionContainerState) ElementType

func (ProtectionContainerState) ElementType() reflect.Type

type ReplicatedVM

type ReplicatedVM struct {
	pulumi.CustomResourceState

	// One or more `managedDisk` block as defined below. Changing this forces a new resource to be created.
	ManagedDisks ReplicatedVMManagedDiskArrayOutput `pulumi:"managedDisks"`
	// Name of group in which all machines will replicate together and have shared crash consistent and app-consistent recovery points when failed over.
	MultiVmGroupName pulumi.StringPtrOutput `pulumi:"multiVmGroupName"`
	// The name of the replication for the replicated VM. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// One or more `networkInterface` block as defined below.
	// *
	NetworkInterfaces ReplicatedVMNetworkInterfaceArrayOutput `pulumi:"networkInterfaces"`
	// Id of the policy to use for this replicated vm. Changing this forces a new resource to be created.
	RecoveryReplicationPolicyId pulumi.StringOutput `pulumi:"recoveryReplicationPolicyId"`
	// The name of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"`
	// Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// Name of fabric that should contain this replication. Changing this forces a new resource to be created.
	SourceRecoveryFabricName pulumi.StringOutput `pulumi:"sourceRecoveryFabricName"`
	// Name of the protection container to use. Changing this forces a new resource to be created.
	SourceRecoveryProtectionContainerName pulumi.StringOutput `pulumi:"sourceRecoveryProtectionContainerName"`
	// Id of the VM to replicate Changing this forces a new resource to be created.
	SourceVmId pulumi.StringOutput `pulumi:"sourceVmId"`
	// Id of availability set that the new VM should belong to when a failover is done.
	TargetAvailabilitySetId pulumi.StringPtrOutput `pulumi:"targetAvailabilitySetId"`
	// Id of the storage account which the new VM should used for boot diagnostic when a failover is done.
	TargetBootDiagnosticStorageAccountId pulumi.StringPtrOutput `pulumi:"targetBootDiagnosticStorageAccountId"`
	// Id of the Capacity reservation group where the new VM should belong to when a failover is done.
	TargetCapacityReservationGroupId pulumi.StringPtrOutput `pulumi:"targetCapacityReservationGroupId"`
	// Specifies the Edge Zone within the Azure Region where this Managed Kubernetes Cluster should exist. Changing this forces a new resource to be created.
	TargetEdgeZone pulumi.StringPtrOutput `pulumi:"targetEdgeZone"`
	// Network to use when a failover is done (recommended to set if any networkInterface is configured for failover).
	TargetNetworkId pulumi.StringOutput `pulumi:"targetNetworkId"`
	// Id of Proximity Placement Group the new VM should belong to when a failover is done.
	TargetProximityPlacementGroupId pulumi.StringPtrOutput `pulumi:"targetProximityPlacementGroupId"`
	// Id of fabric where the VM replication should be handled when a failover is done. Changing this forces a new resource to be created.
	TargetRecoveryFabricId pulumi.StringOutput `pulumi:"targetRecoveryFabricId"`
	// Id of protection container where the VM replication should be created when a failover is done. Changing this forces a new resource to be created.
	TargetRecoveryProtectionContainerId pulumi.StringOutput `pulumi:"targetRecoveryProtectionContainerId"`
	// Id of resource group where the VM should be created when a failover is done. Changing this forces a new resource to be created.
	TargetResourceGroupId pulumi.StringOutput `pulumi:"targetResourceGroupId"`
	// Id of the Virtual Machine Scale Set which the new Vm should belong to when a failover is done.
	TargetVirtualMachineScaleSetId pulumi.StringPtrOutput `pulumi:"targetVirtualMachineScaleSetId"`
	// Specifies the Availability Zone where the Failover VM should exist. Changing this forces a new resource to be created.
	TargetZone pulumi.StringPtrOutput `pulumi:"targetZone"`
	// Network to use when a test failover is done.
	TestNetworkId pulumi.StringOutput `pulumi:"testNetworkId"`
	// One or more `unmanagedDisk` block. Changing this forces a new resource to be created.
	UnmanagedDisks ReplicatedVMUnmanagedDiskArrayOutput `pulumi:"unmanagedDisks"`
}

Manages a VM replicated using Azure Site Recovery (Azure to Azure only). A replicated VM keeps a copiously updated image of the VM in another region in order to be able to start the VM in that region in case of a disaster.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/recoveryservices"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/siterecovery"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		primaryResourceGroup, err := core.NewResourceGroup(ctx, "primaryResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West US"),
		})
		if err != nil {
			return err
		}
		secondaryResourceGroup, err := core.NewResourceGroup(ctx, "secondaryResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("East US"),
		})
		if err != nil {
			return err
		}
		primaryVirtualNetwork, err := network.NewVirtualNetwork(ctx, "primaryVirtualNetwork", &network.VirtualNetworkArgs{
			ResourceGroupName: primaryResourceGroup.Name,
			AddressSpaces: pulumi.StringArray{
				pulumi.String("192.168.1.0/24"),
			},
			Location: primaryResourceGroup.Location,
		})
		if err != nil {
			return err
		}
		primarySubnet, err := network.NewSubnet(ctx, "primarySubnet", &network.SubnetArgs{
			ResourceGroupName:  primaryResourceGroup.Name,
			VirtualNetworkName: primaryVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("192.168.1.0/24"),
			},
		})
		if err != nil {
			return err
		}
		primaryPublicIp, err := network.NewPublicIp(ctx, "primaryPublicIp", &network.PublicIpArgs{
			AllocationMethod:  pulumi.String("Static"),
			Location:          primaryResourceGroup.Location,
			ResourceGroupName: primaryResourceGroup.Name,
			Sku:               pulumi.String("Basic"),
		})
		if err != nil {
			return err
		}
		vmNetworkInterface, err := network.NewNetworkInterface(ctx, "vmNetworkInterface", &network.NetworkInterfaceArgs{
			Location:          primaryResourceGroup.Location,
			ResourceGroupName: primaryResourceGroup.Name,
			IpConfigurations: network.NetworkInterfaceIpConfigurationArray{
				&network.NetworkInterfaceIpConfigurationArgs{
					Name:                       pulumi.String("vm"),
					SubnetId:                   primarySubnet.ID(),
					PrivateIpAddressAllocation: pulumi.String("Dynamic"),
					PublicIpAddressId:          primaryPublicIp.ID(),
				},
			},
		})
		if err != nil {
			return err
		}
		vmVirtualMachine, err := compute.NewVirtualMachine(ctx, "vmVirtualMachine", &compute.VirtualMachineArgs{
			Location:          primaryResourceGroup.Location,
			ResourceGroupName: primaryResourceGroup.Name,
			VmSize:            pulumi.String("Standard_B1s"),
			NetworkInterfaceIds: pulumi.StringArray{
				vmNetworkInterface.ID(),
			},
			StorageImageReference: &compute.VirtualMachineStorageImageReferenceArgs{
				Publisher: pulumi.String("OpenLogic"),
				Offer:     pulumi.String("CentOS"),
				Sku:       pulumi.String("7.5"),
				Version:   pulumi.String("latest"),
			},
			StorageOsDisk: &compute.VirtualMachineStorageOsDiskArgs{
				Name:            pulumi.String("vm-os-disk"),
				OsType:          pulumi.String("Linux"),
				Caching:         pulumi.String("ReadWrite"),
				CreateOption:    pulumi.String("FromImage"),
				ManagedDiskType: pulumi.String("Premium_LRS"),
			},
			OsProfile: &compute.VirtualMachineOsProfileArgs{
				AdminUsername: pulumi.String("test-admin-123"),
				AdminPassword: pulumi.String("test-pwd-123"),
				ComputerName:  pulumi.String("vm"),
			},
			OsProfileLinuxConfig: &compute.VirtualMachineOsProfileLinuxConfigArgs{
				DisablePasswordAuthentication: pulumi.Bool(false),
			},
		})
		if err != nil {
			return err
		}
		vault, err := recoveryservices.NewVault(ctx, "vault", &recoveryservices.VaultArgs{
			Location:          secondaryResourceGroup.Location,
			ResourceGroupName: secondaryResourceGroup.Name,
			Sku:               pulumi.String("Standard"),
		})
		if err != nil {
			return err
		}
		primaryFabric, err := siterecovery.NewFabric(ctx, "primaryFabric", &siterecovery.FabricArgs{
			ResourceGroupName: secondaryResourceGroup.Name,
			RecoveryVaultName: vault.Name,
			Location:          primaryResourceGroup.Location,
		})
		if err != nil {
			return err
		}
		secondaryFabric, err := siterecovery.NewFabric(ctx, "secondaryFabric", &siterecovery.FabricArgs{
			ResourceGroupName: secondaryResourceGroup.Name,
			RecoveryVaultName: vault.Name,
			Location:          secondaryResourceGroup.Location,
		})
		if err != nil {
			return err
		}
		primaryProtectionContainer, err := siterecovery.NewProtectionContainer(ctx, "primaryProtectionContainer", &siterecovery.ProtectionContainerArgs{
			ResourceGroupName:  secondaryResourceGroup.Name,
			RecoveryVaultName:  vault.Name,
			RecoveryFabricName: primaryFabric.Name,
		})
		if err != nil {
			return err
		}
		secondaryProtectionContainer, err := siterecovery.NewProtectionContainer(ctx, "secondaryProtectionContainer", &siterecovery.ProtectionContainerArgs{
			ResourceGroupName:  secondaryResourceGroup.Name,
			RecoveryVaultName:  vault.Name,
			RecoveryFabricName: secondaryFabric.Name,
		})
		if err != nil {
			return err
		}
		policy, err := siterecovery.NewReplicationPolicy(ctx, "policy", &siterecovery.ReplicationPolicyArgs{
			ResourceGroupName:                               secondaryResourceGroup.Name,
			RecoveryVaultName:                               vault.Name,
			RecoveryPointRetentionInMinutes:                 24 * 60,
			ApplicationConsistentSnapshotFrequencyInMinutes: 4 * 60,
		})
		if err != nil {
			return err
		}
		_, err = siterecovery.NewProtectionContainerMapping(ctx, "container-mapping", &siterecovery.ProtectionContainerMappingArgs{
			ResourceGroupName:                     secondaryResourceGroup.Name,
			RecoveryVaultName:                     vault.Name,
			RecoveryFabricName:                    primaryFabric.Name,
			RecoverySourceProtectionContainerName: primaryProtectionContainer.Name,
			RecoveryTargetProtectionContainerId:   secondaryProtectionContainer.ID(),
			RecoveryReplicationPolicyId:           policy.ID(),
		})
		if err != nil {
			return err
		}
		secondaryVirtualNetwork, err := network.NewVirtualNetwork(ctx, "secondaryVirtualNetwork", &network.VirtualNetworkArgs{
			ResourceGroupName: secondaryResourceGroup.Name,
			AddressSpaces: pulumi.StringArray{
				pulumi.String("192.168.2.0/24"),
			},
			Location: secondaryResourceGroup.Location,
		})
		if err != nil {
			return err
		}
		_, err = siterecovery.NewNetworkMapping(ctx, "network-mapping", &siterecovery.NetworkMappingArgs{
			ResourceGroupName:        secondaryResourceGroup.Name,
			RecoveryVaultName:        vault.Name,
			SourceRecoveryFabricName: primaryFabric.Name,
			TargetRecoveryFabricName: secondaryFabric.Name,
			SourceNetworkId:          primaryVirtualNetwork.ID(),
			TargetNetworkId:          secondaryVirtualNetwork.ID(),
		})
		if err != nil {
			return err
		}
		primaryAccount, err := storage.NewAccount(ctx, "primaryAccount", &storage.AccountArgs{
			Location:               primaryResourceGroup.Location,
			ResourceGroupName:      primaryResourceGroup.Name,
			AccountTier:            pulumi.String("Standard"),
			AccountReplicationType: pulumi.String("LRS"),
		})
		if err != nil {
			return err
		}
		secondarySubnet, err := network.NewSubnet(ctx, "secondarySubnet", &network.SubnetArgs{
			ResourceGroupName:  secondaryResourceGroup.Name,
			VirtualNetworkName: secondaryVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("192.168.2.0/24"),
			},
		})
		if err != nil {
			return err
		}
		secondaryPublicIp, err := network.NewPublicIp(ctx, "secondaryPublicIp", &network.PublicIpArgs{
			AllocationMethod:  pulumi.String("Static"),
			Location:          secondaryResourceGroup.Location,
			ResourceGroupName: secondaryResourceGroup.Name,
			Sku:               pulumi.String("Basic"),
		})
		if err != nil {
			return err
		}
		_, err = siterecovery.NewReplicatedVM(ctx, "vm-replication", &siterecovery.ReplicatedVMArgs{
			ResourceGroupName:                     secondaryResourceGroup.Name,
			RecoveryVaultName:                     vault.Name,
			SourceRecoveryFabricName:              primaryFabric.Name,
			SourceVmId:                            vmVirtualMachine.ID(),
			RecoveryReplicationPolicyId:           policy.ID(),
			SourceRecoveryProtectionContainerName: primaryProtectionContainer.Name,
			TargetResourceGroupId:                 secondaryResourceGroup.ID(),
			TargetRecoveryFabricId:                secondaryFabric.ID(),
			TargetRecoveryProtectionContainerId:   secondaryProtectionContainer.ID(),
			ManagedDisks: siterecovery.ReplicatedVMManagedDiskArray{
				&siterecovery.ReplicatedVMManagedDiskArgs{
					DiskId: vmVirtualMachine.StorageOsDisk.ApplyT(func(storageOsDisk compute.VirtualMachineStorageOsDisk) (*string, error) {
						return &storageOsDisk.ManagedDiskId, nil
					}).(pulumi.StringPtrOutput),
					StagingStorageAccountId: primaryAccount.ID(),
					TargetResourceGroupId:   secondaryResourceGroup.ID(),
					TargetDiskType:          pulumi.String("Premium_LRS"),
					TargetReplicaDiskType:   pulumi.String("Premium_LRS"),
				},
			},
			NetworkInterfaces: siterecovery.ReplicatedVMNetworkInterfaceArray{
				&siterecovery.ReplicatedVMNetworkInterfaceArgs{
					SourceNetworkInterfaceId:  vmNetworkInterface.ID(),
					TargetSubnetName:          secondarySubnet.Name,
					RecoveryPublicIpAddressId: secondaryPublicIp.ID(),
				},
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			container_mapping,
			network_mapping,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Site Recovery Replicated VM's can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:siterecovery/replicatedVM:ReplicatedVM vmreplication /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-name/providers/Microsoft.RecoveryServices/vaults/recovery-vault-name/replicationFabrics/fabric-name/replicationProtectionContainers/protection-container-name/replicationProtectedItems/vm-replication-name

```

func GetReplicatedVM

func GetReplicatedVM(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ReplicatedVMState, opts ...pulumi.ResourceOption) (*ReplicatedVM, error)

GetReplicatedVM gets an existing ReplicatedVM 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 NewReplicatedVM

func NewReplicatedVM(ctx *pulumi.Context,
	name string, args *ReplicatedVMArgs, opts ...pulumi.ResourceOption) (*ReplicatedVM, error)

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

func (*ReplicatedVM) ElementType

func (*ReplicatedVM) ElementType() reflect.Type

func (*ReplicatedVM) ToReplicatedVMOutput

func (i *ReplicatedVM) ToReplicatedVMOutput() ReplicatedVMOutput

func (*ReplicatedVM) ToReplicatedVMOutputWithContext

func (i *ReplicatedVM) ToReplicatedVMOutputWithContext(ctx context.Context) ReplicatedVMOutput

type ReplicatedVMArgs

type ReplicatedVMArgs struct {
	// One or more `managedDisk` block as defined below. Changing this forces a new resource to be created.
	ManagedDisks ReplicatedVMManagedDiskArrayInput
	// Name of group in which all machines will replicate together and have shared crash consistent and app-consistent recovery points when failed over.
	MultiVmGroupName pulumi.StringPtrInput
	// The name of the replication for the replicated VM. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// One or more `networkInterface` block as defined below.
	// *
	NetworkInterfaces ReplicatedVMNetworkInterfaceArrayInput
	// Id of the policy to use for this replicated vm. Changing this forces a new resource to be created.
	RecoveryReplicationPolicyId pulumi.StringInput
	// The name of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringInput
	// Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// Name of fabric that should contain this replication. Changing this forces a new resource to be created.
	SourceRecoveryFabricName pulumi.StringInput
	// Name of the protection container to use. Changing this forces a new resource to be created.
	SourceRecoveryProtectionContainerName pulumi.StringInput
	// Id of the VM to replicate Changing this forces a new resource to be created.
	SourceVmId pulumi.StringInput
	// Id of availability set that the new VM should belong to when a failover is done.
	TargetAvailabilitySetId pulumi.StringPtrInput
	// Id of the storage account which the new VM should used for boot diagnostic when a failover is done.
	TargetBootDiagnosticStorageAccountId pulumi.StringPtrInput
	// Id of the Capacity reservation group where the new VM should belong to when a failover is done.
	TargetCapacityReservationGroupId pulumi.StringPtrInput
	// Specifies the Edge Zone within the Azure Region where this Managed Kubernetes Cluster should exist. Changing this forces a new resource to be created.
	TargetEdgeZone pulumi.StringPtrInput
	// Network to use when a failover is done (recommended to set if any networkInterface is configured for failover).
	TargetNetworkId pulumi.StringPtrInput
	// Id of Proximity Placement Group the new VM should belong to when a failover is done.
	TargetProximityPlacementGroupId pulumi.StringPtrInput
	// Id of fabric where the VM replication should be handled when a failover is done. Changing this forces a new resource to be created.
	TargetRecoveryFabricId pulumi.StringInput
	// Id of protection container where the VM replication should be created when a failover is done. Changing this forces a new resource to be created.
	TargetRecoveryProtectionContainerId pulumi.StringInput
	// Id of resource group where the VM should be created when a failover is done. Changing this forces a new resource to be created.
	TargetResourceGroupId pulumi.StringInput
	// Id of the Virtual Machine Scale Set which the new Vm should belong to when a failover is done.
	TargetVirtualMachineScaleSetId pulumi.StringPtrInput
	// Specifies the Availability Zone where the Failover VM should exist. Changing this forces a new resource to be created.
	TargetZone pulumi.StringPtrInput
	// Network to use when a test failover is done.
	TestNetworkId pulumi.StringPtrInput
	// One or more `unmanagedDisk` block. Changing this forces a new resource to be created.
	UnmanagedDisks ReplicatedVMUnmanagedDiskArrayInput
}

The set of arguments for constructing a ReplicatedVM resource.

func (ReplicatedVMArgs) ElementType

func (ReplicatedVMArgs) ElementType() reflect.Type

type ReplicatedVMArray

type ReplicatedVMArray []ReplicatedVMInput

func (ReplicatedVMArray) ElementType

func (ReplicatedVMArray) ElementType() reflect.Type

func (ReplicatedVMArray) ToReplicatedVMArrayOutput

func (i ReplicatedVMArray) ToReplicatedVMArrayOutput() ReplicatedVMArrayOutput

func (ReplicatedVMArray) ToReplicatedVMArrayOutputWithContext

func (i ReplicatedVMArray) ToReplicatedVMArrayOutputWithContext(ctx context.Context) ReplicatedVMArrayOutput

type ReplicatedVMArrayInput

type ReplicatedVMArrayInput interface {
	pulumi.Input

	ToReplicatedVMArrayOutput() ReplicatedVMArrayOutput
	ToReplicatedVMArrayOutputWithContext(context.Context) ReplicatedVMArrayOutput
}

ReplicatedVMArrayInput is an input type that accepts ReplicatedVMArray and ReplicatedVMArrayOutput values. You can construct a concrete instance of `ReplicatedVMArrayInput` via:

ReplicatedVMArray{ ReplicatedVMArgs{...} }

type ReplicatedVMArrayOutput

type ReplicatedVMArrayOutput struct{ *pulumi.OutputState }

func (ReplicatedVMArrayOutput) ElementType

func (ReplicatedVMArrayOutput) ElementType() reflect.Type

func (ReplicatedVMArrayOutput) Index

func (ReplicatedVMArrayOutput) ToReplicatedVMArrayOutput

func (o ReplicatedVMArrayOutput) ToReplicatedVMArrayOutput() ReplicatedVMArrayOutput

func (ReplicatedVMArrayOutput) ToReplicatedVMArrayOutputWithContext

func (o ReplicatedVMArrayOutput) ToReplicatedVMArrayOutputWithContext(ctx context.Context) ReplicatedVMArrayOutput

type ReplicatedVMInput

type ReplicatedVMInput interface {
	pulumi.Input

	ToReplicatedVMOutput() ReplicatedVMOutput
	ToReplicatedVMOutputWithContext(ctx context.Context) ReplicatedVMOutput
}

type ReplicatedVMManagedDisk

type ReplicatedVMManagedDisk struct {
	// Id of disk that should be replicated. Changing this forces a new resource to be created.
	DiskId string `pulumi:"diskId"`
	// Storage account that should be used for caching. Changing this forces a new resource to be created.
	StagingStorageAccountId string `pulumi:"stagingStorageAccountId"`
	// A `targetDiskEncryption` block as defined below.
	TargetDiskEncryption *ReplicatedVMManagedDiskTargetDiskEncryption `pulumi:"targetDiskEncryption"`
	// The Disk Encryption Set that the Managed Disk will be associated with. Changing this forces a new resource to be created.
	TargetDiskEncryptionSetId *string `pulumi:"targetDiskEncryptionSetId"`
	// What type should the disk be when a failover is done. Possible values are `Standard_LRS`, `Premium_LRS`, `StandardSSD_LRS` and `UltraSSD_LRS`. Changing this forces a new resource to be created.
	TargetDiskType string `pulumi:"targetDiskType"`
	// What type should the disk be that holds the replication data. Possible values are `Standard_LRS`, `Premium_LRS`, `StandardSSD_LRS` and `UltraSSD_LRS`. Changing this forces a new resource to be created.
	TargetReplicaDiskType string `pulumi:"targetReplicaDiskType"`
	// Resource group disk should belong to when a failover is done. Changing this forces a new resource to be created.
	TargetResourceGroupId string `pulumi:"targetResourceGroupId"`
}

type ReplicatedVMManagedDiskArgs

type ReplicatedVMManagedDiskArgs struct {
	// Id of disk that should be replicated. Changing this forces a new resource to be created.
	DiskId pulumi.StringInput `pulumi:"diskId"`
	// Storage account that should be used for caching. Changing this forces a new resource to be created.
	StagingStorageAccountId pulumi.StringInput `pulumi:"stagingStorageAccountId"`
	// A `targetDiskEncryption` block as defined below.
	TargetDiskEncryption ReplicatedVMManagedDiskTargetDiskEncryptionPtrInput `pulumi:"targetDiskEncryption"`
	// The Disk Encryption Set that the Managed Disk will be associated with. Changing this forces a new resource to be created.
	TargetDiskEncryptionSetId pulumi.StringPtrInput `pulumi:"targetDiskEncryptionSetId"`
	// What type should the disk be when a failover is done. Possible values are `Standard_LRS`, `Premium_LRS`, `StandardSSD_LRS` and `UltraSSD_LRS`. Changing this forces a new resource to be created.
	TargetDiskType pulumi.StringInput `pulumi:"targetDiskType"`
	// What type should the disk be that holds the replication data. Possible values are `Standard_LRS`, `Premium_LRS`, `StandardSSD_LRS` and `UltraSSD_LRS`. Changing this forces a new resource to be created.
	TargetReplicaDiskType pulumi.StringInput `pulumi:"targetReplicaDiskType"`
	// Resource group disk should belong to when a failover is done. Changing this forces a new resource to be created.
	TargetResourceGroupId pulumi.StringInput `pulumi:"targetResourceGroupId"`
}

func (ReplicatedVMManagedDiskArgs) ElementType

func (ReplicatedVMManagedDiskArgs) ToReplicatedVMManagedDiskOutput

func (i ReplicatedVMManagedDiskArgs) ToReplicatedVMManagedDiskOutput() ReplicatedVMManagedDiskOutput

func (ReplicatedVMManagedDiskArgs) ToReplicatedVMManagedDiskOutputWithContext

func (i ReplicatedVMManagedDiskArgs) ToReplicatedVMManagedDiskOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskOutput

type ReplicatedVMManagedDiskArray

type ReplicatedVMManagedDiskArray []ReplicatedVMManagedDiskInput

func (ReplicatedVMManagedDiskArray) ElementType

func (ReplicatedVMManagedDiskArray) ToReplicatedVMManagedDiskArrayOutput

func (i ReplicatedVMManagedDiskArray) ToReplicatedVMManagedDiskArrayOutput() ReplicatedVMManagedDiskArrayOutput

func (ReplicatedVMManagedDiskArray) ToReplicatedVMManagedDiskArrayOutputWithContext

func (i ReplicatedVMManagedDiskArray) ToReplicatedVMManagedDiskArrayOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskArrayOutput

type ReplicatedVMManagedDiskArrayInput

type ReplicatedVMManagedDiskArrayInput interface {
	pulumi.Input

	ToReplicatedVMManagedDiskArrayOutput() ReplicatedVMManagedDiskArrayOutput
	ToReplicatedVMManagedDiskArrayOutputWithContext(context.Context) ReplicatedVMManagedDiskArrayOutput
}

ReplicatedVMManagedDiskArrayInput is an input type that accepts ReplicatedVMManagedDiskArray and ReplicatedVMManagedDiskArrayOutput values. You can construct a concrete instance of `ReplicatedVMManagedDiskArrayInput` via:

ReplicatedVMManagedDiskArray{ ReplicatedVMManagedDiskArgs{...} }

type ReplicatedVMManagedDiskArrayOutput

type ReplicatedVMManagedDiskArrayOutput struct{ *pulumi.OutputState }

func (ReplicatedVMManagedDiskArrayOutput) ElementType

func (ReplicatedVMManagedDiskArrayOutput) Index

func (ReplicatedVMManagedDiskArrayOutput) ToReplicatedVMManagedDiskArrayOutput

func (o ReplicatedVMManagedDiskArrayOutput) ToReplicatedVMManagedDiskArrayOutput() ReplicatedVMManagedDiskArrayOutput

func (ReplicatedVMManagedDiskArrayOutput) ToReplicatedVMManagedDiskArrayOutputWithContext

func (o ReplicatedVMManagedDiskArrayOutput) ToReplicatedVMManagedDiskArrayOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskArrayOutput

type ReplicatedVMManagedDiskInput

type ReplicatedVMManagedDiskInput interface {
	pulumi.Input

	ToReplicatedVMManagedDiskOutput() ReplicatedVMManagedDiskOutput
	ToReplicatedVMManagedDiskOutputWithContext(context.Context) ReplicatedVMManagedDiskOutput
}

ReplicatedVMManagedDiskInput is an input type that accepts ReplicatedVMManagedDiskArgs and ReplicatedVMManagedDiskOutput values. You can construct a concrete instance of `ReplicatedVMManagedDiskInput` via:

ReplicatedVMManagedDiskArgs{...}

type ReplicatedVMManagedDiskOutput

type ReplicatedVMManagedDiskOutput struct{ *pulumi.OutputState }

func (ReplicatedVMManagedDiskOutput) DiskId

Id of disk that should be replicated. Changing this forces a new resource to be created.

func (ReplicatedVMManagedDiskOutput) ElementType

func (ReplicatedVMManagedDiskOutput) StagingStorageAccountId

func (o ReplicatedVMManagedDiskOutput) StagingStorageAccountId() pulumi.StringOutput

Storage account that should be used for caching. Changing this forces a new resource to be created.

func (ReplicatedVMManagedDiskOutput) TargetDiskEncryption added in v5.15.0

A `targetDiskEncryption` block as defined below.

func (ReplicatedVMManagedDiskOutput) TargetDiskEncryptionSetId

func (o ReplicatedVMManagedDiskOutput) TargetDiskEncryptionSetId() pulumi.StringPtrOutput

The Disk Encryption Set that the Managed Disk will be associated with. Changing this forces a new resource to be created.

func (ReplicatedVMManagedDiskOutput) TargetDiskType

What type should the disk be when a failover is done. Possible values are `Standard_LRS`, `Premium_LRS`, `StandardSSD_LRS` and `UltraSSD_LRS`. Changing this forces a new resource to be created.

func (ReplicatedVMManagedDiskOutput) TargetReplicaDiskType

func (o ReplicatedVMManagedDiskOutput) TargetReplicaDiskType() pulumi.StringOutput

What type should the disk be that holds the replication data. Possible values are `Standard_LRS`, `Premium_LRS`, `StandardSSD_LRS` and `UltraSSD_LRS`. Changing this forces a new resource to be created.

func (ReplicatedVMManagedDiskOutput) TargetResourceGroupId

func (o ReplicatedVMManagedDiskOutput) TargetResourceGroupId() pulumi.StringOutput

Resource group disk should belong to when a failover is done. Changing this forces a new resource to be created.

func (ReplicatedVMManagedDiskOutput) ToReplicatedVMManagedDiskOutput

func (o ReplicatedVMManagedDiskOutput) ToReplicatedVMManagedDiskOutput() ReplicatedVMManagedDiskOutput

func (ReplicatedVMManagedDiskOutput) ToReplicatedVMManagedDiskOutputWithContext

func (o ReplicatedVMManagedDiskOutput) ToReplicatedVMManagedDiskOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskOutput

type ReplicatedVMManagedDiskTargetDiskEncryption added in v5.15.0

type ReplicatedVMManagedDiskTargetDiskEncryption struct {
	// A `diskEncryptionKey` block as defined below.
	DiskEncryptionKey ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKey `pulumi:"diskEncryptionKey"`
	// A `keyEncryptionKey` block as defined below.
	KeyEncryptionKey *ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKey `pulumi:"keyEncryptionKey"`
}

type ReplicatedVMManagedDiskTargetDiskEncryptionArgs added in v5.15.0

type ReplicatedVMManagedDiskTargetDiskEncryptionArgs struct {
	// A `diskEncryptionKey` block as defined below.
	DiskEncryptionKey ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyInput `pulumi:"diskEncryptionKey"`
	// A `keyEncryptionKey` block as defined below.
	KeyEncryptionKey ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrInput `pulumi:"keyEncryptionKey"`
}

func (ReplicatedVMManagedDiskTargetDiskEncryptionArgs) ElementType added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionOutput added in v5.15.0

func (i ReplicatedVMManagedDiskTargetDiskEncryptionArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionOutput() ReplicatedVMManagedDiskTargetDiskEncryptionOutput

func (ReplicatedVMManagedDiskTargetDiskEncryptionArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionOutputWithContext added in v5.15.0

func (i ReplicatedVMManagedDiskTargetDiskEncryptionArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionOutput

func (ReplicatedVMManagedDiskTargetDiskEncryptionArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput added in v5.15.0

func (i ReplicatedVMManagedDiskTargetDiskEncryptionArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput() ReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput

func (ReplicatedVMManagedDiskTargetDiskEncryptionArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionPtrOutputWithContext added in v5.15.0

func (i ReplicatedVMManagedDiskTargetDiskEncryptionArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionPtrOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput

type ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKey added in v5.15.0

type ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKey struct {
	// The URL to the Key Vault Secret used as the Disk Encryption Key that the Managed Disk will be associated with. This can be found as `id` on the `keyvault.Secret` resource. Changing this forces a new resource to be created.
	SecretUrl string `pulumi:"secretUrl"`
	// The ID of the Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource. Changing this forces a new resource to be created.
	VaultId string `pulumi:"vaultId"`
}

type ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyArgs added in v5.15.0

type ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyArgs struct {
	// The URL to the Key Vault Secret used as the Disk Encryption Key that the Managed Disk will be associated with. This can be found as `id` on the `keyvault.Secret` resource. Changing this forces a new resource to be created.
	SecretUrl pulumi.StringInput `pulumi:"secretUrl"`
	// The ID of the Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource. Changing this forces a new resource to be created.
	VaultId pulumi.StringInput `pulumi:"vaultId"`
}

func (ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyArgs) ElementType added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutputWithContext added in v5.15.0

func (i ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput

func (ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutputWithContext added in v5.15.0

func (i ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput

type ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyInput added in v5.15.0

type ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyInput interface {
	pulumi.Input

	ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput() ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput
	ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutputWithContext(context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput
}

ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyInput is an input type that accepts ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyArgs and ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput values. You can construct a concrete instance of `ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyInput` via:

ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyArgs{...}

type ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput added in v5.15.0

type ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput struct{ *pulumi.OutputState }

func (ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput) ElementType added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput) SecretUrl added in v5.15.0

The URL to the Key Vault Secret used as the Disk Encryption Key that the Managed Disk will be associated with. This can be found as `id` on the `keyvault.Secret` resource. Changing this forces a new resource to be created.

func (ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutputWithContext added in v5.15.0

func (o ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput

func (ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutputWithContext added in v5.15.0

func (o ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput

func (ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutput) VaultId added in v5.15.0

The ID of the Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource. Changing this forces a new resource to be created.

type ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrInput added in v5.15.0

type ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrInput interface {
	pulumi.Input

	ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput() ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput
	ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutputWithContext(context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput
}

ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrInput is an input type that accepts ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyArgs, ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtr and ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput values. You can construct a concrete instance of `ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrInput` via:

        ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyArgs{...}

or:

        nil

type ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput added in v5.15.0

type ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput struct{ *pulumi.OutputState }

func (ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput) Elem added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput) ElementType added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput) SecretUrl added in v5.15.0

The URL to the Key Vault Secret used as the Disk Encryption Key that the Managed Disk will be associated with. This can be found as `id` on the `keyvault.Secret` resource. Changing this forces a new resource to be created.

func (ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutputWithContext added in v5.15.0

func (o ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput

func (ReplicatedVMManagedDiskTargetDiskEncryptionDiskEncryptionKeyPtrOutput) VaultId added in v5.15.0

The ID of the Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource. Changing this forces a new resource to be created.

type ReplicatedVMManagedDiskTargetDiskEncryptionInput added in v5.15.0

type ReplicatedVMManagedDiskTargetDiskEncryptionInput interface {
	pulumi.Input

	ToReplicatedVMManagedDiskTargetDiskEncryptionOutput() ReplicatedVMManagedDiskTargetDiskEncryptionOutput
	ToReplicatedVMManagedDiskTargetDiskEncryptionOutputWithContext(context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionOutput
}

ReplicatedVMManagedDiskTargetDiskEncryptionInput is an input type that accepts ReplicatedVMManagedDiskTargetDiskEncryptionArgs and ReplicatedVMManagedDiskTargetDiskEncryptionOutput values. You can construct a concrete instance of `ReplicatedVMManagedDiskTargetDiskEncryptionInput` via:

ReplicatedVMManagedDiskTargetDiskEncryptionArgs{...}

type ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKey added in v5.15.0

type ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKey struct {
	// The URL to the Key Vault Key used as the Key Encryption Key that the Managed Disk will be associated with. This can be found as `id` on the `keyvault.Key` resource. Changing this forces a new resource to be created.
	KeyUrl string `pulumi:"keyUrl"`
	// The ID of the Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource. Changing this forces a new resource to be created.
	VaultId string `pulumi:"vaultId"`
}

type ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyArgs added in v5.15.0

type ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyArgs struct {
	// The URL to the Key Vault Key used as the Key Encryption Key that the Managed Disk will be associated with. This can be found as `id` on the `keyvault.Key` resource. Changing this forces a new resource to be created.
	KeyUrl pulumi.StringInput `pulumi:"keyUrl"`
	// The ID of the Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource. Changing this forces a new resource to be created.
	VaultId pulumi.StringInput `pulumi:"vaultId"`
}

func (ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyArgs) ElementType added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutputWithContext added in v5.15.0

func (i ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput

func (ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutputWithContext added in v5.15.0

func (i ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyArgs) ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput

type ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyInput added in v5.15.0

type ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyInput interface {
	pulumi.Input

	ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput() ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput
	ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutputWithContext(context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput
}

ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyInput is an input type that accepts ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyArgs and ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput values. You can construct a concrete instance of `ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyInput` via:

ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyArgs{...}

type ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput added in v5.15.0

type ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput struct{ *pulumi.OutputState }

func (ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput) ElementType added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput) KeyUrl added in v5.15.0

The URL to the Key Vault Key used as the Key Encryption Key that the Managed Disk will be associated with. This can be found as `id` on the `keyvault.Key` resource. Changing this forces a new resource to be created.

func (ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutputWithContext added in v5.15.0

func (o ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput

func (ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutputWithContext added in v5.15.0

func (o ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput

func (ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutput) VaultId added in v5.15.0

The ID of the Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource. Changing this forces a new resource to be created.

type ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrInput added in v5.15.0

type ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrInput interface {
	pulumi.Input

	ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput() ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput
	ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutputWithContext(context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput
}

ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrInput is an input type that accepts ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyArgs, ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtr and ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput values. You can construct a concrete instance of `ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrInput` via:

        ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyArgs{...}

or:

        nil

type ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput added in v5.15.0

type ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput struct{ *pulumi.OutputState }

func (ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput) Elem added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput) ElementType added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput) KeyUrl added in v5.15.0

The URL to the Key Vault Key used as the Key Encryption Key that the Managed Disk will be associated with. This can be found as `id` on the `keyvault.Key` resource. Changing this forces a new resource to be created.

func (ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutputWithContext added in v5.15.0

func (o ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput

func (ReplicatedVMManagedDiskTargetDiskEncryptionKeyEncryptionKeyPtrOutput) VaultId added in v5.15.0

The ID of the Key Vault. This can be found as `id` on the `keyvault.KeyVault` resource. Changing this forces a new resource to be created.

type ReplicatedVMManagedDiskTargetDiskEncryptionOutput added in v5.15.0

type ReplicatedVMManagedDiskTargetDiskEncryptionOutput struct{ *pulumi.OutputState }

func (ReplicatedVMManagedDiskTargetDiskEncryptionOutput) DiskEncryptionKey added in v5.15.0

A `diskEncryptionKey` block as defined below.

func (ReplicatedVMManagedDiskTargetDiskEncryptionOutput) ElementType added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionOutput) KeyEncryptionKey added in v5.15.0

A `keyEncryptionKey` block as defined below.

func (ReplicatedVMManagedDiskTargetDiskEncryptionOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionOutput added in v5.15.0

func (o ReplicatedVMManagedDiskTargetDiskEncryptionOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionOutput() ReplicatedVMManagedDiskTargetDiskEncryptionOutput

func (ReplicatedVMManagedDiskTargetDiskEncryptionOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionOutputWithContext added in v5.15.0

func (o ReplicatedVMManagedDiskTargetDiskEncryptionOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionOutput

func (ReplicatedVMManagedDiskTargetDiskEncryptionOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput added in v5.15.0

func (o ReplicatedVMManagedDiskTargetDiskEncryptionOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput() ReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput

func (ReplicatedVMManagedDiskTargetDiskEncryptionOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionPtrOutputWithContext added in v5.15.0

func (o ReplicatedVMManagedDiskTargetDiskEncryptionOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionPtrOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput

type ReplicatedVMManagedDiskTargetDiskEncryptionPtrInput added in v5.15.0

type ReplicatedVMManagedDiskTargetDiskEncryptionPtrInput interface {
	pulumi.Input

	ToReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput() ReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput
	ToReplicatedVMManagedDiskTargetDiskEncryptionPtrOutputWithContext(context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput
}

ReplicatedVMManagedDiskTargetDiskEncryptionPtrInput is an input type that accepts ReplicatedVMManagedDiskTargetDiskEncryptionArgs, ReplicatedVMManagedDiskTargetDiskEncryptionPtr and ReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput values. You can construct a concrete instance of `ReplicatedVMManagedDiskTargetDiskEncryptionPtrInput` via:

        ReplicatedVMManagedDiskTargetDiskEncryptionArgs{...}

or:

        nil

type ReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput added in v5.15.0

type ReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput struct{ *pulumi.OutputState }

func (ReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput) DiskEncryptionKey added in v5.15.0

A `diskEncryptionKey` block as defined below.

func (ReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput) Elem added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput) ElementType added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput) KeyEncryptionKey added in v5.15.0

A `keyEncryptionKey` block as defined below.

func (ReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput added in v5.15.0

func (ReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionPtrOutputWithContext added in v5.15.0

func (o ReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput) ToReplicatedVMManagedDiskTargetDiskEncryptionPtrOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskTargetDiskEncryptionPtrOutput

type ReplicatedVMMap

type ReplicatedVMMap map[string]ReplicatedVMInput

func (ReplicatedVMMap) ElementType

func (ReplicatedVMMap) ElementType() reflect.Type

func (ReplicatedVMMap) ToReplicatedVMMapOutput

func (i ReplicatedVMMap) ToReplicatedVMMapOutput() ReplicatedVMMapOutput

func (ReplicatedVMMap) ToReplicatedVMMapOutputWithContext

func (i ReplicatedVMMap) ToReplicatedVMMapOutputWithContext(ctx context.Context) ReplicatedVMMapOutput

type ReplicatedVMMapInput

type ReplicatedVMMapInput interface {
	pulumi.Input

	ToReplicatedVMMapOutput() ReplicatedVMMapOutput
	ToReplicatedVMMapOutputWithContext(context.Context) ReplicatedVMMapOutput
}

ReplicatedVMMapInput is an input type that accepts ReplicatedVMMap and ReplicatedVMMapOutput values. You can construct a concrete instance of `ReplicatedVMMapInput` via:

ReplicatedVMMap{ "key": ReplicatedVMArgs{...} }

type ReplicatedVMMapOutput

type ReplicatedVMMapOutput struct{ *pulumi.OutputState }

func (ReplicatedVMMapOutput) ElementType

func (ReplicatedVMMapOutput) ElementType() reflect.Type

func (ReplicatedVMMapOutput) MapIndex

func (ReplicatedVMMapOutput) ToReplicatedVMMapOutput

func (o ReplicatedVMMapOutput) ToReplicatedVMMapOutput() ReplicatedVMMapOutput

func (ReplicatedVMMapOutput) ToReplicatedVMMapOutputWithContext

func (o ReplicatedVMMapOutput) ToReplicatedVMMapOutputWithContext(ctx context.Context) ReplicatedVMMapOutput

type ReplicatedVMNetworkInterface

type ReplicatedVMNetworkInterface struct {
	// Id of the public IP object to use when a test failover is done.
	FailoverTestPublicIpAddressId *string `pulumi:"failoverTestPublicIpAddressId"`
	// Static IP to assign when a test failover is done.
	FailoverTestStaticIp *string `pulumi:"failoverTestStaticIp"`
	// Name of the subnet to to use when a test failover is done.
	FailoverTestSubnetName *string `pulumi:"failoverTestSubnetName"`
	// Deprecated: this property is not used and will be removed in version 4.0 of the provider
	IsPrimary *bool `pulumi:"isPrimary"`
	// Id of the public IP object to use when a failover is done.
	RecoveryPublicIpAddressId *string `pulumi:"recoveryPublicIpAddressId"`
	// (Required if the networkInterface block is specified) Id source network interface.
	SourceNetworkInterfaceId *string `pulumi:"sourceNetworkInterfaceId"`
	// Static IP to assign when a failover is done.
	TargetStaticIp *string `pulumi:"targetStaticIp"`
	// Name of the subnet to to use when a failover is done.
	TargetSubnetName *string `pulumi:"targetSubnetName"`
}

type ReplicatedVMNetworkInterfaceArgs

type ReplicatedVMNetworkInterfaceArgs struct {
	// Id of the public IP object to use when a test failover is done.
	FailoverTestPublicIpAddressId pulumi.StringPtrInput `pulumi:"failoverTestPublicIpAddressId"`
	// Static IP to assign when a test failover is done.
	FailoverTestStaticIp pulumi.StringPtrInput `pulumi:"failoverTestStaticIp"`
	// Name of the subnet to to use when a test failover is done.
	FailoverTestSubnetName pulumi.StringPtrInput `pulumi:"failoverTestSubnetName"`
	// Deprecated: this property is not used and will be removed in version 4.0 of the provider
	IsPrimary pulumi.BoolPtrInput `pulumi:"isPrimary"`
	// Id of the public IP object to use when a failover is done.
	RecoveryPublicIpAddressId pulumi.StringPtrInput `pulumi:"recoveryPublicIpAddressId"`
	// (Required if the networkInterface block is specified) Id source network interface.
	SourceNetworkInterfaceId pulumi.StringPtrInput `pulumi:"sourceNetworkInterfaceId"`
	// Static IP to assign when a failover is done.
	TargetStaticIp pulumi.StringPtrInput `pulumi:"targetStaticIp"`
	// Name of the subnet to to use when a failover is done.
	TargetSubnetName pulumi.StringPtrInput `pulumi:"targetSubnetName"`
}

func (ReplicatedVMNetworkInterfaceArgs) ElementType

func (ReplicatedVMNetworkInterfaceArgs) ToReplicatedVMNetworkInterfaceOutput

func (i ReplicatedVMNetworkInterfaceArgs) ToReplicatedVMNetworkInterfaceOutput() ReplicatedVMNetworkInterfaceOutput

func (ReplicatedVMNetworkInterfaceArgs) ToReplicatedVMNetworkInterfaceOutputWithContext

func (i ReplicatedVMNetworkInterfaceArgs) ToReplicatedVMNetworkInterfaceOutputWithContext(ctx context.Context) ReplicatedVMNetworkInterfaceOutput

type ReplicatedVMNetworkInterfaceArray

type ReplicatedVMNetworkInterfaceArray []ReplicatedVMNetworkInterfaceInput

func (ReplicatedVMNetworkInterfaceArray) ElementType

func (ReplicatedVMNetworkInterfaceArray) ToReplicatedVMNetworkInterfaceArrayOutput

func (i ReplicatedVMNetworkInterfaceArray) ToReplicatedVMNetworkInterfaceArrayOutput() ReplicatedVMNetworkInterfaceArrayOutput

func (ReplicatedVMNetworkInterfaceArray) ToReplicatedVMNetworkInterfaceArrayOutputWithContext

func (i ReplicatedVMNetworkInterfaceArray) ToReplicatedVMNetworkInterfaceArrayOutputWithContext(ctx context.Context) ReplicatedVMNetworkInterfaceArrayOutput

type ReplicatedVMNetworkInterfaceArrayInput

type ReplicatedVMNetworkInterfaceArrayInput interface {
	pulumi.Input

	ToReplicatedVMNetworkInterfaceArrayOutput() ReplicatedVMNetworkInterfaceArrayOutput
	ToReplicatedVMNetworkInterfaceArrayOutputWithContext(context.Context) ReplicatedVMNetworkInterfaceArrayOutput
}

ReplicatedVMNetworkInterfaceArrayInput is an input type that accepts ReplicatedVMNetworkInterfaceArray and ReplicatedVMNetworkInterfaceArrayOutput values. You can construct a concrete instance of `ReplicatedVMNetworkInterfaceArrayInput` via:

ReplicatedVMNetworkInterfaceArray{ ReplicatedVMNetworkInterfaceArgs{...} }

type ReplicatedVMNetworkInterfaceArrayOutput

type ReplicatedVMNetworkInterfaceArrayOutput struct{ *pulumi.OutputState }

func (ReplicatedVMNetworkInterfaceArrayOutput) ElementType

func (ReplicatedVMNetworkInterfaceArrayOutput) Index

func (ReplicatedVMNetworkInterfaceArrayOutput) ToReplicatedVMNetworkInterfaceArrayOutput

func (o ReplicatedVMNetworkInterfaceArrayOutput) ToReplicatedVMNetworkInterfaceArrayOutput() ReplicatedVMNetworkInterfaceArrayOutput

func (ReplicatedVMNetworkInterfaceArrayOutput) ToReplicatedVMNetworkInterfaceArrayOutputWithContext

func (o ReplicatedVMNetworkInterfaceArrayOutput) ToReplicatedVMNetworkInterfaceArrayOutputWithContext(ctx context.Context) ReplicatedVMNetworkInterfaceArrayOutput

type ReplicatedVMNetworkInterfaceInput

type ReplicatedVMNetworkInterfaceInput interface {
	pulumi.Input

	ToReplicatedVMNetworkInterfaceOutput() ReplicatedVMNetworkInterfaceOutput
	ToReplicatedVMNetworkInterfaceOutputWithContext(context.Context) ReplicatedVMNetworkInterfaceOutput
}

ReplicatedVMNetworkInterfaceInput is an input type that accepts ReplicatedVMNetworkInterfaceArgs and ReplicatedVMNetworkInterfaceOutput values. You can construct a concrete instance of `ReplicatedVMNetworkInterfaceInput` via:

ReplicatedVMNetworkInterfaceArgs{...}

type ReplicatedVMNetworkInterfaceOutput

type ReplicatedVMNetworkInterfaceOutput struct{ *pulumi.OutputState }

func (ReplicatedVMNetworkInterfaceOutput) ElementType

func (ReplicatedVMNetworkInterfaceOutput) FailoverTestPublicIpAddressId added in v5.34.0

func (o ReplicatedVMNetworkInterfaceOutput) FailoverTestPublicIpAddressId() pulumi.StringPtrOutput

Id of the public IP object to use when a test failover is done.

func (ReplicatedVMNetworkInterfaceOutput) FailoverTestStaticIp added in v5.34.0

Static IP to assign when a test failover is done.

func (ReplicatedVMNetworkInterfaceOutput) FailoverTestSubnetName added in v5.34.0

func (o ReplicatedVMNetworkInterfaceOutput) FailoverTestSubnetName() pulumi.StringPtrOutput

Name of the subnet to to use when a test failover is done.

func (ReplicatedVMNetworkInterfaceOutput) IsPrimary deprecated added in v5.31.0

Deprecated: this property is not used and will be removed in version 4.0 of the provider

func (ReplicatedVMNetworkInterfaceOutput) RecoveryPublicIpAddressId

func (o ReplicatedVMNetworkInterfaceOutput) RecoveryPublicIpAddressId() pulumi.StringPtrOutput

Id of the public IP object to use when a failover is done.

func (ReplicatedVMNetworkInterfaceOutput) SourceNetworkInterfaceId

func (o ReplicatedVMNetworkInterfaceOutput) SourceNetworkInterfaceId() pulumi.StringPtrOutput

(Required if the networkInterface block is specified) Id source network interface.

func (ReplicatedVMNetworkInterfaceOutput) TargetStaticIp

Static IP to assign when a failover is done.

func (ReplicatedVMNetworkInterfaceOutput) TargetSubnetName

Name of the subnet to to use when a failover is done.

func (ReplicatedVMNetworkInterfaceOutput) ToReplicatedVMNetworkInterfaceOutput

func (o ReplicatedVMNetworkInterfaceOutput) ToReplicatedVMNetworkInterfaceOutput() ReplicatedVMNetworkInterfaceOutput

func (ReplicatedVMNetworkInterfaceOutput) ToReplicatedVMNetworkInterfaceOutputWithContext

func (o ReplicatedVMNetworkInterfaceOutput) ToReplicatedVMNetworkInterfaceOutputWithContext(ctx context.Context) ReplicatedVMNetworkInterfaceOutput

type ReplicatedVMOutput

type ReplicatedVMOutput struct{ *pulumi.OutputState }

func (ReplicatedVMOutput) ElementType

func (ReplicatedVMOutput) ElementType() reflect.Type

func (ReplicatedVMOutput) ManagedDisks added in v5.5.0

One or more `managedDisk` block as defined below. Changing this forces a new resource to be created.

func (ReplicatedVMOutput) MultiVmGroupName added in v5.34.0

func (o ReplicatedVMOutput) MultiVmGroupName() pulumi.StringPtrOutput

Name of group in which all machines will replicate together and have shared crash consistent and app-consistent recovery points when failed over.

func (ReplicatedVMOutput) Name added in v5.5.0

The name of the replication for the replicated VM. Changing this forces a new resource to be created.

func (ReplicatedVMOutput) NetworkInterfaces added in v5.5.0

One or more `networkInterface` block as defined below. *

func (ReplicatedVMOutput) RecoveryReplicationPolicyId added in v5.5.0

func (o ReplicatedVMOutput) RecoveryReplicationPolicyId() pulumi.StringOutput

Id of the policy to use for this replicated vm. Changing this forces a new resource to be created.

func (ReplicatedVMOutput) RecoveryVaultName added in v5.5.0

func (o ReplicatedVMOutput) RecoveryVaultName() pulumi.StringOutput

The name of the vault that should be updated. Changing this forces a new resource to be created.

func (ReplicatedVMOutput) ResourceGroupName added in v5.5.0

func (o ReplicatedVMOutput) ResourceGroupName() pulumi.StringOutput

Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.

func (ReplicatedVMOutput) SourceRecoveryFabricName added in v5.5.0

func (o ReplicatedVMOutput) SourceRecoveryFabricName() pulumi.StringOutput

Name of fabric that should contain this replication. Changing this forces a new resource to be created.

func (ReplicatedVMOutput) SourceRecoveryProtectionContainerName added in v5.5.0

func (o ReplicatedVMOutput) SourceRecoveryProtectionContainerName() pulumi.StringOutput

Name of the protection container to use. Changing this forces a new resource to be created.

func (ReplicatedVMOutput) SourceVmId added in v5.5.0

func (o ReplicatedVMOutput) SourceVmId() pulumi.StringOutput

Id of the VM to replicate Changing this forces a new resource to be created.

func (ReplicatedVMOutput) TargetAvailabilitySetId added in v5.5.0

func (o ReplicatedVMOutput) TargetAvailabilitySetId() pulumi.StringPtrOutput

Id of availability set that the new VM should belong to when a failover is done.

func (ReplicatedVMOutput) TargetBootDiagnosticStorageAccountId added in v5.34.0

func (o ReplicatedVMOutput) TargetBootDiagnosticStorageAccountId() pulumi.StringPtrOutput

Id of the storage account which the new VM should used for boot diagnostic when a failover is done.

func (ReplicatedVMOutput) TargetCapacityReservationGroupId added in v5.34.0

func (o ReplicatedVMOutput) TargetCapacityReservationGroupId() pulumi.StringPtrOutput

Id of the Capacity reservation group where the new VM should belong to when a failover is done.

func (ReplicatedVMOutput) TargetEdgeZone added in v5.34.0

func (o ReplicatedVMOutput) TargetEdgeZone() pulumi.StringPtrOutput

Specifies the Edge Zone within the Azure Region where this Managed Kubernetes Cluster should exist. Changing this forces a new resource to be created.

func (ReplicatedVMOutput) TargetNetworkId added in v5.5.0

func (o ReplicatedVMOutput) TargetNetworkId() pulumi.StringOutput

Network to use when a failover is done (recommended to set if any networkInterface is configured for failover).

func (ReplicatedVMOutput) TargetProximityPlacementGroupId added in v5.34.0

func (o ReplicatedVMOutput) TargetProximityPlacementGroupId() pulumi.StringPtrOutput

Id of Proximity Placement Group the new VM should belong to when a failover is done.

func (ReplicatedVMOutput) TargetRecoveryFabricId added in v5.5.0

func (o ReplicatedVMOutput) TargetRecoveryFabricId() pulumi.StringOutput

Id of fabric where the VM replication should be handled when a failover is done. Changing this forces a new resource to be created.

func (ReplicatedVMOutput) TargetRecoveryProtectionContainerId added in v5.5.0

func (o ReplicatedVMOutput) TargetRecoveryProtectionContainerId() pulumi.StringOutput

Id of protection container where the VM replication should be created when a failover is done. Changing this forces a new resource to be created.

func (ReplicatedVMOutput) TargetResourceGroupId added in v5.5.0

func (o ReplicatedVMOutput) TargetResourceGroupId() pulumi.StringOutput

Id of resource group where the VM should be created when a failover is done. Changing this forces a new resource to be created.

func (ReplicatedVMOutput) TargetVirtualMachineScaleSetId added in v5.34.0

func (o ReplicatedVMOutput) TargetVirtualMachineScaleSetId() pulumi.StringPtrOutput

Id of the Virtual Machine Scale Set which the new Vm should belong to when a failover is done.

func (ReplicatedVMOutput) TargetZone added in v5.5.0

func (o ReplicatedVMOutput) TargetZone() pulumi.StringPtrOutput

Specifies the Availability Zone where the Failover VM should exist. Changing this forces a new resource to be created.

func (ReplicatedVMOutput) TestNetworkId added in v5.34.0

func (o ReplicatedVMOutput) TestNetworkId() pulumi.StringOutput

Network to use when a test failover is done.

func (ReplicatedVMOutput) ToReplicatedVMOutput

func (o ReplicatedVMOutput) ToReplicatedVMOutput() ReplicatedVMOutput

func (ReplicatedVMOutput) ToReplicatedVMOutputWithContext

func (o ReplicatedVMOutput) ToReplicatedVMOutputWithContext(ctx context.Context) ReplicatedVMOutput

func (ReplicatedVMOutput) UnmanagedDisks added in v5.34.0

One or more `unmanagedDisk` block. Changing this forces a new resource to be created.

type ReplicatedVMState

type ReplicatedVMState struct {
	// One or more `managedDisk` block as defined below. Changing this forces a new resource to be created.
	ManagedDisks ReplicatedVMManagedDiskArrayInput
	// Name of group in which all machines will replicate together and have shared crash consistent and app-consistent recovery points when failed over.
	MultiVmGroupName pulumi.StringPtrInput
	// The name of the replication for the replicated VM. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// One or more `networkInterface` block as defined below.
	// *
	NetworkInterfaces ReplicatedVMNetworkInterfaceArrayInput
	// Id of the policy to use for this replicated vm. Changing this forces a new resource to be created.
	RecoveryReplicationPolicyId pulumi.StringPtrInput
	// The name of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringPtrInput
	// Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// Name of fabric that should contain this replication. Changing this forces a new resource to be created.
	SourceRecoveryFabricName pulumi.StringPtrInput
	// Name of the protection container to use. Changing this forces a new resource to be created.
	SourceRecoveryProtectionContainerName pulumi.StringPtrInput
	// Id of the VM to replicate Changing this forces a new resource to be created.
	SourceVmId pulumi.StringPtrInput
	// Id of availability set that the new VM should belong to when a failover is done.
	TargetAvailabilitySetId pulumi.StringPtrInput
	// Id of the storage account which the new VM should used for boot diagnostic when a failover is done.
	TargetBootDiagnosticStorageAccountId pulumi.StringPtrInput
	// Id of the Capacity reservation group where the new VM should belong to when a failover is done.
	TargetCapacityReservationGroupId pulumi.StringPtrInput
	// Specifies the Edge Zone within the Azure Region where this Managed Kubernetes Cluster should exist. Changing this forces a new resource to be created.
	TargetEdgeZone pulumi.StringPtrInput
	// Network to use when a failover is done (recommended to set if any networkInterface is configured for failover).
	TargetNetworkId pulumi.StringPtrInput
	// Id of Proximity Placement Group the new VM should belong to when a failover is done.
	TargetProximityPlacementGroupId pulumi.StringPtrInput
	// Id of fabric where the VM replication should be handled when a failover is done. Changing this forces a new resource to be created.
	TargetRecoveryFabricId pulumi.StringPtrInput
	// Id of protection container where the VM replication should be created when a failover is done. Changing this forces a new resource to be created.
	TargetRecoveryProtectionContainerId pulumi.StringPtrInput
	// Id of resource group where the VM should be created when a failover is done. Changing this forces a new resource to be created.
	TargetResourceGroupId pulumi.StringPtrInput
	// Id of the Virtual Machine Scale Set which the new Vm should belong to when a failover is done.
	TargetVirtualMachineScaleSetId pulumi.StringPtrInput
	// Specifies the Availability Zone where the Failover VM should exist. Changing this forces a new resource to be created.
	TargetZone pulumi.StringPtrInput
	// Network to use when a test failover is done.
	TestNetworkId pulumi.StringPtrInput
	// One or more `unmanagedDisk` block. Changing this forces a new resource to be created.
	UnmanagedDisks ReplicatedVMUnmanagedDiskArrayInput
}

func (ReplicatedVMState) ElementType

func (ReplicatedVMState) ElementType() reflect.Type

type ReplicatedVMUnmanagedDisk added in v5.34.0

type ReplicatedVMUnmanagedDisk struct {
	// Id of disk that should be replicated.
	DiskUri string `pulumi:"diskUri"`
	// Storage account that should be used for caching.
	StagingStorageAccountId string `pulumi:"stagingStorageAccountId"`
	// Storage account disk should belong to when a failover is done.
	TargetStorageAccountId string `pulumi:"targetStorageAccountId"`
}

type ReplicatedVMUnmanagedDiskArgs added in v5.34.0

type ReplicatedVMUnmanagedDiskArgs struct {
	// Id of disk that should be replicated.
	DiskUri pulumi.StringInput `pulumi:"diskUri"`
	// Storage account that should be used for caching.
	StagingStorageAccountId pulumi.StringInput `pulumi:"stagingStorageAccountId"`
	// Storage account disk should belong to when a failover is done.
	TargetStorageAccountId pulumi.StringInput `pulumi:"targetStorageAccountId"`
}

func (ReplicatedVMUnmanagedDiskArgs) ElementType added in v5.34.0

func (ReplicatedVMUnmanagedDiskArgs) ToReplicatedVMUnmanagedDiskOutput added in v5.34.0

func (i ReplicatedVMUnmanagedDiskArgs) ToReplicatedVMUnmanagedDiskOutput() ReplicatedVMUnmanagedDiskOutput

func (ReplicatedVMUnmanagedDiskArgs) ToReplicatedVMUnmanagedDiskOutputWithContext added in v5.34.0

func (i ReplicatedVMUnmanagedDiskArgs) ToReplicatedVMUnmanagedDiskOutputWithContext(ctx context.Context) ReplicatedVMUnmanagedDiskOutput

type ReplicatedVMUnmanagedDiskArray added in v5.34.0

type ReplicatedVMUnmanagedDiskArray []ReplicatedVMUnmanagedDiskInput

func (ReplicatedVMUnmanagedDiskArray) ElementType added in v5.34.0

func (ReplicatedVMUnmanagedDiskArray) ToReplicatedVMUnmanagedDiskArrayOutput added in v5.34.0

func (i ReplicatedVMUnmanagedDiskArray) ToReplicatedVMUnmanagedDiskArrayOutput() ReplicatedVMUnmanagedDiskArrayOutput

func (ReplicatedVMUnmanagedDiskArray) ToReplicatedVMUnmanagedDiskArrayOutputWithContext added in v5.34.0

func (i ReplicatedVMUnmanagedDiskArray) ToReplicatedVMUnmanagedDiskArrayOutputWithContext(ctx context.Context) ReplicatedVMUnmanagedDiskArrayOutput

type ReplicatedVMUnmanagedDiskArrayInput added in v5.34.0

type ReplicatedVMUnmanagedDiskArrayInput interface {
	pulumi.Input

	ToReplicatedVMUnmanagedDiskArrayOutput() ReplicatedVMUnmanagedDiskArrayOutput
	ToReplicatedVMUnmanagedDiskArrayOutputWithContext(context.Context) ReplicatedVMUnmanagedDiskArrayOutput
}

ReplicatedVMUnmanagedDiskArrayInput is an input type that accepts ReplicatedVMUnmanagedDiskArray and ReplicatedVMUnmanagedDiskArrayOutput values. You can construct a concrete instance of `ReplicatedVMUnmanagedDiskArrayInput` via:

ReplicatedVMUnmanagedDiskArray{ ReplicatedVMUnmanagedDiskArgs{...} }

type ReplicatedVMUnmanagedDiskArrayOutput added in v5.34.0

type ReplicatedVMUnmanagedDiskArrayOutput struct{ *pulumi.OutputState }

func (ReplicatedVMUnmanagedDiskArrayOutput) ElementType added in v5.34.0

func (ReplicatedVMUnmanagedDiskArrayOutput) Index added in v5.34.0

func (ReplicatedVMUnmanagedDiskArrayOutput) ToReplicatedVMUnmanagedDiskArrayOutput added in v5.34.0

func (o ReplicatedVMUnmanagedDiskArrayOutput) ToReplicatedVMUnmanagedDiskArrayOutput() ReplicatedVMUnmanagedDiskArrayOutput

func (ReplicatedVMUnmanagedDiskArrayOutput) ToReplicatedVMUnmanagedDiskArrayOutputWithContext added in v5.34.0

func (o ReplicatedVMUnmanagedDiskArrayOutput) ToReplicatedVMUnmanagedDiskArrayOutputWithContext(ctx context.Context) ReplicatedVMUnmanagedDiskArrayOutput

type ReplicatedVMUnmanagedDiskInput added in v5.34.0

type ReplicatedVMUnmanagedDiskInput interface {
	pulumi.Input

	ToReplicatedVMUnmanagedDiskOutput() ReplicatedVMUnmanagedDiskOutput
	ToReplicatedVMUnmanagedDiskOutputWithContext(context.Context) ReplicatedVMUnmanagedDiskOutput
}

ReplicatedVMUnmanagedDiskInput is an input type that accepts ReplicatedVMUnmanagedDiskArgs and ReplicatedVMUnmanagedDiskOutput values. You can construct a concrete instance of `ReplicatedVMUnmanagedDiskInput` via:

ReplicatedVMUnmanagedDiskArgs{...}

type ReplicatedVMUnmanagedDiskOutput added in v5.34.0

type ReplicatedVMUnmanagedDiskOutput struct{ *pulumi.OutputState }

func (ReplicatedVMUnmanagedDiskOutput) DiskUri added in v5.34.0

Id of disk that should be replicated.

func (ReplicatedVMUnmanagedDiskOutput) ElementType added in v5.34.0

func (ReplicatedVMUnmanagedDiskOutput) StagingStorageAccountId added in v5.34.0

func (o ReplicatedVMUnmanagedDiskOutput) StagingStorageAccountId() pulumi.StringOutput

Storage account that should be used for caching.

func (ReplicatedVMUnmanagedDiskOutput) TargetStorageAccountId added in v5.34.0

func (o ReplicatedVMUnmanagedDiskOutput) TargetStorageAccountId() pulumi.StringOutput

Storage account disk should belong to when a failover is done.

func (ReplicatedVMUnmanagedDiskOutput) ToReplicatedVMUnmanagedDiskOutput added in v5.34.0

func (o ReplicatedVMUnmanagedDiskOutput) ToReplicatedVMUnmanagedDiskOutput() ReplicatedVMUnmanagedDiskOutput

func (ReplicatedVMUnmanagedDiskOutput) ToReplicatedVMUnmanagedDiskOutputWithContext added in v5.34.0

func (o ReplicatedVMUnmanagedDiskOutput) ToReplicatedVMUnmanagedDiskOutputWithContext(ctx context.Context) ReplicatedVMUnmanagedDiskOutput

type ReplicationPolicy

type ReplicationPolicy struct {
	pulumi.CustomResourceState

	// Specifies the frequency(in minutes) at which to create application consistent recovery points.
	ApplicationConsistentSnapshotFrequencyInMinutes pulumi.IntOutput `pulumi:"applicationConsistentSnapshotFrequencyInMinutes"`
	// The name of the replication policy. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The duration in minutes for which the recovery points need to be stored.
	RecoveryPointRetentionInMinutes pulumi.IntOutput `pulumi:"recoveryPointRetentionInMinutes"`
	// The name of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"`
	// Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
}

Manages a Azure Site Recovery replication policy within a recovery vault. Replication policies define the frequency at which recovery points are created and how long they are stored.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Location: pulumi.String("East US"),
		})
		if err != nil {
			return err
		}
		vault, err := recoveryservices.NewVault(ctx, "vault", &recoveryservices.VaultArgs{
			Location:          example.Location,
			ResourceGroupName: example.Name,
			Sku:               pulumi.String("Standard"),
		})
		if err != nil {
			return err
		}
		_, err = siterecovery.NewReplicationPolicy(ctx, "policy", &siterecovery.ReplicationPolicyArgs{
			ResourceGroupName:                               example.Name,
			RecoveryVaultName:                               vault.Name,
			RecoveryPointRetentionInMinutes:                 24 * 60,
			ApplicationConsistentSnapshotFrequencyInMinutes: 4 * 60,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Site Recovery Replication Policies can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:siterecovery/replicationPolicy:ReplicationPolicy mypolicy /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-name/providers/Microsoft.RecoveryServices/vaults/recovery-vault-name/replicationPolicies/policy-name

```

func GetReplicationPolicy

func GetReplicationPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ReplicationPolicyState, opts ...pulumi.ResourceOption) (*ReplicationPolicy, error)

GetReplicationPolicy gets an existing ReplicationPolicy 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 NewReplicationPolicy

func NewReplicationPolicy(ctx *pulumi.Context,
	name string, args *ReplicationPolicyArgs, opts ...pulumi.ResourceOption) (*ReplicationPolicy, error)

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

func (*ReplicationPolicy) ElementType

func (*ReplicationPolicy) ElementType() reflect.Type

func (*ReplicationPolicy) ToReplicationPolicyOutput

func (i *ReplicationPolicy) ToReplicationPolicyOutput() ReplicationPolicyOutput

func (*ReplicationPolicy) ToReplicationPolicyOutputWithContext

func (i *ReplicationPolicy) ToReplicationPolicyOutputWithContext(ctx context.Context) ReplicationPolicyOutput

type ReplicationPolicyArgs

type ReplicationPolicyArgs struct {
	// Specifies the frequency(in minutes) at which to create application consistent recovery points.
	ApplicationConsistentSnapshotFrequencyInMinutes pulumi.IntInput
	// The name of the replication policy. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The duration in minutes for which the recovery points need to be stored.
	RecoveryPointRetentionInMinutes pulumi.IntInput
	// The name of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringInput
	// Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
}

The set of arguments for constructing a ReplicationPolicy resource.

func (ReplicationPolicyArgs) ElementType

func (ReplicationPolicyArgs) ElementType() reflect.Type

type ReplicationPolicyArray

type ReplicationPolicyArray []ReplicationPolicyInput

func (ReplicationPolicyArray) ElementType

func (ReplicationPolicyArray) ElementType() reflect.Type

func (ReplicationPolicyArray) ToReplicationPolicyArrayOutput

func (i ReplicationPolicyArray) ToReplicationPolicyArrayOutput() ReplicationPolicyArrayOutput

func (ReplicationPolicyArray) ToReplicationPolicyArrayOutputWithContext

func (i ReplicationPolicyArray) ToReplicationPolicyArrayOutputWithContext(ctx context.Context) ReplicationPolicyArrayOutput

type ReplicationPolicyArrayInput

type ReplicationPolicyArrayInput interface {
	pulumi.Input

	ToReplicationPolicyArrayOutput() ReplicationPolicyArrayOutput
	ToReplicationPolicyArrayOutputWithContext(context.Context) ReplicationPolicyArrayOutput
}

ReplicationPolicyArrayInput is an input type that accepts ReplicationPolicyArray and ReplicationPolicyArrayOutput values. You can construct a concrete instance of `ReplicationPolicyArrayInput` via:

ReplicationPolicyArray{ ReplicationPolicyArgs{...} }

type ReplicationPolicyArrayOutput

type ReplicationPolicyArrayOutput struct{ *pulumi.OutputState }

func (ReplicationPolicyArrayOutput) ElementType

func (ReplicationPolicyArrayOutput) Index

func (ReplicationPolicyArrayOutput) ToReplicationPolicyArrayOutput

func (o ReplicationPolicyArrayOutput) ToReplicationPolicyArrayOutput() ReplicationPolicyArrayOutput

func (ReplicationPolicyArrayOutput) ToReplicationPolicyArrayOutputWithContext

func (o ReplicationPolicyArrayOutput) ToReplicationPolicyArrayOutputWithContext(ctx context.Context) ReplicationPolicyArrayOutput

type ReplicationPolicyInput

type ReplicationPolicyInput interface {
	pulumi.Input

	ToReplicationPolicyOutput() ReplicationPolicyOutput
	ToReplicationPolicyOutputWithContext(ctx context.Context) ReplicationPolicyOutput
}

type ReplicationPolicyMap

type ReplicationPolicyMap map[string]ReplicationPolicyInput

func (ReplicationPolicyMap) ElementType

func (ReplicationPolicyMap) ElementType() reflect.Type

func (ReplicationPolicyMap) ToReplicationPolicyMapOutput

func (i ReplicationPolicyMap) ToReplicationPolicyMapOutput() ReplicationPolicyMapOutput

func (ReplicationPolicyMap) ToReplicationPolicyMapOutputWithContext

func (i ReplicationPolicyMap) ToReplicationPolicyMapOutputWithContext(ctx context.Context) ReplicationPolicyMapOutput

type ReplicationPolicyMapInput

type ReplicationPolicyMapInput interface {
	pulumi.Input

	ToReplicationPolicyMapOutput() ReplicationPolicyMapOutput
	ToReplicationPolicyMapOutputWithContext(context.Context) ReplicationPolicyMapOutput
}

ReplicationPolicyMapInput is an input type that accepts ReplicationPolicyMap and ReplicationPolicyMapOutput values. You can construct a concrete instance of `ReplicationPolicyMapInput` via:

ReplicationPolicyMap{ "key": ReplicationPolicyArgs{...} }

type ReplicationPolicyMapOutput

type ReplicationPolicyMapOutput struct{ *pulumi.OutputState }

func (ReplicationPolicyMapOutput) ElementType

func (ReplicationPolicyMapOutput) ElementType() reflect.Type

func (ReplicationPolicyMapOutput) MapIndex

func (ReplicationPolicyMapOutput) ToReplicationPolicyMapOutput

func (o ReplicationPolicyMapOutput) ToReplicationPolicyMapOutput() ReplicationPolicyMapOutput

func (ReplicationPolicyMapOutput) ToReplicationPolicyMapOutputWithContext

func (o ReplicationPolicyMapOutput) ToReplicationPolicyMapOutputWithContext(ctx context.Context) ReplicationPolicyMapOutput

type ReplicationPolicyOutput

type ReplicationPolicyOutput struct{ *pulumi.OutputState }

func (ReplicationPolicyOutput) ApplicationConsistentSnapshotFrequencyInMinutes added in v5.5.0

func (o ReplicationPolicyOutput) ApplicationConsistentSnapshotFrequencyInMinutes() pulumi.IntOutput

Specifies the frequency(in minutes) at which to create application consistent recovery points.

func (ReplicationPolicyOutput) ElementType

func (ReplicationPolicyOutput) ElementType() reflect.Type

func (ReplicationPolicyOutput) Name added in v5.5.0

The name of the replication policy. Changing this forces a new resource to be created.

func (ReplicationPolicyOutput) RecoveryPointRetentionInMinutes added in v5.5.0

func (o ReplicationPolicyOutput) RecoveryPointRetentionInMinutes() pulumi.IntOutput

The duration in minutes for which the recovery points need to be stored.

func (ReplicationPolicyOutput) RecoveryVaultName added in v5.5.0

func (o ReplicationPolicyOutput) RecoveryVaultName() pulumi.StringOutput

The name of the vault that should be updated. Changing this forces a new resource to be created.

func (ReplicationPolicyOutput) ResourceGroupName added in v5.5.0

func (o ReplicationPolicyOutput) ResourceGroupName() pulumi.StringOutput

Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.

func (ReplicationPolicyOutput) ToReplicationPolicyOutput

func (o ReplicationPolicyOutput) ToReplicationPolicyOutput() ReplicationPolicyOutput

func (ReplicationPolicyOutput) ToReplicationPolicyOutputWithContext

func (o ReplicationPolicyOutput) ToReplicationPolicyOutputWithContext(ctx context.Context) ReplicationPolicyOutput

type ReplicationPolicyState

type ReplicationPolicyState struct {
	// Specifies the frequency(in minutes) at which to create application consistent recovery points.
	ApplicationConsistentSnapshotFrequencyInMinutes pulumi.IntPtrInput
	// The name of the replication policy. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The duration in minutes for which the recovery points need to be stored.
	RecoveryPointRetentionInMinutes pulumi.IntPtrInput
	// The name of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultName pulumi.StringPtrInput
	// Name of the resource group where the vault that should be updated is located. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
}

func (ReplicationPolicyState) ElementType

func (ReplicationPolicyState) ElementType() reflect.Type

type ReplicationRecoveryPlan added in v5.33.0

type ReplicationRecoveryPlan struct {
	pulumi.CustomResourceState

	// The name of the Replication Plan. The name can contain only letters, numbers, and hyphens. It should start with a letter and end with a letter or a number. Can be a maximum of 63 characters. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Three or more `recoveryGroup` block.
	RecoveryGroups ReplicationRecoveryPlanRecoveryGroupArrayOutput `pulumi:"recoveryGroups"`
	// The ID of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultId pulumi.StringOutput `pulumi:"recoveryVaultId"`
	// ID of source fabric to be recovered from. Changing this forces a new Replication Plan to be created.
	SourceRecoveryFabricId pulumi.StringOutput `pulumi:"sourceRecoveryFabricId"`
	// ID of target fabric to recover. Changing this forces a new Replication Plan to be created.
	TargetRecoveryFabricId pulumi.StringOutput `pulumi:"targetRecoveryFabricId"`
}

Manages an Azure Site Recovery Plan within a Recovery Services vault. A recovery plan gathers machines into recovery groups for the purpose of failover.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		sourceResourceGroup, err := core.NewResourceGroup(ctx, "sourceResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("west us"),
		})
		if err != nil {
			return err
		}
		targetResourceGroup, err := core.NewResourceGroup(ctx, "targetResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("east us"),
		})
		if err != nil {
			return err
		}
		exampleVault, err := recoveryservices.NewVault(ctx, "exampleVault", &recoveryservices.VaultArgs{
			Location:          targetResourceGroup.Location,
			ResourceGroupName: targetResourceGroup.Name,
			Sku:               pulumi.String("Standard"),
		})
		if err != nil {
			return err
		}
		sourceFabric, err := siterecovery.NewFabric(ctx, "sourceFabric", &siterecovery.FabricArgs{
			ResourceGroupName: pulumi.Any(azurerm_resource_group.Example.Name),
			RecoveryVaultName: exampleVault.Name,
			Location:          sourceResourceGroup.Location,
		})
		if err != nil {
			return err
		}
		targetFabric, err := siterecovery.NewFabric(ctx, "targetFabric", &siterecovery.FabricArgs{
			ResourceGroupName: targetResourceGroup.Name,
			RecoveryVaultName: exampleVault.Name,
			Location:          targetResourceGroup.Location,
		}, pulumi.DependsOn([]pulumi.Resource{
			sourceFabric,
		}))
		if err != nil {
			return err
		}
		_, err = siterecovery.NewReplicationRecoveryPlan(ctx, "exampleReplicationRecoveryPlan", &siterecovery.ReplicationRecoveryPlanArgs{
			RecoveryVaultId:        pulumi.Any(azurerm_recovery_services_vault.Target.Id),
			SourceRecoveryFabricId: sourceFabric.ID(),
			TargetRecoveryFabricId: targetFabric.ID(),
			RecoveryGroups: siterecovery.ReplicationRecoveryPlanRecoveryGroupArray{
				&siterecovery.ReplicationRecoveryPlanRecoveryGroupArgs{
					Type: pulumi.String("Boot"),
					ReplicatedProtectedItems: pulumi.StringArray{
						azurerm_site_recovery_replicated_vm.Test.Id,
					},
				},
				&siterecovery.ReplicationRecoveryPlanRecoveryGroupArgs{
					Type: pulumi.String("Failover"),
				},
				&siterecovery.ReplicationRecoveryPlanRecoveryGroupArgs{
					Type: pulumi.String("Shutdown"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Site Recovery Fabric can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:siterecovery/replicationRecoveryPlan:ReplicationRecoveryPlan azurerm_site_recovery_replication_recovery_plan.example /subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/groupName/providers/Microsoft.RecoveryServices/vaults/vaultName/replicationRecoveryPlans/planName

```

func GetReplicationRecoveryPlan added in v5.33.0

func GetReplicationRecoveryPlan(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ReplicationRecoveryPlanState, opts ...pulumi.ResourceOption) (*ReplicationRecoveryPlan, error)

GetReplicationRecoveryPlan gets an existing ReplicationRecoveryPlan 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 NewReplicationRecoveryPlan added in v5.33.0

func NewReplicationRecoveryPlan(ctx *pulumi.Context,
	name string, args *ReplicationRecoveryPlanArgs, opts ...pulumi.ResourceOption) (*ReplicationRecoveryPlan, error)

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

func (*ReplicationRecoveryPlan) ElementType added in v5.33.0

func (*ReplicationRecoveryPlan) ElementType() reflect.Type

func (*ReplicationRecoveryPlan) ToReplicationRecoveryPlanOutput added in v5.33.0

func (i *ReplicationRecoveryPlan) ToReplicationRecoveryPlanOutput() ReplicationRecoveryPlanOutput

func (*ReplicationRecoveryPlan) ToReplicationRecoveryPlanOutputWithContext added in v5.33.0

func (i *ReplicationRecoveryPlan) ToReplicationRecoveryPlanOutputWithContext(ctx context.Context) ReplicationRecoveryPlanOutput

type ReplicationRecoveryPlanArgs added in v5.33.0

type ReplicationRecoveryPlanArgs struct {
	// The name of the Replication Plan. The name can contain only letters, numbers, and hyphens. It should start with a letter and end with a letter or a number. Can be a maximum of 63 characters. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Three or more `recoveryGroup` block.
	RecoveryGroups ReplicationRecoveryPlanRecoveryGroupArrayInput
	// The ID of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultId pulumi.StringInput
	// ID of source fabric to be recovered from. Changing this forces a new Replication Plan to be created.
	SourceRecoveryFabricId pulumi.StringInput
	// ID of target fabric to recover. Changing this forces a new Replication Plan to be created.
	TargetRecoveryFabricId pulumi.StringInput
}

The set of arguments for constructing a ReplicationRecoveryPlan resource.

func (ReplicationRecoveryPlanArgs) ElementType added in v5.33.0

type ReplicationRecoveryPlanArray added in v5.33.0

type ReplicationRecoveryPlanArray []ReplicationRecoveryPlanInput

func (ReplicationRecoveryPlanArray) ElementType added in v5.33.0

func (ReplicationRecoveryPlanArray) ToReplicationRecoveryPlanArrayOutput added in v5.33.0

func (i ReplicationRecoveryPlanArray) ToReplicationRecoveryPlanArrayOutput() ReplicationRecoveryPlanArrayOutput

func (ReplicationRecoveryPlanArray) ToReplicationRecoveryPlanArrayOutputWithContext added in v5.33.0

func (i ReplicationRecoveryPlanArray) ToReplicationRecoveryPlanArrayOutputWithContext(ctx context.Context) ReplicationRecoveryPlanArrayOutput

type ReplicationRecoveryPlanArrayInput added in v5.33.0

type ReplicationRecoveryPlanArrayInput interface {
	pulumi.Input

	ToReplicationRecoveryPlanArrayOutput() ReplicationRecoveryPlanArrayOutput
	ToReplicationRecoveryPlanArrayOutputWithContext(context.Context) ReplicationRecoveryPlanArrayOutput
}

ReplicationRecoveryPlanArrayInput is an input type that accepts ReplicationRecoveryPlanArray and ReplicationRecoveryPlanArrayOutput values. You can construct a concrete instance of `ReplicationRecoveryPlanArrayInput` via:

ReplicationRecoveryPlanArray{ ReplicationRecoveryPlanArgs{...} }

type ReplicationRecoveryPlanArrayOutput added in v5.33.0

type ReplicationRecoveryPlanArrayOutput struct{ *pulumi.OutputState }

func (ReplicationRecoveryPlanArrayOutput) ElementType added in v5.33.0

func (ReplicationRecoveryPlanArrayOutput) Index added in v5.33.0

func (ReplicationRecoveryPlanArrayOutput) ToReplicationRecoveryPlanArrayOutput added in v5.33.0

func (o ReplicationRecoveryPlanArrayOutput) ToReplicationRecoveryPlanArrayOutput() ReplicationRecoveryPlanArrayOutput

func (ReplicationRecoveryPlanArrayOutput) ToReplicationRecoveryPlanArrayOutputWithContext added in v5.33.0

func (o ReplicationRecoveryPlanArrayOutput) ToReplicationRecoveryPlanArrayOutputWithContext(ctx context.Context) ReplicationRecoveryPlanArrayOutput

type ReplicationRecoveryPlanInput added in v5.33.0

type ReplicationRecoveryPlanInput interface {
	pulumi.Input

	ToReplicationRecoveryPlanOutput() ReplicationRecoveryPlanOutput
	ToReplicationRecoveryPlanOutputWithContext(ctx context.Context) ReplicationRecoveryPlanOutput
}

type ReplicationRecoveryPlanMap added in v5.33.0

type ReplicationRecoveryPlanMap map[string]ReplicationRecoveryPlanInput

func (ReplicationRecoveryPlanMap) ElementType added in v5.33.0

func (ReplicationRecoveryPlanMap) ElementType() reflect.Type

func (ReplicationRecoveryPlanMap) ToReplicationRecoveryPlanMapOutput added in v5.33.0

func (i ReplicationRecoveryPlanMap) ToReplicationRecoveryPlanMapOutput() ReplicationRecoveryPlanMapOutput

func (ReplicationRecoveryPlanMap) ToReplicationRecoveryPlanMapOutputWithContext added in v5.33.0

func (i ReplicationRecoveryPlanMap) ToReplicationRecoveryPlanMapOutputWithContext(ctx context.Context) ReplicationRecoveryPlanMapOutput

type ReplicationRecoveryPlanMapInput added in v5.33.0

type ReplicationRecoveryPlanMapInput interface {
	pulumi.Input

	ToReplicationRecoveryPlanMapOutput() ReplicationRecoveryPlanMapOutput
	ToReplicationRecoveryPlanMapOutputWithContext(context.Context) ReplicationRecoveryPlanMapOutput
}

ReplicationRecoveryPlanMapInput is an input type that accepts ReplicationRecoveryPlanMap and ReplicationRecoveryPlanMapOutput values. You can construct a concrete instance of `ReplicationRecoveryPlanMapInput` via:

ReplicationRecoveryPlanMap{ "key": ReplicationRecoveryPlanArgs{...} }

type ReplicationRecoveryPlanMapOutput added in v5.33.0

type ReplicationRecoveryPlanMapOutput struct{ *pulumi.OutputState }

func (ReplicationRecoveryPlanMapOutput) ElementType added in v5.33.0

func (ReplicationRecoveryPlanMapOutput) MapIndex added in v5.33.0

func (ReplicationRecoveryPlanMapOutput) ToReplicationRecoveryPlanMapOutput added in v5.33.0

func (o ReplicationRecoveryPlanMapOutput) ToReplicationRecoveryPlanMapOutput() ReplicationRecoveryPlanMapOutput

func (ReplicationRecoveryPlanMapOutput) ToReplicationRecoveryPlanMapOutputWithContext added in v5.33.0

func (o ReplicationRecoveryPlanMapOutput) ToReplicationRecoveryPlanMapOutputWithContext(ctx context.Context) ReplicationRecoveryPlanMapOutput

type ReplicationRecoveryPlanOutput added in v5.33.0

type ReplicationRecoveryPlanOutput struct{ *pulumi.OutputState }

func (ReplicationRecoveryPlanOutput) ElementType added in v5.33.0

func (ReplicationRecoveryPlanOutput) Name added in v5.33.0

The name of the Replication Plan. The name can contain only letters, numbers, and hyphens. It should start with a letter and end with a letter or a number. Can be a maximum of 63 characters. Changing this forces a new resource to be created.

func (ReplicationRecoveryPlanOutput) RecoveryGroups added in v5.33.0

Three or more `recoveryGroup` block.

func (ReplicationRecoveryPlanOutput) RecoveryVaultId added in v5.33.0

The ID of the vault that should be updated. Changing this forces a new resource to be created.

func (ReplicationRecoveryPlanOutput) SourceRecoveryFabricId added in v5.33.0

func (o ReplicationRecoveryPlanOutput) SourceRecoveryFabricId() pulumi.StringOutput

ID of source fabric to be recovered from. Changing this forces a new Replication Plan to be created.

func (ReplicationRecoveryPlanOutput) TargetRecoveryFabricId added in v5.33.0

func (o ReplicationRecoveryPlanOutput) TargetRecoveryFabricId() pulumi.StringOutput

ID of target fabric to recover. Changing this forces a new Replication Plan to be created.

func (ReplicationRecoveryPlanOutput) ToReplicationRecoveryPlanOutput added in v5.33.0

func (o ReplicationRecoveryPlanOutput) ToReplicationRecoveryPlanOutput() ReplicationRecoveryPlanOutput

func (ReplicationRecoveryPlanOutput) ToReplicationRecoveryPlanOutputWithContext added in v5.33.0

func (o ReplicationRecoveryPlanOutput) ToReplicationRecoveryPlanOutputWithContext(ctx context.Context) ReplicationRecoveryPlanOutput

type ReplicationRecoveryPlanRecoveryGroup added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroup struct {
	// one or more `action` block as defined below. which will be executed after the group recovery.
	PostActions []ReplicationRecoveryPlanRecoveryGroupPostAction `pulumi:"postActions"`
	// one or more `action` block as defined below. which will be executed before the group recovery.
	PreActions []ReplicationRecoveryPlanRecoveryGroupPreAction `pulumi:"preActions"`
	// (required) one or more id of protected VM.
	ReplicatedProtectedItems []string `pulumi:"replicatedProtectedItems"`
	// The Recovery Plan Group Type. Possible values are `Boot`, `Failover` and `Shutdown`.
	Type string `pulumi:"type"`
}

type ReplicationRecoveryPlanRecoveryGroupArgs added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupArgs struct {
	// one or more `action` block as defined below. which will be executed after the group recovery.
	PostActions ReplicationRecoveryPlanRecoveryGroupPostActionArrayInput `pulumi:"postActions"`
	// one or more `action` block as defined below. which will be executed before the group recovery.
	PreActions ReplicationRecoveryPlanRecoveryGroupPreActionArrayInput `pulumi:"preActions"`
	// (required) one or more id of protected VM.
	ReplicatedProtectedItems pulumi.StringArrayInput `pulumi:"replicatedProtectedItems"`
	// The Recovery Plan Group Type. Possible values are `Boot`, `Failover` and `Shutdown`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (ReplicationRecoveryPlanRecoveryGroupArgs) ElementType added in v5.33.0

func (ReplicationRecoveryPlanRecoveryGroupArgs) ToReplicationRecoveryPlanRecoveryGroupOutput added in v5.33.0

func (i ReplicationRecoveryPlanRecoveryGroupArgs) ToReplicationRecoveryPlanRecoveryGroupOutput() ReplicationRecoveryPlanRecoveryGroupOutput

func (ReplicationRecoveryPlanRecoveryGroupArgs) ToReplicationRecoveryPlanRecoveryGroupOutputWithContext added in v5.33.0

func (i ReplicationRecoveryPlanRecoveryGroupArgs) ToReplicationRecoveryPlanRecoveryGroupOutputWithContext(ctx context.Context) ReplicationRecoveryPlanRecoveryGroupOutput

type ReplicationRecoveryPlanRecoveryGroupArray added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupArray []ReplicationRecoveryPlanRecoveryGroupInput

func (ReplicationRecoveryPlanRecoveryGroupArray) ElementType added in v5.33.0

func (ReplicationRecoveryPlanRecoveryGroupArray) ToReplicationRecoveryPlanRecoveryGroupArrayOutput added in v5.33.0

func (i ReplicationRecoveryPlanRecoveryGroupArray) ToReplicationRecoveryPlanRecoveryGroupArrayOutput() ReplicationRecoveryPlanRecoveryGroupArrayOutput

func (ReplicationRecoveryPlanRecoveryGroupArray) ToReplicationRecoveryPlanRecoveryGroupArrayOutputWithContext added in v5.33.0

func (i ReplicationRecoveryPlanRecoveryGroupArray) ToReplicationRecoveryPlanRecoveryGroupArrayOutputWithContext(ctx context.Context) ReplicationRecoveryPlanRecoveryGroupArrayOutput

type ReplicationRecoveryPlanRecoveryGroupArrayInput added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupArrayInput interface {
	pulumi.Input

	ToReplicationRecoveryPlanRecoveryGroupArrayOutput() ReplicationRecoveryPlanRecoveryGroupArrayOutput
	ToReplicationRecoveryPlanRecoveryGroupArrayOutputWithContext(context.Context) ReplicationRecoveryPlanRecoveryGroupArrayOutput
}

ReplicationRecoveryPlanRecoveryGroupArrayInput is an input type that accepts ReplicationRecoveryPlanRecoveryGroupArray and ReplicationRecoveryPlanRecoveryGroupArrayOutput values. You can construct a concrete instance of `ReplicationRecoveryPlanRecoveryGroupArrayInput` via:

ReplicationRecoveryPlanRecoveryGroupArray{ ReplicationRecoveryPlanRecoveryGroupArgs{...} }

type ReplicationRecoveryPlanRecoveryGroupArrayOutput added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupArrayOutput struct{ *pulumi.OutputState }

func (ReplicationRecoveryPlanRecoveryGroupArrayOutput) ElementType added in v5.33.0

func (ReplicationRecoveryPlanRecoveryGroupArrayOutput) Index added in v5.33.0

func (ReplicationRecoveryPlanRecoveryGroupArrayOutput) ToReplicationRecoveryPlanRecoveryGroupArrayOutput added in v5.33.0

func (o ReplicationRecoveryPlanRecoveryGroupArrayOutput) ToReplicationRecoveryPlanRecoveryGroupArrayOutput() ReplicationRecoveryPlanRecoveryGroupArrayOutput

func (ReplicationRecoveryPlanRecoveryGroupArrayOutput) ToReplicationRecoveryPlanRecoveryGroupArrayOutputWithContext added in v5.33.0

func (o ReplicationRecoveryPlanRecoveryGroupArrayOutput) ToReplicationRecoveryPlanRecoveryGroupArrayOutputWithContext(ctx context.Context) ReplicationRecoveryPlanRecoveryGroupArrayOutput

type ReplicationRecoveryPlanRecoveryGroupInput added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupInput interface {
	pulumi.Input

	ToReplicationRecoveryPlanRecoveryGroupOutput() ReplicationRecoveryPlanRecoveryGroupOutput
	ToReplicationRecoveryPlanRecoveryGroupOutputWithContext(context.Context) ReplicationRecoveryPlanRecoveryGroupOutput
}

ReplicationRecoveryPlanRecoveryGroupInput is an input type that accepts ReplicationRecoveryPlanRecoveryGroupArgs and ReplicationRecoveryPlanRecoveryGroupOutput values. You can construct a concrete instance of `ReplicationRecoveryPlanRecoveryGroupInput` via:

ReplicationRecoveryPlanRecoveryGroupArgs{...}

type ReplicationRecoveryPlanRecoveryGroupOutput added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupOutput struct{ *pulumi.OutputState }

func (ReplicationRecoveryPlanRecoveryGroupOutput) ElementType added in v5.33.0

func (ReplicationRecoveryPlanRecoveryGroupOutput) PostActions added in v5.33.0

one or more `action` block as defined below. which will be executed after the group recovery.

func (ReplicationRecoveryPlanRecoveryGroupOutput) PreActions added in v5.33.0

one or more `action` block as defined below. which will be executed before the group recovery.

func (ReplicationRecoveryPlanRecoveryGroupOutput) ReplicatedProtectedItems added in v5.33.0

(required) one or more id of protected VM.

func (ReplicationRecoveryPlanRecoveryGroupOutput) ToReplicationRecoveryPlanRecoveryGroupOutput added in v5.33.0

func (o ReplicationRecoveryPlanRecoveryGroupOutput) ToReplicationRecoveryPlanRecoveryGroupOutput() ReplicationRecoveryPlanRecoveryGroupOutput

func (ReplicationRecoveryPlanRecoveryGroupOutput) ToReplicationRecoveryPlanRecoveryGroupOutputWithContext added in v5.33.0

func (o ReplicationRecoveryPlanRecoveryGroupOutput) ToReplicationRecoveryPlanRecoveryGroupOutputWithContext(ctx context.Context) ReplicationRecoveryPlanRecoveryGroupOutput

func (ReplicationRecoveryPlanRecoveryGroupOutput) Type added in v5.33.0

The Recovery Plan Group Type. Possible values are `Boot`, `Failover` and `Shutdown`.

type ReplicationRecoveryPlanRecoveryGroupPostAction added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupPostAction struct {
	// The fabric location of runbook or script. Possible values are `Primary` and `Recovery`.
	FabricLocation *string `pulumi:"fabricLocation"`
	// Directions of fail over. Possible values are `PrimaryToRecovery` and `RecoveryToPrimary`
	FailOverDirections []string `pulumi:"failOverDirections"`
	// Types of fail over. Possible values are `TestFailover`, `PlannedFailover` and `UnplannedFailover`
	FailOverTypes []string `pulumi:"failOverTypes"`
	// Instructions of manual action.
	ManualActionInstruction *string `pulumi:"manualActionInstruction"`
	// The name of the Replication Plan. The name can contain only letters, numbers, and hyphens. It should start with a letter and end with a letter or a number. Can be a maximum of 63 characters. Changing this forces a new resource to be created.
	Name string `pulumi:"name"`
	// Id of runbook.
	RunbookId *string `pulumi:"runbookId"`
	// Path of action script.
	ScriptPath *string `pulumi:"scriptPath"`
	// The Recovery Plan Group Type. Possible values are `Boot`, `Failover` and `Shutdown`.
	Type string `pulumi:"type"`
}

type ReplicationRecoveryPlanRecoveryGroupPostActionArgs added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupPostActionArgs struct {
	// The fabric location of runbook or script. Possible values are `Primary` and `Recovery`.
	FabricLocation pulumi.StringPtrInput `pulumi:"fabricLocation"`
	// Directions of fail over. Possible values are `PrimaryToRecovery` and `RecoveryToPrimary`
	FailOverDirections pulumi.StringArrayInput `pulumi:"failOverDirections"`
	// Types of fail over. Possible values are `TestFailover`, `PlannedFailover` and `UnplannedFailover`
	FailOverTypes pulumi.StringArrayInput `pulumi:"failOverTypes"`
	// Instructions of manual action.
	ManualActionInstruction pulumi.StringPtrInput `pulumi:"manualActionInstruction"`
	// The name of the Replication Plan. The name can contain only letters, numbers, and hyphens. It should start with a letter and end with a letter or a number. Can be a maximum of 63 characters. Changing this forces a new resource to be created.
	Name pulumi.StringInput `pulumi:"name"`
	// Id of runbook.
	RunbookId pulumi.StringPtrInput `pulumi:"runbookId"`
	// Path of action script.
	ScriptPath pulumi.StringPtrInput `pulumi:"scriptPath"`
	// The Recovery Plan Group Type. Possible values are `Boot`, `Failover` and `Shutdown`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (ReplicationRecoveryPlanRecoveryGroupPostActionArgs) ElementType added in v5.33.0

func (ReplicationRecoveryPlanRecoveryGroupPostActionArgs) ToReplicationRecoveryPlanRecoveryGroupPostActionOutput added in v5.33.0

func (i ReplicationRecoveryPlanRecoveryGroupPostActionArgs) ToReplicationRecoveryPlanRecoveryGroupPostActionOutput() ReplicationRecoveryPlanRecoveryGroupPostActionOutput

func (ReplicationRecoveryPlanRecoveryGroupPostActionArgs) ToReplicationRecoveryPlanRecoveryGroupPostActionOutputWithContext added in v5.33.0

func (i ReplicationRecoveryPlanRecoveryGroupPostActionArgs) ToReplicationRecoveryPlanRecoveryGroupPostActionOutputWithContext(ctx context.Context) ReplicationRecoveryPlanRecoveryGroupPostActionOutput

type ReplicationRecoveryPlanRecoveryGroupPostActionArray added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupPostActionArray []ReplicationRecoveryPlanRecoveryGroupPostActionInput

func (ReplicationRecoveryPlanRecoveryGroupPostActionArray) ElementType added in v5.33.0

func (ReplicationRecoveryPlanRecoveryGroupPostActionArray) ToReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput added in v5.33.0

func (i ReplicationRecoveryPlanRecoveryGroupPostActionArray) ToReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput() ReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput

func (ReplicationRecoveryPlanRecoveryGroupPostActionArray) ToReplicationRecoveryPlanRecoveryGroupPostActionArrayOutputWithContext added in v5.33.0

func (i ReplicationRecoveryPlanRecoveryGroupPostActionArray) ToReplicationRecoveryPlanRecoveryGroupPostActionArrayOutputWithContext(ctx context.Context) ReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput

type ReplicationRecoveryPlanRecoveryGroupPostActionArrayInput added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupPostActionArrayInput interface {
	pulumi.Input

	ToReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput() ReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput
	ToReplicationRecoveryPlanRecoveryGroupPostActionArrayOutputWithContext(context.Context) ReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput
}

ReplicationRecoveryPlanRecoveryGroupPostActionArrayInput is an input type that accepts ReplicationRecoveryPlanRecoveryGroupPostActionArray and ReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput values. You can construct a concrete instance of `ReplicationRecoveryPlanRecoveryGroupPostActionArrayInput` via:

ReplicationRecoveryPlanRecoveryGroupPostActionArray{ ReplicationRecoveryPlanRecoveryGroupPostActionArgs{...} }

type ReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput struct{ *pulumi.OutputState }

func (ReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput) ElementType added in v5.33.0

func (ReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput) Index added in v5.33.0

func (ReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput) ToReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput added in v5.33.0

func (ReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput) ToReplicationRecoveryPlanRecoveryGroupPostActionArrayOutputWithContext added in v5.33.0

func (o ReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput) ToReplicationRecoveryPlanRecoveryGroupPostActionArrayOutputWithContext(ctx context.Context) ReplicationRecoveryPlanRecoveryGroupPostActionArrayOutput

type ReplicationRecoveryPlanRecoveryGroupPostActionInput added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupPostActionInput interface {
	pulumi.Input

	ToReplicationRecoveryPlanRecoveryGroupPostActionOutput() ReplicationRecoveryPlanRecoveryGroupPostActionOutput
	ToReplicationRecoveryPlanRecoveryGroupPostActionOutputWithContext(context.Context) ReplicationRecoveryPlanRecoveryGroupPostActionOutput
}

ReplicationRecoveryPlanRecoveryGroupPostActionInput is an input type that accepts ReplicationRecoveryPlanRecoveryGroupPostActionArgs and ReplicationRecoveryPlanRecoveryGroupPostActionOutput values. You can construct a concrete instance of `ReplicationRecoveryPlanRecoveryGroupPostActionInput` via:

ReplicationRecoveryPlanRecoveryGroupPostActionArgs{...}

type ReplicationRecoveryPlanRecoveryGroupPostActionOutput added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupPostActionOutput struct{ *pulumi.OutputState }

func (ReplicationRecoveryPlanRecoveryGroupPostActionOutput) ElementType added in v5.33.0

func (ReplicationRecoveryPlanRecoveryGroupPostActionOutput) FabricLocation added in v5.33.0

The fabric location of runbook or script. Possible values are `Primary` and `Recovery`.

func (ReplicationRecoveryPlanRecoveryGroupPostActionOutput) FailOverDirections added in v5.33.0

Directions of fail over. Possible values are `PrimaryToRecovery` and `RecoveryToPrimary`

func (ReplicationRecoveryPlanRecoveryGroupPostActionOutput) FailOverTypes added in v5.33.0

Types of fail over. Possible values are `TestFailover`, `PlannedFailover` and `UnplannedFailover`

func (ReplicationRecoveryPlanRecoveryGroupPostActionOutput) ManualActionInstruction added in v5.33.0

Instructions of manual action.

func (ReplicationRecoveryPlanRecoveryGroupPostActionOutput) Name added in v5.33.0

The name of the Replication Plan. The name can contain only letters, numbers, and hyphens. It should start with a letter and end with a letter or a number. Can be a maximum of 63 characters. Changing this forces a new resource to be created.

func (ReplicationRecoveryPlanRecoveryGroupPostActionOutput) RunbookId added in v5.33.0

Id of runbook.

func (ReplicationRecoveryPlanRecoveryGroupPostActionOutput) ScriptPath added in v5.33.0

Path of action script.

func (ReplicationRecoveryPlanRecoveryGroupPostActionOutput) ToReplicationRecoveryPlanRecoveryGroupPostActionOutput added in v5.33.0

func (ReplicationRecoveryPlanRecoveryGroupPostActionOutput) ToReplicationRecoveryPlanRecoveryGroupPostActionOutputWithContext added in v5.33.0

func (o ReplicationRecoveryPlanRecoveryGroupPostActionOutput) ToReplicationRecoveryPlanRecoveryGroupPostActionOutputWithContext(ctx context.Context) ReplicationRecoveryPlanRecoveryGroupPostActionOutput

func (ReplicationRecoveryPlanRecoveryGroupPostActionOutput) Type added in v5.33.0

The Recovery Plan Group Type. Possible values are `Boot`, `Failover` and `Shutdown`.

type ReplicationRecoveryPlanRecoveryGroupPreAction added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupPreAction struct {
	// The fabric location of runbook or script. Possible values are `Primary` and `Recovery`.
	FabricLocation *string `pulumi:"fabricLocation"`
	// Directions of fail over. Possible values are `PrimaryToRecovery` and `RecoveryToPrimary`
	FailOverDirections []string `pulumi:"failOverDirections"`
	// Types of fail over. Possible values are `TestFailover`, `PlannedFailover` and `UnplannedFailover`
	FailOverTypes []string `pulumi:"failOverTypes"`
	// Instructions of manual action.
	ManualActionInstruction *string `pulumi:"manualActionInstruction"`
	// The name of the Replication Plan. The name can contain only letters, numbers, and hyphens. It should start with a letter and end with a letter or a number. Can be a maximum of 63 characters. Changing this forces a new resource to be created.
	Name string `pulumi:"name"`
	// Id of runbook.
	RunbookId *string `pulumi:"runbookId"`
	// Path of action script.
	ScriptPath *string `pulumi:"scriptPath"`
	// The Recovery Plan Group Type. Possible values are `Boot`, `Failover` and `Shutdown`.
	Type string `pulumi:"type"`
}

type ReplicationRecoveryPlanRecoveryGroupPreActionArgs added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupPreActionArgs struct {
	// The fabric location of runbook or script. Possible values are `Primary` and `Recovery`.
	FabricLocation pulumi.StringPtrInput `pulumi:"fabricLocation"`
	// Directions of fail over. Possible values are `PrimaryToRecovery` and `RecoveryToPrimary`
	FailOverDirections pulumi.StringArrayInput `pulumi:"failOverDirections"`
	// Types of fail over. Possible values are `TestFailover`, `PlannedFailover` and `UnplannedFailover`
	FailOverTypes pulumi.StringArrayInput `pulumi:"failOverTypes"`
	// Instructions of manual action.
	ManualActionInstruction pulumi.StringPtrInput `pulumi:"manualActionInstruction"`
	// The name of the Replication Plan. The name can contain only letters, numbers, and hyphens. It should start with a letter and end with a letter or a number. Can be a maximum of 63 characters. Changing this forces a new resource to be created.
	Name pulumi.StringInput `pulumi:"name"`
	// Id of runbook.
	RunbookId pulumi.StringPtrInput `pulumi:"runbookId"`
	// Path of action script.
	ScriptPath pulumi.StringPtrInput `pulumi:"scriptPath"`
	// The Recovery Plan Group Type. Possible values are `Boot`, `Failover` and `Shutdown`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (ReplicationRecoveryPlanRecoveryGroupPreActionArgs) ElementType added in v5.33.0

func (ReplicationRecoveryPlanRecoveryGroupPreActionArgs) ToReplicationRecoveryPlanRecoveryGroupPreActionOutput added in v5.33.0

func (i ReplicationRecoveryPlanRecoveryGroupPreActionArgs) ToReplicationRecoveryPlanRecoveryGroupPreActionOutput() ReplicationRecoveryPlanRecoveryGroupPreActionOutput

func (ReplicationRecoveryPlanRecoveryGroupPreActionArgs) ToReplicationRecoveryPlanRecoveryGroupPreActionOutputWithContext added in v5.33.0

func (i ReplicationRecoveryPlanRecoveryGroupPreActionArgs) ToReplicationRecoveryPlanRecoveryGroupPreActionOutputWithContext(ctx context.Context) ReplicationRecoveryPlanRecoveryGroupPreActionOutput

type ReplicationRecoveryPlanRecoveryGroupPreActionArray added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupPreActionArray []ReplicationRecoveryPlanRecoveryGroupPreActionInput

func (ReplicationRecoveryPlanRecoveryGroupPreActionArray) ElementType added in v5.33.0

func (ReplicationRecoveryPlanRecoveryGroupPreActionArray) ToReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput added in v5.33.0

func (i ReplicationRecoveryPlanRecoveryGroupPreActionArray) ToReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput() ReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput

func (ReplicationRecoveryPlanRecoveryGroupPreActionArray) ToReplicationRecoveryPlanRecoveryGroupPreActionArrayOutputWithContext added in v5.33.0

func (i ReplicationRecoveryPlanRecoveryGroupPreActionArray) ToReplicationRecoveryPlanRecoveryGroupPreActionArrayOutputWithContext(ctx context.Context) ReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput

type ReplicationRecoveryPlanRecoveryGroupPreActionArrayInput added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupPreActionArrayInput interface {
	pulumi.Input

	ToReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput() ReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput
	ToReplicationRecoveryPlanRecoveryGroupPreActionArrayOutputWithContext(context.Context) ReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput
}

ReplicationRecoveryPlanRecoveryGroupPreActionArrayInput is an input type that accepts ReplicationRecoveryPlanRecoveryGroupPreActionArray and ReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput values. You can construct a concrete instance of `ReplicationRecoveryPlanRecoveryGroupPreActionArrayInput` via:

ReplicationRecoveryPlanRecoveryGroupPreActionArray{ ReplicationRecoveryPlanRecoveryGroupPreActionArgs{...} }

type ReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput struct{ *pulumi.OutputState }

func (ReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput) ElementType added in v5.33.0

func (ReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput) Index added in v5.33.0

func (ReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput) ToReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput added in v5.33.0

func (ReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput) ToReplicationRecoveryPlanRecoveryGroupPreActionArrayOutputWithContext added in v5.33.0

func (o ReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput) ToReplicationRecoveryPlanRecoveryGroupPreActionArrayOutputWithContext(ctx context.Context) ReplicationRecoveryPlanRecoveryGroupPreActionArrayOutput

type ReplicationRecoveryPlanRecoveryGroupPreActionInput added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupPreActionInput interface {
	pulumi.Input

	ToReplicationRecoveryPlanRecoveryGroupPreActionOutput() ReplicationRecoveryPlanRecoveryGroupPreActionOutput
	ToReplicationRecoveryPlanRecoveryGroupPreActionOutputWithContext(context.Context) ReplicationRecoveryPlanRecoveryGroupPreActionOutput
}

ReplicationRecoveryPlanRecoveryGroupPreActionInput is an input type that accepts ReplicationRecoveryPlanRecoveryGroupPreActionArgs and ReplicationRecoveryPlanRecoveryGroupPreActionOutput values. You can construct a concrete instance of `ReplicationRecoveryPlanRecoveryGroupPreActionInput` via:

ReplicationRecoveryPlanRecoveryGroupPreActionArgs{...}

type ReplicationRecoveryPlanRecoveryGroupPreActionOutput added in v5.33.0

type ReplicationRecoveryPlanRecoveryGroupPreActionOutput struct{ *pulumi.OutputState }

func (ReplicationRecoveryPlanRecoveryGroupPreActionOutput) ElementType added in v5.33.0

func (ReplicationRecoveryPlanRecoveryGroupPreActionOutput) FabricLocation added in v5.33.0

The fabric location of runbook or script. Possible values are `Primary` and `Recovery`.

func (ReplicationRecoveryPlanRecoveryGroupPreActionOutput) FailOverDirections added in v5.33.0

Directions of fail over. Possible values are `PrimaryToRecovery` and `RecoveryToPrimary`

func (ReplicationRecoveryPlanRecoveryGroupPreActionOutput) FailOverTypes added in v5.33.0

Types of fail over. Possible values are `TestFailover`, `PlannedFailover` and `UnplannedFailover`

func (ReplicationRecoveryPlanRecoveryGroupPreActionOutput) ManualActionInstruction added in v5.33.0

Instructions of manual action.

func (ReplicationRecoveryPlanRecoveryGroupPreActionOutput) Name added in v5.33.0

The name of the Replication Plan. The name can contain only letters, numbers, and hyphens. It should start with a letter and end with a letter or a number. Can be a maximum of 63 characters. Changing this forces a new resource to be created.

func (ReplicationRecoveryPlanRecoveryGroupPreActionOutput) RunbookId added in v5.33.0

Id of runbook.

func (ReplicationRecoveryPlanRecoveryGroupPreActionOutput) ScriptPath added in v5.33.0

Path of action script.

func (ReplicationRecoveryPlanRecoveryGroupPreActionOutput) ToReplicationRecoveryPlanRecoveryGroupPreActionOutput added in v5.33.0

func (o ReplicationRecoveryPlanRecoveryGroupPreActionOutput) ToReplicationRecoveryPlanRecoveryGroupPreActionOutput() ReplicationRecoveryPlanRecoveryGroupPreActionOutput

func (ReplicationRecoveryPlanRecoveryGroupPreActionOutput) ToReplicationRecoveryPlanRecoveryGroupPreActionOutputWithContext added in v5.33.0

func (o ReplicationRecoveryPlanRecoveryGroupPreActionOutput) ToReplicationRecoveryPlanRecoveryGroupPreActionOutputWithContext(ctx context.Context) ReplicationRecoveryPlanRecoveryGroupPreActionOutput

func (ReplicationRecoveryPlanRecoveryGroupPreActionOutput) Type added in v5.33.0

The Recovery Plan Group Type. Possible values are `Boot`, `Failover` and `Shutdown`.

type ReplicationRecoveryPlanState added in v5.33.0

type ReplicationRecoveryPlanState struct {
	// The name of the Replication Plan. The name can contain only letters, numbers, and hyphens. It should start with a letter and end with a letter or a number. Can be a maximum of 63 characters. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Three or more `recoveryGroup` block.
	RecoveryGroups ReplicationRecoveryPlanRecoveryGroupArrayInput
	// The ID of the vault that should be updated. Changing this forces a new resource to be created.
	RecoveryVaultId pulumi.StringPtrInput
	// ID of source fabric to be recovered from. Changing this forces a new Replication Plan to be created.
	SourceRecoveryFabricId pulumi.StringPtrInput
	// ID of target fabric to recover. Changing this forces a new Replication Plan to be created.
	TargetRecoveryFabricId pulumi.StringPtrInput
}

func (ReplicationRecoveryPlanState) ElementType added in v5.33.0

Jump to

Keyboard shortcuts

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