siterecovery

package
v5.19.0 Latest Latest
Warning

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

Go to latest
Published: Sep 16, 2022 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.
	Location pulumi.StringOutput `pulumi:"location"`
	// The name of the network mapping.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the vault that should be updated.
	RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"`
	// Name of the resource group where the vault that should be updated is located.
	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.
	Location pulumi.StringPtrInput
	// The name of the network mapping.
	Name pulumi.StringPtrInput
	// The name of the vault that should be updated.
	RecoveryVaultName pulumi.StringInput
	// Name of the resource group where the vault that should be updated is located.
	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.

func (FabricOutput) Name added in v5.5.0

func (o FabricOutput) Name() pulumi.StringOutput

The name of the network mapping.

func (FabricOutput) RecoveryVaultName added in v5.5.0

func (o FabricOutput) RecoveryVaultName() pulumi.StringOutput

The name of the vault that should be updated.

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.

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.
	Location pulumi.StringPtrInput
	// The name of the network mapping.
	Name pulumi.StringPtrInput
	// The name of the vault that should be updated.
	RecoveryVaultName pulumi.StringPtrInput
	// Name of the resource group where the vault that should be updated is located.
	ResourceGroupName pulumi.StringPtrInput
}

func (FabricState) ElementType

func (FabricState) 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 NetworkMapping

type NetworkMapping struct {
	pulumi.CustomResourceState

	// The name of the network mapping.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the vault that should be updated.
	RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"`
	// Name of the resource group where the vault that should be updated is located.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// The id of the primary network.
	SourceNetworkId pulumi.StringOutput `pulumi:"sourceNetworkId"`
	// Specifies the ASR fabric where mapping should be created.
	SourceRecoveryFabricName pulumi.StringOutput `pulumi:"sourceRecoveryFabricName"`
	// The id of the recovery network.
	TargetNetworkId pulumi.StringOutput `pulumi:"targetNetworkId"`
	// The Azure Site Recovery fabric object corresponding to the recovery Azure region.
	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.
	Name pulumi.StringPtrInput
	// The name of the vault that should be updated.
	RecoveryVaultName pulumi.StringInput
	// Name of the resource group where the vault that should be updated is located.
	ResourceGroupName pulumi.StringInput
	// The id of the primary network.
	SourceNetworkId pulumi.StringInput
	// Specifies the ASR fabric where mapping should be created.
	SourceRecoveryFabricName pulumi.StringInput
	// The id of the recovery network.
	TargetNetworkId pulumi.StringInput
	// The Azure Site Recovery fabric object corresponding to the recovery Azure region.
	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.

func (NetworkMappingOutput) RecoveryVaultName added in v5.5.0

func (o NetworkMappingOutput) RecoveryVaultName() pulumi.StringOutput

The name of the vault that should be updated.

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.

func (NetworkMappingOutput) SourceNetworkId added in v5.5.0

func (o NetworkMappingOutput) SourceNetworkId() pulumi.StringOutput

The id of the primary network.

func (NetworkMappingOutput) SourceRecoveryFabricName added in v5.5.0

func (o NetworkMappingOutput) SourceRecoveryFabricName() pulumi.StringOutput

Specifies the ASR fabric where mapping should be created.

func (NetworkMappingOutput) TargetNetworkId added in v5.5.0

func (o NetworkMappingOutput) TargetNetworkId() pulumi.StringOutput

The id of the recovery network.

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.

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.
	Name pulumi.StringPtrInput
	// The name of the vault that should be updated.
	RecoveryVaultName pulumi.StringPtrInput
	// Name of the resource group where the vault that should be updated is located.
	ResourceGroupName pulumi.StringPtrInput
	// The id of the primary network.
	SourceNetworkId pulumi.StringPtrInput
	// Specifies the ASR fabric where mapping should be created.
	SourceRecoveryFabricName pulumi.StringPtrInput
	// The id of the recovery network.
	TargetNetworkId pulumi.StringPtrInput
	// The Azure Site Recovery fabric object corresponding to the recovery Azure region.
	TargetRecoveryFabricName pulumi.StringPtrInput
}

func (NetworkMappingState) ElementType

func (NetworkMappingState) ElementType() reflect.Type

type ProtectionContainer

type ProtectionContainer struct {
	pulumi.CustomResourceState

	// The name of the protection container.
	Name pulumi.StringOutput `pulumi:"name"`
	// Name of fabric that should contain this protection container.
	RecoveryFabricName pulumi.StringOutput `pulumi:"recoveryFabricName"`
	// The name of the vault that should be updated.
	RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"`
	// Name of the resource group where the vault that should be updated is located.
	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.
	Name pulumi.StringPtrInput
	// Name of fabric that should contain this protection container.
	RecoveryFabricName pulumi.StringInput
	// The name of the vault that should be updated.
	RecoveryVaultName pulumi.StringInput
	// Name of the resource group where the vault that should be updated is located.
	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

	// The name of the protection container mapping.
	Name pulumi.StringOutput `pulumi:"name"`
	// Name of fabric that should contains the protection container to map.
	RecoveryFabricName pulumi.StringOutput `pulumi:"recoveryFabricName"`
	// Id of the policy to use for this mapping.
	RecoveryReplicationPolicyId pulumi.StringOutput `pulumi:"recoveryReplicationPolicyId"`
	// Name of the source protection container to map.
	RecoverySourceProtectionContainerName pulumi.StringOutput `pulumi:"recoverySourceProtectionContainerName"`
	// Id of target protection container to map to.
	RecoveryTargetProtectionContainerId pulumi.StringOutput `pulumi:"recoveryTargetProtectionContainerId"`
	// The name of the vault that should be updated.
	RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"`
	// Name of the resource group where the vault that should be updated is located.
	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

```

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 {
	// The name of the protection container mapping.
	Name pulumi.StringPtrInput
	// Name of fabric that should contains the protection container to map.
	RecoveryFabricName pulumi.StringInput
	// Id of the policy to use for this mapping.
	RecoveryReplicationPolicyId pulumi.StringInput
	// Name of the source protection container to map.
	RecoverySourceProtectionContainerName pulumi.StringInput
	// Id of target protection container to map to.
	RecoveryTargetProtectionContainerId pulumi.StringInput
	// The name of the vault that should be updated.
	RecoveryVaultName pulumi.StringInput
	// Name of the resource group where the vault that should be updated is located.
	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 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) ElementType

func (ProtectionContainerMappingOutput) Name added in v5.5.0

The name of the protection container mapping.

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.

func (ProtectionContainerMappingOutput) RecoveryReplicationPolicyId added in v5.5.0

func (o ProtectionContainerMappingOutput) RecoveryReplicationPolicyId() pulumi.StringOutput

Id of the policy to use for this mapping.

func (ProtectionContainerMappingOutput) RecoverySourceProtectionContainerName added in v5.5.0

func (o ProtectionContainerMappingOutput) RecoverySourceProtectionContainerName() pulumi.StringOutput

Name of the source protection container to map.

func (ProtectionContainerMappingOutput) RecoveryTargetProtectionContainerId added in v5.5.0

func (o ProtectionContainerMappingOutput) RecoveryTargetProtectionContainerId() pulumi.StringOutput

Id of target protection container to map to.

func (ProtectionContainerMappingOutput) RecoveryVaultName added in v5.5.0

The name of the vault that should be updated.

func (ProtectionContainerMappingOutput) ResourceGroupName added in v5.5.0

Name of the resource group where the vault that should be updated is located.

func (ProtectionContainerMappingOutput) ToProtectionContainerMappingOutput

func (o ProtectionContainerMappingOutput) ToProtectionContainerMappingOutput() ProtectionContainerMappingOutput

func (ProtectionContainerMappingOutput) ToProtectionContainerMappingOutputWithContext

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

type ProtectionContainerMappingState

type ProtectionContainerMappingState struct {
	// The name of the protection container mapping.
	Name pulumi.StringPtrInput
	// Name of fabric that should contains the protection container to map.
	RecoveryFabricName pulumi.StringPtrInput
	// Id of the policy to use for this mapping.
	RecoveryReplicationPolicyId pulumi.StringPtrInput
	// Name of the source protection container to map.
	RecoverySourceProtectionContainerName pulumi.StringPtrInput
	// Id of target protection container to map to.
	RecoveryTargetProtectionContainerId pulumi.StringPtrInput
	// The name of the vault that should be updated.
	RecoveryVaultName pulumi.StringPtrInput
	// Name of the resource group where the vault that should be updated is located.
	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.

func (ProtectionContainerOutput) RecoveryFabricName added in v5.5.0

func (o ProtectionContainerOutput) RecoveryFabricName() pulumi.StringOutput

Name of fabric that should contain this protection container.

func (ProtectionContainerOutput) RecoveryVaultName added in v5.5.0

func (o ProtectionContainerOutput) RecoveryVaultName() pulumi.StringOutput

The name of the vault that should be updated.

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.

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.
	Name pulumi.StringPtrInput
	// Name of fabric that should contain this protection container.
	RecoveryFabricName pulumi.StringPtrInput
	// The name of the vault that should be updated.
	RecoveryVaultName pulumi.StringPtrInput
	// Name of the resource group where the vault that should be updated is located.
	ResourceGroupName pulumi.StringPtrInput
}

func (ProtectionContainerState) ElementType

func (ProtectionContainerState) ElementType() reflect.Type

type ReplicatedVM

type ReplicatedVM struct {
	pulumi.CustomResourceState

	// One or more `managedDisk` block.
	ManagedDisks ReplicatedVMManagedDiskArrayOutput `pulumi:"managedDisks"`
	// The name of the replication for the replicated VM.
	Name pulumi.StringOutput `pulumi:"name"`
	// One or more `networkInterface` block.
	NetworkInterfaces           ReplicatedVMNetworkInterfaceArrayOutput `pulumi:"networkInterfaces"`
	RecoveryReplicationPolicyId pulumi.StringOutput                     `pulumi:"recoveryReplicationPolicyId"`
	// The name of the vault that should be updated.
	RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"`
	// Name of the resource group where the vault that should be updated is located.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// Name of fabric that should contains this replication.
	SourceRecoveryFabricName pulumi.StringOutput `pulumi:"sourceRecoveryFabricName"`
	// Name of the protection container to use.
	SourceRecoveryProtectionContainerName pulumi.StringOutput `pulumi:"sourceRecoveryProtectionContainerName"`
	// Id of the VM to replicate
	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"`
	// 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 fabric where the VM replication should be handled when a failover is done.
	TargetRecoveryFabricId pulumi.StringOutput `pulumi:"targetRecoveryFabricId"`
	// Id of protection container where the VM replication should be created when a failover is done.
	TargetRecoveryProtectionContainerId pulumi.StringOutput `pulumi:"targetRecoveryProtectionContainerId"`
	// Id of resource group where the VM should be created when a failover is done.
	TargetResourceGroupId pulumi.StringOutput `pulumi:"targetResourceGroupId"`
	// Specifies the Availability Zone where the Failover VM should exist.
	TargetZone pulumi.StringPtrOutput `pulumi:"targetZone"`
}

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.StringOutput),
					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.
	ManagedDisks ReplicatedVMManagedDiskArrayInput
	// The name of the replication for the replicated VM.
	Name pulumi.StringPtrInput
	// One or more `networkInterface` block.
	NetworkInterfaces           ReplicatedVMNetworkInterfaceArrayInput
	RecoveryReplicationPolicyId pulumi.StringInput
	// The name of the vault that should be updated.
	RecoveryVaultName pulumi.StringInput
	// Name of the resource group where the vault that should be updated is located.
	ResourceGroupName pulumi.StringInput
	// Name of fabric that should contains this replication.
	SourceRecoveryFabricName pulumi.StringInput
	// Name of the protection container to use.
	SourceRecoveryProtectionContainerName pulumi.StringInput
	// Id of the VM to replicate
	SourceVmId pulumi.StringInput
	// Id of availability set that the new VM should belong to when a failover is done.
	TargetAvailabilitySetId 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 fabric where the VM replication should be handled when a failover is done.
	TargetRecoveryFabricId pulumi.StringInput
	// Id of protection container where the VM replication should be created when a failover is done.
	TargetRecoveryProtectionContainerId pulumi.StringInput
	// Id of resource group where the VM should be created when a failover is done.
	TargetResourceGroupId pulumi.StringInput
	// Specifies the Availability Zone where the Failover VM should exist.
	TargetZone pulumi.StringPtrInput
}

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.
	DiskId string `pulumi:"diskId"`
	// Storage account that should be used for caching.
	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.
	TargetDiskEncryptionSetId *string `pulumi:"targetDiskEncryptionSetId"`
	// What type should the disk be when a failover is done.
	TargetDiskType string `pulumi:"targetDiskType"`
	// What type should the disk be that holds the replication data.
	TargetReplicaDiskType string `pulumi:"targetReplicaDiskType"`
	// Resource group disk should belong to when a failover is done.
	TargetResourceGroupId string `pulumi:"targetResourceGroupId"`
}

type ReplicatedVMManagedDiskArgs

type ReplicatedVMManagedDiskArgs struct {
	// Id of disk that should be replicated.
	DiskId pulumi.StringInput `pulumi:"diskId"`
	// Storage account that should be used for caching.
	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.
	TargetDiskEncryptionSetId pulumi.StringPtrInput `pulumi:"targetDiskEncryptionSetId"`
	// What type should the disk be when a failover is done.
	TargetDiskType pulumi.StringInput `pulumi:"targetDiskType"`
	// What type should the disk be that holds the replication data.
	TargetReplicaDiskType pulumi.StringInput `pulumi:"targetReplicaDiskType"`
	// Resource group disk should belong to when a failover is done.
	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.

func (ReplicatedVMManagedDiskOutput) ElementType

func (ReplicatedVMManagedDiskOutput) StagingStorageAccountId

func (o ReplicatedVMManagedDiskOutput) StagingStorageAccountId() pulumi.StringOutput

Storage account that should be used for caching.

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.

func (ReplicatedVMManagedDiskOutput) TargetDiskType

What type should the disk be when a failover is done.

func (ReplicatedVMManagedDiskOutput) TargetReplicaDiskType

func (o ReplicatedVMManagedDiskOutput) TargetReplicaDiskType() pulumi.StringOutput

What type should the disk be that holds the replication data.

func (ReplicatedVMManagedDiskOutput) TargetResourceGroupId

func (o ReplicatedVMManagedDiskOutput) TargetResourceGroupId() pulumi.StringOutput

Resource group disk should belong to when a failover is done.

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 failover is done.
	RecoveryPublicIpAddressId *string `pulumi:"recoveryPublicIpAddressId"`
	// 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 failover is done.
	RecoveryPublicIpAddressId pulumi.StringPtrInput `pulumi:"recoveryPublicIpAddressId"`
	// 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) 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

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.

func (ReplicatedVMOutput) Name added in v5.5.0

The name of the replication for the replicated VM.

func (ReplicatedVMOutput) NetworkInterfaces added in v5.5.0

One or more `networkInterface` block.

func (ReplicatedVMOutput) RecoveryReplicationPolicyId added in v5.5.0

func (o ReplicatedVMOutput) RecoveryReplicationPolicyId() pulumi.StringOutput

func (ReplicatedVMOutput) RecoveryVaultName added in v5.5.0

func (o ReplicatedVMOutput) RecoveryVaultName() pulumi.StringOutput

The name of the vault that should be updated.

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.

func (ReplicatedVMOutput) SourceRecoveryFabricName added in v5.5.0

func (o ReplicatedVMOutput) SourceRecoveryFabricName() pulumi.StringOutput

Name of fabric that should contains this replication.

func (ReplicatedVMOutput) SourceRecoveryProtectionContainerName added in v5.5.0

func (o ReplicatedVMOutput) SourceRecoveryProtectionContainerName() pulumi.StringOutput

Name of the protection container to use.

func (ReplicatedVMOutput) SourceVmId added in v5.5.0

func (o ReplicatedVMOutput) SourceVmId() pulumi.StringOutput

Id of the VM to replicate

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) 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) 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.

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.

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.

func (ReplicatedVMOutput) TargetZone added in v5.5.0

func (o ReplicatedVMOutput) TargetZone() pulumi.StringPtrOutput

Specifies the Availability Zone where the Failover VM should exist.

func (ReplicatedVMOutput) ToReplicatedVMOutput

func (o ReplicatedVMOutput) ToReplicatedVMOutput() ReplicatedVMOutput

func (ReplicatedVMOutput) ToReplicatedVMOutputWithContext

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

type ReplicatedVMState

type ReplicatedVMState struct {
	// One or more `managedDisk` block.
	ManagedDisks ReplicatedVMManagedDiskArrayInput
	// The name of the replication for the replicated VM.
	Name pulumi.StringPtrInput
	// One or more `networkInterface` block.
	NetworkInterfaces           ReplicatedVMNetworkInterfaceArrayInput
	RecoveryReplicationPolicyId pulumi.StringPtrInput
	// The name of the vault that should be updated.
	RecoveryVaultName pulumi.StringPtrInput
	// Name of the resource group where the vault that should be updated is located.
	ResourceGroupName pulumi.StringPtrInput
	// Name of fabric that should contains this replication.
	SourceRecoveryFabricName pulumi.StringPtrInput
	// Name of the protection container to use.
	SourceRecoveryProtectionContainerName pulumi.StringPtrInput
	// Id of the VM to replicate
	SourceVmId pulumi.StringPtrInput
	// Id of availability set that the new VM should belong to when a failover is done.
	TargetAvailabilitySetId 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 fabric where the VM replication should be handled when a failover is done.
	TargetRecoveryFabricId pulumi.StringPtrInput
	// Id of protection container where the VM replication should be created when a failover is done.
	TargetRecoveryProtectionContainerId pulumi.StringPtrInput
	// Id of resource group where the VM should be created when a failover is done.
	TargetResourceGroupId pulumi.StringPtrInput
	// Specifies the Availability Zone where the Failover VM should exist.
	TargetZone pulumi.StringPtrInput
}

func (ReplicatedVMState) ElementType

func (ReplicatedVMState) ElementType() reflect.Type

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.
	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.
	RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"`
	// Name of the resource group where the vault that should be updated is located.
	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.
	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.
	RecoveryVaultName pulumi.StringInput
	// Name of the resource group where the vault that should be updated is located.
	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.

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.

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.

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.
	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.
	RecoveryVaultName pulumi.StringPtrInput
	// Name of the resource group where the vault that should be updated is located.
	ResourceGroupName pulumi.StringPtrInput
}

func (ReplicationPolicyState) ElementType

func (ReplicationPolicyState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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