backup

package
v5.43.0 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Framework added in v5.1.0

type Framework struct {
	pulumi.CustomResourceState

	// The ARN of the backup framework.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
	Controls FrameworkControlArrayOutput `pulumi:"controls"`
	// The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
	CreationTime pulumi.StringOutput `pulumi:"creationTime"`
	// The deployment status of a framework. The statuses are: `CREATE_IN_PROGRESS` | `UPDATE_IN_PROGRESS` | `DELETE_IN_PROGRESS` | `COMPLETED` | `FAILED`.
	DeploymentStatus pulumi.StringOutput `pulumi:"deploymentStatus"`
	// The description of the framework with a maximum of 1,024 characters
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
	Name pulumi.StringOutput `pulumi:"name"`
	// A framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. For more information refer to the [AWS documentation for Framework Status](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_DescribeFramework.html#Backup-DescribeFramework-response-FrameworkStatus)
	Status pulumi.StringOutput `pulumi:"status"`
	// Metadata that you can assign to help organize the frameworks you create. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides an AWS Backup Framework resource.

> **Note:** For the Deployment Status of the Framework to be successful, please turn on resource tracking to enable AWS Config recording to track configuration changes of your backup resources. This can be done from the AWS Console.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := backup.NewFramework(ctx, "example", &backup.FrameworkArgs{
			Controls: backup.FrameworkControlArray{
				&backup.FrameworkControlArgs{
					InputParameters: backup.FrameworkControlInputParameterArray{
						&backup.FrameworkControlInputParameterArgs{
							Name:  pulumi.String("requiredRetentionDays"),
							Value: pulumi.String("35"),
						},
					},
					Name: pulumi.String("BACKUP_RECOVERY_POINT_MINIMUM_RETENTION_CHECK"),
				},
				&backup.FrameworkControlArgs{
					InputParameters: backup.FrameworkControlInputParameterArray{
						&backup.FrameworkControlInputParameterArgs{
							Name:  pulumi.String("requiredFrequencyUnit"),
							Value: pulumi.String("hours"),
						},
						&backup.FrameworkControlInputParameterArgs{
							Name:  pulumi.String("requiredRetentionDays"),
							Value: pulumi.String("35"),
						},
						&backup.FrameworkControlInputParameterArgs{
							Name:  pulumi.String("requiredFrequencyValue"),
							Value: pulumi.String("1"),
						},
					},
					Name: pulumi.String("BACKUP_PLAN_MIN_FREQUENCY_AND_MIN_RETENTION_CHECK"),
				},
				&backup.FrameworkControlArgs{
					Name: pulumi.String("BACKUP_RECOVERY_POINT_ENCRYPTED"),
				},
				&backup.FrameworkControlArgs{
					Name: pulumi.String("BACKUP_RESOURCES_PROTECTED_BY_BACKUP_PLAN"),
					Scope: &backup.FrameworkControlScopeArgs{
						ComplianceResourceTypes: pulumi.StringArray{
							pulumi.String("EBS"),
						},
					},
				},
				&backup.FrameworkControlArgs{
					Name: pulumi.String("BACKUP_RECOVERY_POINT_MANUAL_DELETION_DISABLED"),
				},
				&backup.FrameworkControlArgs{
					InputParameters: backup.FrameworkControlInputParameterArray{
						&backup.FrameworkControlInputParameterArgs{
							Name:  pulumi.String("maxRetentionDays"),
							Value: pulumi.String("100"),
						},
						&backup.FrameworkControlInputParameterArgs{
							Name:  pulumi.String("minRetentionDays"),
							Value: pulumi.String("1"),
						},
					},
					Name: pulumi.String("BACKUP_RESOURCES_PROTECTED_BY_BACKUP_VAULT_LOCK"),
					Scope: &backup.FrameworkControlScopeArgs{
						ComplianceResourceTypes: pulumi.StringArray{
							pulumi.String("EBS"),
						},
					},
				},
				&backup.FrameworkControlArgs{
					InputParameters: backup.FrameworkControlInputParameterArray{
						&backup.FrameworkControlInputParameterArgs{
							Name:  pulumi.String("recoveryPointAgeUnit"),
							Value: pulumi.String("days"),
						},
						&backup.FrameworkControlInputParameterArgs{
							Name:  pulumi.String("recoveryPointAgeValue"),
							Value: pulumi.String("1"),
						},
					},
					Name: pulumi.String("BACKUP_LAST_RECOVERY_POINT_CREATED"),
					Scope: &backup.FrameworkControlScopeArgs{
						ComplianceResourceTypes: pulumi.StringArray{
							pulumi.String("EBS"),
						},
					},
				},
			},
			Description: pulumi.String("this is an example framework"),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("Example Framework"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Backup Framework can be imported using the `id` which corresponds to the name of the Backup Framework, e.g.,

```sh

$ pulumi import aws:backup/framework:Framework test <id>

```

func GetFramework added in v5.1.0

func GetFramework(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FrameworkState, opts ...pulumi.ResourceOption) (*Framework, error)

GetFramework gets an existing Framework 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 NewFramework added in v5.1.0

func NewFramework(ctx *pulumi.Context,
	name string, args *FrameworkArgs, opts ...pulumi.ResourceOption) (*Framework, error)

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

func (*Framework) ElementType added in v5.1.0

func (*Framework) ElementType() reflect.Type

func (*Framework) ToFrameworkOutput added in v5.1.0

func (i *Framework) ToFrameworkOutput() FrameworkOutput

func (*Framework) ToFrameworkOutputWithContext added in v5.1.0

func (i *Framework) ToFrameworkOutputWithContext(ctx context.Context) FrameworkOutput

type FrameworkArgs added in v5.1.0

type FrameworkArgs struct {
	// One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
	Controls FrameworkControlArrayInput
	// The description of the framework with a maximum of 1,024 characters
	Description pulumi.StringPtrInput
	// The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
	Name pulumi.StringPtrInput
	// Metadata that you can assign to help organize the frameworks you create. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a Framework resource.

func (FrameworkArgs) ElementType added in v5.1.0

func (FrameworkArgs) ElementType() reflect.Type

type FrameworkArray added in v5.1.0

type FrameworkArray []FrameworkInput

func (FrameworkArray) ElementType added in v5.1.0

func (FrameworkArray) ElementType() reflect.Type

func (FrameworkArray) ToFrameworkArrayOutput added in v5.1.0

func (i FrameworkArray) ToFrameworkArrayOutput() FrameworkArrayOutput

func (FrameworkArray) ToFrameworkArrayOutputWithContext added in v5.1.0

func (i FrameworkArray) ToFrameworkArrayOutputWithContext(ctx context.Context) FrameworkArrayOutput

type FrameworkArrayInput added in v5.1.0

type FrameworkArrayInput interface {
	pulumi.Input

	ToFrameworkArrayOutput() FrameworkArrayOutput
	ToFrameworkArrayOutputWithContext(context.Context) FrameworkArrayOutput
}

FrameworkArrayInput is an input type that accepts FrameworkArray and FrameworkArrayOutput values. You can construct a concrete instance of `FrameworkArrayInput` via:

FrameworkArray{ FrameworkArgs{...} }

type FrameworkArrayOutput added in v5.1.0

type FrameworkArrayOutput struct{ *pulumi.OutputState }

func (FrameworkArrayOutput) ElementType added in v5.1.0

func (FrameworkArrayOutput) ElementType() reflect.Type

func (FrameworkArrayOutput) Index added in v5.1.0

func (FrameworkArrayOutput) ToFrameworkArrayOutput added in v5.1.0

func (o FrameworkArrayOutput) ToFrameworkArrayOutput() FrameworkArrayOutput

func (FrameworkArrayOutput) ToFrameworkArrayOutputWithContext added in v5.1.0

func (o FrameworkArrayOutput) ToFrameworkArrayOutputWithContext(ctx context.Context) FrameworkArrayOutput

type FrameworkControl added in v5.1.0

type FrameworkControl struct {
	// One or more input parameter blocks. An example of a control with two parameters is: "backup plan frequency is at least daily and the retention period is at least 1 year". The first parameter is daily. The second parameter is 1 year. Detailed below.
	InputParameters []FrameworkControlInputParameter `pulumi:"inputParameters"`
	// The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
	Name string `pulumi:"name"`
	// The scope of a control. The control scope defines what the control will evaluate. Three examples of control scopes are: a specific backup plan, all backup plans with a specific tag, or all backup plans. Detailed below.
	Scope *FrameworkControlScope `pulumi:"scope"`
}

type FrameworkControlArgs added in v5.1.0

type FrameworkControlArgs struct {
	// One or more input parameter blocks. An example of a control with two parameters is: "backup plan frequency is at least daily and the retention period is at least 1 year". The first parameter is daily. The second parameter is 1 year. Detailed below.
	InputParameters FrameworkControlInputParameterArrayInput `pulumi:"inputParameters"`
	// The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
	Name pulumi.StringInput `pulumi:"name"`
	// The scope of a control. The control scope defines what the control will evaluate. Three examples of control scopes are: a specific backup plan, all backup plans with a specific tag, or all backup plans. Detailed below.
	Scope FrameworkControlScopePtrInput `pulumi:"scope"`
}

func (FrameworkControlArgs) ElementType added in v5.1.0

func (FrameworkControlArgs) ElementType() reflect.Type

func (FrameworkControlArgs) ToFrameworkControlOutput added in v5.1.0

func (i FrameworkControlArgs) ToFrameworkControlOutput() FrameworkControlOutput

func (FrameworkControlArgs) ToFrameworkControlOutputWithContext added in v5.1.0

func (i FrameworkControlArgs) ToFrameworkControlOutputWithContext(ctx context.Context) FrameworkControlOutput

type FrameworkControlArray added in v5.1.0

type FrameworkControlArray []FrameworkControlInput

func (FrameworkControlArray) ElementType added in v5.1.0

func (FrameworkControlArray) ElementType() reflect.Type

func (FrameworkControlArray) ToFrameworkControlArrayOutput added in v5.1.0

func (i FrameworkControlArray) ToFrameworkControlArrayOutput() FrameworkControlArrayOutput

func (FrameworkControlArray) ToFrameworkControlArrayOutputWithContext added in v5.1.0

func (i FrameworkControlArray) ToFrameworkControlArrayOutputWithContext(ctx context.Context) FrameworkControlArrayOutput

type FrameworkControlArrayInput added in v5.1.0

type FrameworkControlArrayInput interface {
	pulumi.Input

	ToFrameworkControlArrayOutput() FrameworkControlArrayOutput
	ToFrameworkControlArrayOutputWithContext(context.Context) FrameworkControlArrayOutput
}

FrameworkControlArrayInput is an input type that accepts FrameworkControlArray and FrameworkControlArrayOutput values. You can construct a concrete instance of `FrameworkControlArrayInput` via:

FrameworkControlArray{ FrameworkControlArgs{...} }

type FrameworkControlArrayOutput added in v5.1.0

type FrameworkControlArrayOutput struct{ *pulumi.OutputState }

func (FrameworkControlArrayOutput) ElementType added in v5.1.0

func (FrameworkControlArrayOutput) Index added in v5.1.0

func (FrameworkControlArrayOutput) ToFrameworkControlArrayOutput added in v5.1.0

func (o FrameworkControlArrayOutput) ToFrameworkControlArrayOutput() FrameworkControlArrayOutput

func (FrameworkControlArrayOutput) ToFrameworkControlArrayOutputWithContext added in v5.1.0

func (o FrameworkControlArrayOutput) ToFrameworkControlArrayOutputWithContext(ctx context.Context) FrameworkControlArrayOutput

type FrameworkControlInput added in v5.1.0

type FrameworkControlInput interface {
	pulumi.Input

	ToFrameworkControlOutput() FrameworkControlOutput
	ToFrameworkControlOutputWithContext(context.Context) FrameworkControlOutput
}

FrameworkControlInput is an input type that accepts FrameworkControlArgs and FrameworkControlOutput values. You can construct a concrete instance of `FrameworkControlInput` via:

FrameworkControlArgs{...}

type FrameworkControlInputParameter added in v5.1.0

type FrameworkControlInputParameter struct {
	// The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
	Name *string `pulumi:"name"`
	// The value of parameter, for example, hourly.
	Value *string `pulumi:"value"`
}

type FrameworkControlInputParameterArgs added in v5.1.0

type FrameworkControlInputParameterArgs struct {
	// The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The value of parameter, for example, hourly.
	Value pulumi.StringPtrInput `pulumi:"value"`
}

func (FrameworkControlInputParameterArgs) ElementType added in v5.1.0

func (FrameworkControlInputParameterArgs) ToFrameworkControlInputParameterOutput added in v5.1.0

func (i FrameworkControlInputParameterArgs) ToFrameworkControlInputParameterOutput() FrameworkControlInputParameterOutput

func (FrameworkControlInputParameterArgs) ToFrameworkControlInputParameterOutputWithContext added in v5.1.0

func (i FrameworkControlInputParameterArgs) ToFrameworkControlInputParameterOutputWithContext(ctx context.Context) FrameworkControlInputParameterOutput

type FrameworkControlInputParameterArray added in v5.1.0

type FrameworkControlInputParameterArray []FrameworkControlInputParameterInput

func (FrameworkControlInputParameterArray) ElementType added in v5.1.0

func (FrameworkControlInputParameterArray) ToFrameworkControlInputParameterArrayOutput added in v5.1.0

func (i FrameworkControlInputParameterArray) ToFrameworkControlInputParameterArrayOutput() FrameworkControlInputParameterArrayOutput

func (FrameworkControlInputParameterArray) ToFrameworkControlInputParameterArrayOutputWithContext added in v5.1.0

func (i FrameworkControlInputParameterArray) ToFrameworkControlInputParameterArrayOutputWithContext(ctx context.Context) FrameworkControlInputParameterArrayOutput

type FrameworkControlInputParameterArrayInput added in v5.1.0

type FrameworkControlInputParameterArrayInput interface {
	pulumi.Input

	ToFrameworkControlInputParameterArrayOutput() FrameworkControlInputParameterArrayOutput
	ToFrameworkControlInputParameterArrayOutputWithContext(context.Context) FrameworkControlInputParameterArrayOutput
}

FrameworkControlInputParameterArrayInput is an input type that accepts FrameworkControlInputParameterArray and FrameworkControlInputParameterArrayOutput values. You can construct a concrete instance of `FrameworkControlInputParameterArrayInput` via:

FrameworkControlInputParameterArray{ FrameworkControlInputParameterArgs{...} }

type FrameworkControlInputParameterArrayOutput added in v5.1.0

type FrameworkControlInputParameterArrayOutput struct{ *pulumi.OutputState }

func (FrameworkControlInputParameterArrayOutput) ElementType added in v5.1.0

func (FrameworkControlInputParameterArrayOutput) Index added in v5.1.0

func (FrameworkControlInputParameterArrayOutput) ToFrameworkControlInputParameterArrayOutput added in v5.1.0

func (o FrameworkControlInputParameterArrayOutput) ToFrameworkControlInputParameterArrayOutput() FrameworkControlInputParameterArrayOutput

func (FrameworkControlInputParameterArrayOutput) ToFrameworkControlInputParameterArrayOutputWithContext added in v5.1.0

func (o FrameworkControlInputParameterArrayOutput) ToFrameworkControlInputParameterArrayOutputWithContext(ctx context.Context) FrameworkControlInputParameterArrayOutput

type FrameworkControlInputParameterInput added in v5.1.0

type FrameworkControlInputParameterInput interface {
	pulumi.Input

	ToFrameworkControlInputParameterOutput() FrameworkControlInputParameterOutput
	ToFrameworkControlInputParameterOutputWithContext(context.Context) FrameworkControlInputParameterOutput
}

FrameworkControlInputParameterInput is an input type that accepts FrameworkControlInputParameterArgs and FrameworkControlInputParameterOutput values. You can construct a concrete instance of `FrameworkControlInputParameterInput` via:

FrameworkControlInputParameterArgs{...}

type FrameworkControlInputParameterOutput added in v5.1.0

type FrameworkControlInputParameterOutput struct{ *pulumi.OutputState }

func (FrameworkControlInputParameterOutput) ElementType added in v5.1.0

func (FrameworkControlInputParameterOutput) Name added in v5.1.0

The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.

func (FrameworkControlInputParameterOutput) ToFrameworkControlInputParameterOutput added in v5.1.0

func (o FrameworkControlInputParameterOutput) ToFrameworkControlInputParameterOutput() FrameworkControlInputParameterOutput

func (FrameworkControlInputParameterOutput) ToFrameworkControlInputParameterOutputWithContext added in v5.1.0

func (o FrameworkControlInputParameterOutput) ToFrameworkControlInputParameterOutputWithContext(ctx context.Context) FrameworkControlInputParameterOutput

func (FrameworkControlInputParameterOutput) Value added in v5.1.0

The value of parameter, for example, hourly.

type FrameworkControlOutput added in v5.1.0

type FrameworkControlOutput struct{ *pulumi.OutputState }

func (FrameworkControlOutput) ElementType added in v5.1.0

func (FrameworkControlOutput) ElementType() reflect.Type

func (FrameworkControlOutput) InputParameters added in v5.1.0

One or more input parameter blocks. An example of a control with two parameters is: "backup plan frequency is at least daily and the retention period is at least 1 year". The first parameter is daily. The second parameter is 1 year. Detailed below.

func (FrameworkControlOutput) Name added in v5.1.0

The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.

func (FrameworkControlOutput) Scope added in v5.1.0

The scope of a control. The control scope defines what the control will evaluate. Three examples of control scopes are: a specific backup plan, all backup plans with a specific tag, or all backup plans. Detailed below.

func (FrameworkControlOutput) ToFrameworkControlOutput added in v5.1.0

func (o FrameworkControlOutput) ToFrameworkControlOutput() FrameworkControlOutput

func (FrameworkControlOutput) ToFrameworkControlOutputWithContext added in v5.1.0

func (o FrameworkControlOutput) ToFrameworkControlOutputWithContext(ctx context.Context) FrameworkControlOutput

type FrameworkControlScope added in v5.1.0

type FrameworkControlScope struct {
	// The ID of the only AWS resource that you want your control scope to contain. Minimum number of 1 item. Maximum number of 100 items.
	ComplianceResourceIds []string `pulumi:"complianceResourceIds"`
	// Describes whether the control scope includes one or more types of resources, such as EFS or RDS.
	ComplianceResourceTypes []string `pulumi:"complianceResourceTypes"`
	// Metadata that you can assign to help organize the frameworks you create. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags map[string]string `pulumi:"tags"`
}

type FrameworkControlScopeArgs added in v5.1.0

type FrameworkControlScopeArgs struct {
	// The ID of the only AWS resource that you want your control scope to contain. Minimum number of 1 item. Maximum number of 100 items.
	ComplianceResourceIds pulumi.StringArrayInput `pulumi:"complianceResourceIds"`
	// Describes whether the control scope includes one or more types of resources, such as EFS or RDS.
	ComplianceResourceTypes pulumi.StringArrayInput `pulumi:"complianceResourceTypes"`
	// Metadata that you can assign to help organize the frameworks you create. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

func (FrameworkControlScopeArgs) ElementType added in v5.1.0

func (FrameworkControlScopeArgs) ElementType() reflect.Type

func (FrameworkControlScopeArgs) ToFrameworkControlScopeOutput added in v5.1.0

func (i FrameworkControlScopeArgs) ToFrameworkControlScopeOutput() FrameworkControlScopeOutput

func (FrameworkControlScopeArgs) ToFrameworkControlScopeOutputWithContext added in v5.1.0

func (i FrameworkControlScopeArgs) ToFrameworkControlScopeOutputWithContext(ctx context.Context) FrameworkControlScopeOutput

func (FrameworkControlScopeArgs) ToFrameworkControlScopePtrOutput added in v5.1.0

func (i FrameworkControlScopeArgs) ToFrameworkControlScopePtrOutput() FrameworkControlScopePtrOutput

func (FrameworkControlScopeArgs) ToFrameworkControlScopePtrOutputWithContext added in v5.1.0

func (i FrameworkControlScopeArgs) ToFrameworkControlScopePtrOutputWithContext(ctx context.Context) FrameworkControlScopePtrOutput

type FrameworkControlScopeInput added in v5.1.0

type FrameworkControlScopeInput interface {
	pulumi.Input

	ToFrameworkControlScopeOutput() FrameworkControlScopeOutput
	ToFrameworkControlScopeOutputWithContext(context.Context) FrameworkControlScopeOutput
}

FrameworkControlScopeInput is an input type that accepts FrameworkControlScopeArgs and FrameworkControlScopeOutput values. You can construct a concrete instance of `FrameworkControlScopeInput` via:

FrameworkControlScopeArgs{...}

type FrameworkControlScopeOutput added in v5.1.0

type FrameworkControlScopeOutput struct{ *pulumi.OutputState }

func (FrameworkControlScopeOutput) ComplianceResourceIds added in v5.1.0

func (o FrameworkControlScopeOutput) ComplianceResourceIds() pulumi.StringArrayOutput

The ID of the only AWS resource that you want your control scope to contain. Minimum number of 1 item. Maximum number of 100 items.

func (FrameworkControlScopeOutput) ComplianceResourceTypes added in v5.1.0

func (o FrameworkControlScopeOutput) ComplianceResourceTypes() pulumi.StringArrayOutput

Describes whether the control scope includes one or more types of resources, such as EFS or RDS.

func (FrameworkControlScopeOutput) ElementType added in v5.1.0

func (FrameworkControlScopeOutput) Tags added in v5.1.0

Metadata that you can assign to help organize the frameworks you create. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (FrameworkControlScopeOutput) ToFrameworkControlScopeOutput added in v5.1.0

func (o FrameworkControlScopeOutput) ToFrameworkControlScopeOutput() FrameworkControlScopeOutput

func (FrameworkControlScopeOutput) ToFrameworkControlScopeOutputWithContext added in v5.1.0

func (o FrameworkControlScopeOutput) ToFrameworkControlScopeOutputWithContext(ctx context.Context) FrameworkControlScopeOutput

func (FrameworkControlScopeOutput) ToFrameworkControlScopePtrOutput added in v5.1.0

func (o FrameworkControlScopeOutput) ToFrameworkControlScopePtrOutput() FrameworkControlScopePtrOutput

func (FrameworkControlScopeOutput) ToFrameworkControlScopePtrOutputWithContext added in v5.1.0

func (o FrameworkControlScopeOutput) ToFrameworkControlScopePtrOutputWithContext(ctx context.Context) FrameworkControlScopePtrOutput

type FrameworkControlScopePtrInput added in v5.1.0

type FrameworkControlScopePtrInput interface {
	pulumi.Input

	ToFrameworkControlScopePtrOutput() FrameworkControlScopePtrOutput
	ToFrameworkControlScopePtrOutputWithContext(context.Context) FrameworkControlScopePtrOutput
}

FrameworkControlScopePtrInput is an input type that accepts FrameworkControlScopeArgs, FrameworkControlScopePtr and FrameworkControlScopePtrOutput values. You can construct a concrete instance of `FrameworkControlScopePtrInput` via:

        FrameworkControlScopeArgs{...}

or:

        nil

func FrameworkControlScopePtr added in v5.1.0

func FrameworkControlScopePtr(v *FrameworkControlScopeArgs) FrameworkControlScopePtrInput

type FrameworkControlScopePtrOutput added in v5.1.0

type FrameworkControlScopePtrOutput struct{ *pulumi.OutputState }

func (FrameworkControlScopePtrOutput) ComplianceResourceIds added in v5.1.0

func (o FrameworkControlScopePtrOutput) ComplianceResourceIds() pulumi.StringArrayOutput

The ID of the only AWS resource that you want your control scope to contain. Minimum number of 1 item. Maximum number of 100 items.

func (FrameworkControlScopePtrOutput) ComplianceResourceTypes added in v5.1.0

func (o FrameworkControlScopePtrOutput) ComplianceResourceTypes() pulumi.StringArrayOutput

Describes whether the control scope includes one or more types of resources, such as EFS or RDS.

func (FrameworkControlScopePtrOutput) Elem added in v5.1.0

func (FrameworkControlScopePtrOutput) ElementType added in v5.1.0

func (FrameworkControlScopePtrOutput) Tags added in v5.1.0

Metadata that you can assign to help organize the frameworks you create. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (FrameworkControlScopePtrOutput) ToFrameworkControlScopePtrOutput added in v5.1.0

func (o FrameworkControlScopePtrOutput) ToFrameworkControlScopePtrOutput() FrameworkControlScopePtrOutput

func (FrameworkControlScopePtrOutput) ToFrameworkControlScopePtrOutputWithContext added in v5.1.0

func (o FrameworkControlScopePtrOutput) ToFrameworkControlScopePtrOutputWithContext(ctx context.Context) FrameworkControlScopePtrOutput

type FrameworkInput added in v5.1.0

type FrameworkInput interface {
	pulumi.Input

	ToFrameworkOutput() FrameworkOutput
	ToFrameworkOutputWithContext(ctx context.Context) FrameworkOutput
}

type FrameworkMap added in v5.1.0

type FrameworkMap map[string]FrameworkInput

func (FrameworkMap) ElementType added in v5.1.0

func (FrameworkMap) ElementType() reflect.Type

func (FrameworkMap) ToFrameworkMapOutput added in v5.1.0

func (i FrameworkMap) ToFrameworkMapOutput() FrameworkMapOutput

func (FrameworkMap) ToFrameworkMapOutputWithContext added in v5.1.0

func (i FrameworkMap) ToFrameworkMapOutputWithContext(ctx context.Context) FrameworkMapOutput

type FrameworkMapInput added in v5.1.0

type FrameworkMapInput interface {
	pulumi.Input

	ToFrameworkMapOutput() FrameworkMapOutput
	ToFrameworkMapOutputWithContext(context.Context) FrameworkMapOutput
}

FrameworkMapInput is an input type that accepts FrameworkMap and FrameworkMapOutput values. You can construct a concrete instance of `FrameworkMapInput` via:

FrameworkMap{ "key": FrameworkArgs{...} }

type FrameworkMapOutput added in v5.1.0

type FrameworkMapOutput struct{ *pulumi.OutputState }

func (FrameworkMapOutput) ElementType added in v5.1.0

func (FrameworkMapOutput) ElementType() reflect.Type

func (FrameworkMapOutput) MapIndex added in v5.1.0

func (FrameworkMapOutput) ToFrameworkMapOutput added in v5.1.0

func (o FrameworkMapOutput) ToFrameworkMapOutput() FrameworkMapOutput

func (FrameworkMapOutput) ToFrameworkMapOutputWithContext added in v5.1.0

func (o FrameworkMapOutput) ToFrameworkMapOutputWithContext(ctx context.Context) FrameworkMapOutput

type FrameworkOutput added in v5.1.0

type FrameworkOutput struct{ *pulumi.OutputState }

func (FrameworkOutput) Arn added in v5.4.0

The ARN of the backup framework.

func (FrameworkOutput) Controls added in v5.4.0

One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.

func (FrameworkOutput) CreationTime added in v5.4.0

func (o FrameworkOutput) CreationTime() pulumi.StringOutput

The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).

func (FrameworkOutput) DeploymentStatus added in v5.4.0

func (o FrameworkOutput) DeploymentStatus() pulumi.StringOutput

The deployment status of a framework. The statuses are: `CREATE_IN_PROGRESS` | `UPDATE_IN_PROGRESS` | `DELETE_IN_PROGRESS` | `COMPLETED` | `FAILED`.

func (FrameworkOutput) Description added in v5.4.0

func (o FrameworkOutput) Description() pulumi.StringPtrOutput

The description of the framework with a maximum of 1,024 characters

func (FrameworkOutput) ElementType added in v5.1.0

func (FrameworkOutput) ElementType() reflect.Type

func (FrameworkOutput) Name added in v5.4.0

The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.

func (FrameworkOutput) Status added in v5.4.0

func (o FrameworkOutput) Status() pulumi.StringOutput

A framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. For more information refer to the [AWS documentation for Framework Status](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_DescribeFramework.html#Backup-DescribeFramework-response-FrameworkStatus)

func (FrameworkOutput) Tags added in v5.4.0

Metadata that you can assign to help organize the frameworks you create. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (FrameworkOutput) TagsAll added in v5.4.0

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (FrameworkOutput) ToFrameworkOutput added in v5.1.0

func (o FrameworkOutput) ToFrameworkOutput() FrameworkOutput

func (FrameworkOutput) ToFrameworkOutputWithContext added in v5.1.0

func (o FrameworkOutput) ToFrameworkOutputWithContext(ctx context.Context) FrameworkOutput

type FrameworkState added in v5.1.0

type FrameworkState struct {
	// The ARN of the backup framework.
	Arn pulumi.StringPtrInput
	// One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
	Controls FrameworkControlArrayInput
	// The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
	CreationTime pulumi.StringPtrInput
	// The deployment status of a framework. The statuses are: `CREATE_IN_PROGRESS` | `UPDATE_IN_PROGRESS` | `DELETE_IN_PROGRESS` | `COMPLETED` | `FAILED`.
	DeploymentStatus pulumi.StringPtrInput
	// The description of the framework with a maximum of 1,024 characters
	Description pulumi.StringPtrInput
	// The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
	Name pulumi.StringPtrInput
	// A framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. For more information refer to the [AWS documentation for Framework Status](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_DescribeFramework.html#Backup-DescribeFramework-response-FrameworkStatus)
	Status pulumi.StringPtrInput
	// Metadata that you can assign to help organize the frameworks you create. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
}

func (FrameworkState) ElementType added in v5.1.0

func (FrameworkState) ElementType() reflect.Type

type GetFrameworkControl added in v5.1.0

type GetFrameworkControl struct {
	// One or more input parameter blocks. An example of a control with two parameters is: "backup plan frequency is at least daily and the retention period is at least 1 year". The first parameter is daily. The second parameter is 1 year. Detailed below.
	InputParameters []GetFrameworkControlInputParameter `pulumi:"inputParameters"`
	// Backup framework name.
	Name string `pulumi:"name"`
	// Scope of a control. The control scope defines what the control will evaluate. Three examples of control scopes are: a specific backup plan, all backup plans with a specific tag, or all backup plans. Detailed below.
	Scopes []GetFrameworkControlScope `pulumi:"scopes"`
}

type GetFrameworkControlArgs added in v5.1.0

type GetFrameworkControlArgs struct {
	// One or more input parameter blocks. An example of a control with two parameters is: "backup plan frequency is at least daily and the retention period is at least 1 year". The first parameter is daily. The second parameter is 1 year. Detailed below.
	InputParameters GetFrameworkControlInputParameterArrayInput `pulumi:"inputParameters"`
	// Backup framework name.
	Name pulumi.StringInput `pulumi:"name"`
	// Scope of a control. The control scope defines what the control will evaluate. Three examples of control scopes are: a specific backup plan, all backup plans with a specific tag, or all backup plans. Detailed below.
	Scopes GetFrameworkControlScopeArrayInput `pulumi:"scopes"`
}

func (GetFrameworkControlArgs) ElementType added in v5.1.0

func (GetFrameworkControlArgs) ElementType() reflect.Type

func (GetFrameworkControlArgs) ToGetFrameworkControlOutput added in v5.1.0

func (i GetFrameworkControlArgs) ToGetFrameworkControlOutput() GetFrameworkControlOutput

func (GetFrameworkControlArgs) ToGetFrameworkControlOutputWithContext added in v5.1.0

func (i GetFrameworkControlArgs) ToGetFrameworkControlOutputWithContext(ctx context.Context) GetFrameworkControlOutput

type GetFrameworkControlArray added in v5.1.0

type GetFrameworkControlArray []GetFrameworkControlInput

func (GetFrameworkControlArray) ElementType added in v5.1.0

func (GetFrameworkControlArray) ElementType() reflect.Type

func (GetFrameworkControlArray) ToGetFrameworkControlArrayOutput added in v5.1.0

func (i GetFrameworkControlArray) ToGetFrameworkControlArrayOutput() GetFrameworkControlArrayOutput

func (GetFrameworkControlArray) ToGetFrameworkControlArrayOutputWithContext added in v5.1.0

func (i GetFrameworkControlArray) ToGetFrameworkControlArrayOutputWithContext(ctx context.Context) GetFrameworkControlArrayOutput

type GetFrameworkControlArrayInput added in v5.1.0

type GetFrameworkControlArrayInput interface {
	pulumi.Input

	ToGetFrameworkControlArrayOutput() GetFrameworkControlArrayOutput
	ToGetFrameworkControlArrayOutputWithContext(context.Context) GetFrameworkControlArrayOutput
}

GetFrameworkControlArrayInput is an input type that accepts GetFrameworkControlArray and GetFrameworkControlArrayOutput values. You can construct a concrete instance of `GetFrameworkControlArrayInput` via:

GetFrameworkControlArray{ GetFrameworkControlArgs{...} }

type GetFrameworkControlArrayOutput added in v5.1.0

type GetFrameworkControlArrayOutput struct{ *pulumi.OutputState }

func (GetFrameworkControlArrayOutput) ElementType added in v5.1.0

func (GetFrameworkControlArrayOutput) Index added in v5.1.0

func (GetFrameworkControlArrayOutput) ToGetFrameworkControlArrayOutput added in v5.1.0

func (o GetFrameworkControlArrayOutput) ToGetFrameworkControlArrayOutput() GetFrameworkControlArrayOutput

func (GetFrameworkControlArrayOutput) ToGetFrameworkControlArrayOutputWithContext added in v5.1.0

func (o GetFrameworkControlArrayOutput) ToGetFrameworkControlArrayOutputWithContext(ctx context.Context) GetFrameworkControlArrayOutput

type GetFrameworkControlInput added in v5.1.0

type GetFrameworkControlInput interface {
	pulumi.Input

	ToGetFrameworkControlOutput() GetFrameworkControlOutput
	ToGetFrameworkControlOutputWithContext(context.Context) GetFrameworkControlOutput
}

GetFrameworkControlInput is an input type that accepts GetFrameworkControlArgs and GetFrameworkControlOutput values. You can construct a concrete instance of `GetFrameworkControlInput` via:

GetFrameworkControlArgs{...}

type GetFrameworkControlInputParameter added in v5.1.0

type GetFrameworkControlInputParameter struct {
	// Backup framework name.
	Name string `pulumi:"name"`
	// Value of parameter, for example, hourly.
	Value string `pulumi:"value"`
}

type GetFrameworkControlInputParameterArgs added in v5.1.0

type GetFrameworkControlInputParameterArgs struct {
	// Backup framework name.
	Name pulumi.StringInput `pulumi:"name"`
	// Value of parameter, for example, hourly.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetFrameworkControlInputParameterArgs) ElementType added in v5.1.0

func (GetFrameworkControlInputParameterArgs) ToGetFrameworkControlInputParameterOutput added in v5.1.0

func (i GetFrameworkControlInputParameterArgs) ToGetFrameworkControlInputParameterOutput() GetFrameworkControlInputParameterOutput

func (GetFrameworkControlInputParameterArgs) ToGetFrameworkControlInputParameterOutputWithContext added in v5.1.0

func (i GetFrameworkControlInputParameterArgs) ToGetFrameworkControlInputParameterOutputWithContext(ctx context.Context) GetFrameworkControlInputParameterOutput

type GetFrameworkControlInputParameterArray added in v5.1.0

type GetFrameworkControlInputParameterArray []GetFrameworkControlInputParameterInput

func (GetFrameworkControlInputParameterArray) ElementType added in v5.1.0

func (GetFrameworkControlInputParameterArray) ToGetFrameworkControlInputParameterArrayOutput added in v5.1.0

func (i GetFrameworkControlInputParameterArray) ToGetFrameworkControlInputParameterArrayOutput() GetFrameworkControlInputParameterArrayOutput

func (GetFrameworkControlInputParameterArray) ToGetFrameworkControlInputParameterArrayOutputWithContext added in v5.1.0

func (i GetFrameworkControlInputParameterArray) ToGetFrameworkControlInputParameterArrayOutputWithContext(ctx context.Context) GetFrameworkControlInputParameterArrayOutput

type GetFrameworkControlInputParameterArrayInput added in v5.1.0

type GetFrameworkControlInputParameterArrayInput interface {
	pulumi.Input

	ToGetFrameworkControlInputParameterArrayOutput() GetFrameworkControlInputParameterArrayOutput
	ToGetFrameworkControlInputParameterArrayOutputWithContext(context.Context) GetFrameworkControlInputParameterArrayOutput
}

GetFrameworkControlInputParameterArrayInput is an input type that accepts GetFrameworkControlInputParameterArray and GetFrameworkControlInputParameterArrayOutput values. You can construct a concrete instance of `GetFrameworkControlInputParameterArrayInput` via:

GetFrameworkControlInputParameterArray{ GetFrameworkControlInputParameterArgs{...} }

type GetFrameworkControlInputParameterArrayOutput added in v5.1.0

type GetFrameworkControlInputParameterArrayOutput struct{ *pulumi.OutputState }

func (GetFrameworkControlInputParameterArrayOutput) ElementType added in v5.1.0

func (GetFrameworkControlInputParameterArrayOutput) Index added in v5.1.0

func (GetFrameworkControlInputParameterArrayOutput) ToGetFrameworkControlInputParameterArrayOutput added in v5.1.0

func (o GetFrameworkControlInputParameterArrayOutput) ToGetFrameworkControlInputParameterArrayOutput() GetFrameworkControlInputParameterArrayOutput

func (GetFrameworkControlInputParameterArrayOutput) ToGetFrameworkControlInputParameterArrayOutputWithContext added in v5.1.0

func (o GetFrameworkControlInputParameterArrayOutput) ToGetFrameworkControlInputParameterArrayOutputWithContext(ctx context.Context) GetFrameworkControlInputParameterArrayOutput

type GetFrameworkControlInputParameterInput added in v5.1.0

type GetFrameworkControlInputParameterInput interface {
	pulumi.Input

	ToGetFrameworkControlInputParameterOutput() GetFrameworkControlInputParameterOutput
	ToGetFrameworkControlInputParameterOutputWithContext(context.Context) GetFrameworkControlInputParameterOutput
}

GetFrameworkControlInputParameterInput is an input type that accepts GetFrameworkControlInputParameterArgs and GetFrameworkControlInputParameterOutput values. You can construct a concrete instance of `GetFrameworkControlInputParameterInput` via:

GetFrameworkControlInputParameterArgs{...}

type GetFrameworkControlInputParameterOutput added in v5.1.0

type GetFrameworkControlInputParameterOutput struct{ *pulumi.OutputState }

func (GetFrameworkControlInputParameterOutput) ElementType added in v5.1.0

func (GetFrameworkControlInputParameterOutput) Name added in v5.1.0

Backup framework name.

func (GetFrameworkControlInputParameterOutput) ToGetFrameworkControlInputParameterOutput added in v5.1.0

func (o GetFrameworkControlInputParameterOutput) ToGetFrameworkControlInputParameterOutput() GetFrameworkControlInputParameterOutput

func (GetFrameworkControlInputParameterOutput) ToGetFrameworkControlInputParameterOutputWithContext added in v5.1.0

func (o GetFrameworkControlInputParameterOutput) ToGetFrameworkControlInputParameterOutputWithContext(ctx context.Context) GetFrameworkControlInputParameterOutput

func (GetFrameworkControlInputParameterOutput) Value added in v5.1.0

Value of parameter, for example, hourly.

type GetFrameworkControlOutput added in v5.1.0

type GetFrameworkControlOutput struct{ *pulumi.OutputState }

func (GetFrameworkControlOutput) ElementType added in v5.1.0

func (GetFrameworkControlOutput) ElementType() reflect.Type

func (GetFrameworkControlOutput) InputParameters added in v5.1.0

One or more input parameter blocks. An example of a control with two parameters is: "backup plan frequency is at least daily and the retention period is at least 1 year". The first parameter is daily. The second parameter is 1 year. Detailed below.

func (GetFrameworkControlOutput) Name added in v5.1.0

Backup framework name.

func (GetFrameworkControlOutput) Scopes added in v5.1.0

Scope of a control. The control scope defines what the control will evaluate. Three examples of control scopes are: a specific backup plan, all backup plans with a specific tag, or all backup plans. Detailed below.

func (GetFrameworkControlOutput) ToGetFrameworkControlOutput added in v5.1.0

func (o GetFrameworkControlOutput) ToGetFrameworkControlOutput() GetFrameworkControlOutput

func (GetFrameworkControlOutput) ToGetFrameworkControlOutputWithContext added in v5.1.0

func (o GetFrameworkControlOutput) ToGetFrameworkControlOutputWithContext(ctx context.Context) GetFrameworkControlOutput

type GetFrameworkControlScope added in v5.1.0

type GetFrameworkControlScope struct {
	// The ID of the only AWS resource that you want your control scope to contain.
	ComplianceResourceIds []string `pulumi:"complianceResourceIds"`
	// Describes whether the control scope includes one or more types of resources, such as EFS or RDS.
	ComplianceResourceTypes []string `pulumi:"complianceResourceTypes"`
	// Tag key-value pair applied to those AWS resources that you want to trigger an evaluation for a rule. A maximum of one key-value pair can be provided.
	Tags map[string]string `pulumi:"tags"`
}

type GetFrameworkControlScopeArgs added in v5.1.0

type GetFrameworkControlScopeArgs struct {
	// The ID of the only AWS resource that you want your control scope to contain.
	ComplianceResourceIds pulumi.StringArrayInput `pulumi:"complianceResourceIds"`
	// Describes whether the control scope includes one or more types of resources, such as EFS or RDS.
	ComplianceResourceTypes pulumi.StringArrayInput `pulumi:"complianceResourceTypes"`
	// Tag key-value pair applied to those AWS resources that you want to trigger an evaluation for a rule. A maximum of one key-value pair can be provided.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

func (GetFrameworkControlScopeArgs) ElementType added in v5.1.0

func (GetFrameworkControlScopeArgs) ToGetFrameworkControlScopeOutput added in v5.1.0

func (i GetFrameworkControlScopeArgs) ToGetFrameworkControlScopeOutput() GetFrameworkControlScopeOutput

func (GetFrameworkControlScopeArgs) ToGetFrameworkControlScopeOutputWithContext added in v5.1.0

func (i GetFrameworkControlScopeArgs) ToGetFrameworkControlScopeOutputWithContext(ctx context.Context) GetFrameworkControlScopeOutput

type GetFrameworkControlScopeArray added in v5.1.0

type GetFrameworkControlScopeArray []GetFrameworkControlScopeInput

func (GetFrameworkControlScopeArray) ElementType added in v5.1.0

func (GetFrameworkControlScopeArray) ToGetFrameworkControlScopeArrayOutput added in v5.1.0

func (i GetFrameworkControlScopeArray) ToGetFrameworkControlScopeArrayOutput() GetFrameworkControlScopeArrayOutput

func (GetFrameworkControlScopeArray) ToGetFrameworkControlScopeArrayOutputWithContext added in v5.1.0

func (i GetFrameworkControlScopeArray) ToGetFrameworkControlScopeArrayOutputWithContext(ctx context.Context) GetFrameworkControlScopeArrayOutput

type GetFrameworkControlScopeArrayInput added in v5.1.0

type GetFrameworkControlScopeArrayInput interface {
	pulumi.Input

	ToGetFrameworkControlScopeArrayOutput() GetFrameworkControlScopeArrayOutput
	ToGetFrameworkControlScopeArrayOutputWithContext(context.Context) GetFrameworkControlScopeArrayOutput
}

GetFrameworkControlScopeArrayInput is an input type that accepts GetFrameworkControlScopeArray and GetFrameworkControlScopeArrayOutput values. You can construct a concrete instance of `GetFrameworkControlScopeArrayInput` via:

GetFrameworkControlScopeArray{ GetFrameworkControlScopeArgs{...} }

type GetFrameworkControlScopeArrayOutput added in v5.1.0

type GetFrameworkControlScopeArrayOutput struct{ *pulumi.OutputState }

func (GetFrameworkControlScopeArrayOutput) ElementType added in v5.1.0

func (GetFrameworkControlScopeArrayOutput) Index added in v5.1.0

func (GetFrameworkControlScopeArrayOutput) ToGetFrameworkControlScopeArrayOutput added in v5.1.0

func (o GetFrameworkControlScopeArrayOutput) ToGetFrameworkControlScopeArrayOutput() GetFrameworkControlScopeArrayOutput

func (GetFrameworkControlScopeArrayOutput) ToGetFrameworkControlScopeArrayOutputWithContext added in v5.1.0

func (o GetFrameworkControlScopeArrayOutput) ToGetFrameworkControlScopeArrayOutputWithContext(ctx context.Context) GetFrameworkControlScopeArrayOutput

type GetFrameworkControlScopeInput added in v5.1.0

type GetFrameworkControlScopeInput interface {
	pulumi.Input

	ToGetFrameworkControlScopeOutput() GetFrameworkControlScopeOutput
	ToGetFrameworkControlScopeOutputWithContext(context.Context) GetFrameworkControlScopeOutput
}

GetFrameworkControlScopeInput is an input type that accepts GetFrameworkControlScopeArgs and GetFrameworkControlScopeOutput values. You can construct a concrete instance of `GetFrameworkControlScopeInput` via:

GetFrameworkControlScopeArgs{...}

type GetFrameworkControlScopeOutput added in v5.1.0

type GetFrameworkControlScopeOutput struct{ *pulumi.OutputState }

func (GetFrameworkControlScopeOutput) ComplianceResourceIds added in v5.1.0

func (o GetFrameworkControlScopeOutput) ComplianceResourceIds() pulumi.StringArrayOutput

The ID of the only AWS resource that you want your control scope to contain.

func (GetFrameworkControlScopeOutput) ComplianceResourceTypes added in v5.1.0

func (o GetFrameworkControlScopeOutput) ComplianceResourceTypes() pulumi.StringArrayOutput

Describes whether the control scope includes one or more types of resources, such as EFS or RDS.

func (GetFrameworkControlScopeOutput) ElementType added in v5.1.0

func (GetFrameworkControlScopeOutput) Tags added in v5.1.0

Tag key-value pair applied to those AWS resources that you want to trigger an evaluation for a rule. A maximum of one key-value pair can be provided.

func (GetFrameworkControlScopeOutput) ToGetFrameworkControlScopeOutput added in v5.1.0

func (o GetFrameworkControlScopeOutput) ToGetFrameworkControlScopeOutput() GetFrameworkControlScopeOutput

func (GetFrameworkControlScopeOutput) ToGetFrameworkControlScopeOutputWithContext added in v5.1.0

func (o GetFrameworkControlScopeOutput) ToGetFrameworkControlScopeOutputWithContext(ctx context.Context) GetFrameworkControlScopeOutput

type GetReportPlanReportDeliveryChannel added in v5.1.0

type GetReportPlanReportDeliveryChannel struct {
	// List of the format of your reports: CSV, JSON, or both.
	Formats []string `pulumi:"formats"`
	// Unique name of the S3 bucket that receives your reports.
	S3BucketName string `pulumi:"s3BucketName"`
	// Prefix for where Backup Audit Manager delivers your reports to Amazon S3. The prefix is this part of the following path: s3://your-bucket-name/prefix/Backup/us-west-2/year/month/day/report-name.
	S3KeyPrefix string `pulumi:"s3KeyPrefix"`
}

type GetReportPlanReportDeliveryChannelArgs added in v5.1.0

type GetReportPlanReportDeliveryChannelArgs struct {
	// List of the format of your reports: CSV, JSON, or both.
	Formats pulumi.StringArrayInput `pulumi:"formats"`
	// Unique name of the S3 bucket that receives your reports.
	S3BucketName pulumi.StringInput `pulumi:"s3BucketName"`
	// Prefix for where Backup Audit Manager delivers your reports to Amazon S3. The prefix is this part of the following path: s3://your-bucket-name/prefix/Backup/us-west-2/year/month/day/report-name.
	S3KeyPrefix pulumi.StringInput `pulumi:"s3KeyPrefix"`
}

func (GetReportPlanReportDeliveryChannelArgs) ElementType added in v5.1.0

func (GetReportPlanReportDeliveryChannelArgs) ToGetReportPlanReportDeliveryChannelOutput added in v5.1.0

func (i GetReportPlanReportDeliveryChannelArgs) ToGetReportPlanReportDeliveryChannelOutput() GetReportPlanReportDeliveryChannelOutput

func (GetReportPlanReportDeliveryChannelArgs) ToGetReportPlanReportDeliveryChannelOutputWithContext added in v5.1.0

func (i GetReportPlanReportDeliveryChannelArgs) ToGetReportPlanReportDeliveryChannelOutputWithContext(ctx context.Context) GetReportPlanReportDeliveryChannelOutput

type GetReportPlanReportDeliveryChannelArray added in v5.1.0

type GetReportPlanReportDeliveryChannelArray []GetReportPlanReportDeliveryChannelInput

func (GetReportPlanReportDeliveryChannelArray) ElementType added in v5.1.0

func (GetReportPlanReportDeliveryChannelArray) ToGetReportPlanReportDeliveryChannelArrayOutput added in v5.1.0

func (i GetReportPlanReportDeliveryChannelArray) ToGetReportPlanReportDeliveryChannelArrayOutput() GetReportPlanReportDeliveryChannelArrayOutput

func (GetReportPlanReportDeliveryChannelArray) ToGetReportPlanReportDeliveryChannelArrayOutputWithContext added in v5.1.0

func (i GetReportPlanReportDeliveryChannelArray) ToGetReportPlanReportDeliveryChannelArrayOutputWithContext(ctx context.Context) GetReportPlanReportDeliveryChannelArrayOutput

type GetReportPlanReportDeliveryChannelArrayInput added in v5.1.0

type GetReportPlanReportDeliveryChannelArrayInput interface {
	pulumi.Input

	ToGetReportPlanReportDeliveryChannelArrayOutput() GetReportPlanReportDeliveryChannelArrayOutput
	ToGetReportPlanReportDeliveryChannelArrayOutputWithContext(context.Context) GetReportPlanReportDeliveryChannelArrayOutput
}

GetReportPlanReportDeliveryChannelArrayInput is an input type that accepts GetReportPlanReportDeliveryChannelArray and GetReportPlanReportDeliveryChannelArrayOutput values. You can construct a concrete instance of `GetReportPlanReportDeliveryChannelArrayInput` via:

GetReportPlanReportDeliveryChannelArray{ GetReportPlanReportDeliveryChannelArgs{...} }

type GetReportPlanReportDeliveryChannelArrayOutput added in v5.1.0

type GetReportPlanReportDeliveryChannelArrayOutput struct{ *pulumi.OutputState }

func (GetReportPlanReportDeliveryChannelArrayOutput) ElementType added in v5.1.0

func (GetReportPlanReportDeliveryChannelArrayOutput) Index added in v5.1.0

func (GetReportPlanReportDeliveryChannelArrayOutput) ToGetReportPlanReportDeliveryChannelArrayOutput added in v5.1.0

func (o GetReportPlanReportDeliveryChannelArrayOutput) ToGetReportPlanReportDeliveryChannelArrayOutput() GetReportPlanReportDeliveryChannelArrayOutput

func (GetReportPlanReportDeliveryChannelArrayOutput) ToGetReportPlanReportDeliveryChannelArrayOutputWithContext added in v5.1.0

func (o GetReportPlanReportDeliveryChannelArrayOutput) ToGetReportPlanReportDeliveryChannelArrayOutputWithContext(ctx context.Context) GetReportPlanReportDeliveryChannelArrayOutput

type GetReportPlanReportDeliveryChannelInput added in v5.1.0

type GetReportPlanReportDeliveryChannelInput interface {
	pulumi.Input

	ToGetReportPlanReportDeliveryChannelOutput() GetReportPlanReportDeliveryChannelOutput
	ToGetReportPlanReportDeliveryChannelOutputWithContext(context.Context) GetReportPlanReportDeliveryChannelOutput
}

GetReportPlanReportDeliveryChannelInput is an input type that accepts GetReportPlanReportDeliveryChannelArgs and GetReportPlanReportDeliveryChannelOutput values. You can construct a concrete instance of `GetReportPlanReportDeliveryChannelInput` via:

GetReportPlanReportDeliveryChannelArgs{...}

type GetReportPlanReportDeliveryChannelOutput added in v5.1.0

type GetReportPlanReportDeliveryChannelOutput struct{ *pulumi.OutputState }

func (GetReportPlanReportDeliveryChannelOutput) ElementType added in v5.1.0

func (GetReportPlanReportDeliveryChannelOutput) Formats added in v5.1.0

List of the format of your reports: CSV, JSON, or both.

func (GetReportPlanReportDeliveryChannelOutput) S3BucketName added in v5.1.0

Unique name of the S3 bucket that receives your reports.

func (GetReportPlanReportDeliveryChannelOutput) S3KeyPrefix added in v5.1.0

Prefix for where Backup Audit Manager delivers your reports to Amazon S3. The prefix is this part of the following path: s3://your-bucket-name/prefix/Backup/us-west-2/year/month/day/report-name.

func (GetReportPlanReportDeliveryChannelOutput) ToGetReportPlanReportDeliveryChannelOutput added in v5.1.0

func (o GetReportPlanReportDeliveryChannelOutput) ToGetReportPlanReportDeliveryChannelOutput() GetReportPlanReportDeliveryChannelOutput

func (GetReportPlanReportDeliveryChannelOutput) ToGetReportPlanReportDeliveryChannelOutputWithContext added in v5.1.0

func (o GetReportPlanReportDeliveryChannelOutput) ToGetReportPlanReportDeliveryChannelOutputWithContext(ctx context.Context) GetReportPlanReportDeliveryChannelOutput

type GetReportPlanReportSetting added in v5.1.0

type GetReportPlanReportSetting struct {
	// (Optional) Specifies the list of accounts a report covers.
	Accounts []string `pulumi:"accounts"`
	// ARNs of the frameworks a report covers.
	FrameworkArns []string `pulumi:"frameworkArns"`
	// Specifies the number of frameworks a report covers.
	NumberOfFrameworks int `pulumi:"numberOfFrameworks"`
	// (Optional) Specifies the list of Organizational Units a report covers.
	OrganizationUnits []string `pulumi:"organizationUnits"`
	// (Optional) Specifies the list of regions a report covers.
	Regions []string `pulumi:"regions"`
	// Identifies the report template for the report. Reports are built using a report template.
	ReportTemplate string `pulumi:"reportTemplate"`
}

type GetReportPlanReportSettingArgs added in v5.1.0

type GetReportPlanReportSettingArgs struct {
	// (Optional) Specifies the list of accounts a report covers.
	Accounts pulumi.StringArrayInput `pulumi:"accounts"`
	// ARNs of the frameworks a report covers.
	FrameworkArns pulumi.StringArrayInput `pulumi:"frameworkArns"`
	// Specifies the number of frameworks a report covers.
	NumberOfFrameworks pulumi.IntInput `pulumi:"numberOfFrameworks"`
	// (Optional) Specifies the list of Organizational Units a report covers.
	OrganizationUnits pulumi.StringArrayInput `pulumi:"organizationUnits"`
	// (Optional) Specifies the list of regions a report covers.
	Regions pulumi.StringArrayInput `pulumi:"regions"`
	// Identifies the report template for the report. Reports are built using a report template.
	ReportTemplate pulumi.StringInput `pulumi:"reportTemplate"`
}

func (GetReportPlanReportSettingArgs) ElementType added in v5.1.0

func (GetReportPlanReportSettingArgs) ToGetReportPlanReportSettingOutput added in v5.1.0

func (i GetReportPlanReportSettingArgs) ToGetReportPlanReportSettingOutput() GetReportPlanReportSettingOutput

func (GetReportPlanReportSettingArgs) ToGetReportPlanReportSettingOutputWithContext added in v5.1.0

func (i GetReportPlanReportSettingArgs) ToGetReportPlanReportSettingOutputWithContext(ctx context.Context) GetReportPlanReportSettingOutput

type GetReportPlanReportSettingArray added in v5.1.0

type GetReportPlanReportSettingArray []GetReportPlanReportSettingInput

func (GetReportPlanReportSettingArray) ElementType added in v5.1.0

func (GetReportPlanReportSettingArray) ToGetReportPlanReportSettingArrayOutput added in v5.1.0

func (i GetReportPlanReportSettingArray) ToGetReportPlanReportSettingArrayOutput() GetReportPlanReportSettingArrayOutput

func (GetReportPlanReportSettingArray) ToGetReportPlanReportSettingArrayOutputWithContext added in v5.1.0

func (i GetReportPlanReportSettingArray) ToGetReportPlanReportSettingArrayOutputWithContext(ctx context.Context) GetReportPlanReportSettingArrayOutput

type GetReportPlanReportSettingArrayInput added in v5.1.0

type GetReportPlanReportSettingArrayInput interface {
	pulumi.Input

	ToGetReportPlanReportSettingArrayOutput() GetReportPlanReportSettingArrayOutput
	ToGetReportPlanReportSettingArrayOutputWithContext(context.Context) GetReportPlanReportSettingArrayOutput
}

GetReportPlanReportSettingArrayInput is an input type that accepts GetReportPlanReportSettingArray and GetReportPlanReportSettingArrayOutput values. You can construct a concrete instance of `GetReportPlanReportSettingArrayInput` via:

GetReportPlanReportSettingArray{ GetReportPlanReportSettingArgs{...} }

type GetReportPlanReportSettingArrayOutput added in v5.1.0

type GetReportPlanReportSettingArrayOutput struct{ *pulumi.OutputState }

func (GetReportPlanReportSettingArrayOutput) ElementType added in v5.1.0

func (GetReportPlanReportSettingArrayOutput) Index added in v5.1.0

func (GetReportPlanReportSettingArrayOutput) ToGetReportPlanReportSettingArrayOutput added in v5.1.0

func (o GetReportPlanReportSettingArrayOutput) ToGetReportPlanReportSettingArrayOutput() GetReportPlanReportSettingArrayOutput

func (GetReportPlanReportSettingArrayOutput) ToGetReportPlanReportSettingArrayOutputWithContext added in v5.1.0

func (o GetReportPlanReportSettingArrayOutput) ToGetReportPlanReportSettingArrayOutputWithContext(ctx context.Context) GetReportPlanReportSettingArrayOutput

type GetReportPlanReportSettingInput added in v5.1.0

type GetReportPlanReportSettingInput interface {
	pulumi.Input

	ToGetReportPlanReportSettingOutput() GetReportPlanReportSettingOutput
	ToGetReportPlanReportSettingOutputWithContext(context.Context) GetReportPlanReportSettingOutput
}

GetReportPlanReportSettingInput is an input type that accepts GetReportPlanReportSettingArgs and GetReportPlanReportSettingOutput values. You can construct a concrete instance of `GetReportPlanReportSettingInput` via:

GetReportPlanReportSettingArgs{...}

type GetReportPlanReportSettingOutput added in v5.1.0

type GetReportPlanReportSettingOutput struct{ *pulumi.OutputState }

func (GetReportPlanReportSettingOutput) Accounts added in v5.40.0

(Optional) Specifies the list of accounts a report covers.

func (GetReportPlanReportSettingOutput) ElementType added in v5.1.0

func (GetReportPlanReportSettingOutput) FrameworkArns added in v5.1.0

ARNs of the frameworks a report covers.

func (GetReportPlanReportSettingOutput) NumberOfFrameworks added in v5.1.0

func (o GetReportPlanReportSettingOutput) NumberOfFrameworks() pulumi.IntOutput

Specifies the number of frameworks a report covers.

func (GetReportPlanReportSettingOutput) OrganizationUnits added in v5.40.0

(Optional) Specifies the list of Organizational Units a report covers.

func (GetReportPlanReportSettingOutput) Regions added in v5.40.0

(Optional) Specifies the list of regions a report covers.

func (GetReportPlanReportSettingOutput) ReportTemplate added in v5.1.0

Identifies the report template for the report. Reports are built using a report template.

func (GetReportPlanReportSettingOutput) ToGetReportPlanReportSettingOutput added in v5.1.0

func (o GetReportPlanReportSettingOutput) ToGetReportPlanReportSettingOutput() GetReportPlanReportSettingOutput

func (GetReportPlanReportSettingOutput) ToGetReportPlanReportSettingOutputWithContext added in v5.1.0

func (o GetReportPlanReportSettingOutput) ToGetReportPlanReportSettingOutputWithContext(ctx context.Context) GetReportPlanReportSettingOutput

type GlobalSettings

type GlobalSettings struct {
	pulumi.CustomResourceState

	// A list of resources along with the opt-in preferences for the account.
	GlobalSettings pulumi.StringMapOutput `pulumi:"globalSettings"`
}

Provides an AWS Backup Global Settings resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := backup.NewGlobalSettings(ctx, "test", &backup.GlobalSettingsArgs{
			GlobalSettings: pulumi.StringMap{
				"isCrossAccountBackupEnabled": pulumi.String("true"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Backup Global Settings can be imported using the `id`, e.g.,

```sh

$ pulumi import aws:backup/globalSettings:GlobalSettings example 123456789012

```

func GetGlobalSettings

func GetGlobalSettings(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GlobalSettingsState, opts ...pulumi.ResourceOption) (*GlobalSettings, error)

GetGlobalSettings gets an existing GlobalSettings 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 NewGlobalSettings

func NewGlobalSettings(ctx *pulumi.Context,
	name string, args *GlobalSettingsArgs, opts ...pulumi.ResourceOption) (*GlobalSettings, error)

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

func (*GlobalSettings) ElementType

func (*GlobalSettings) ElementType() reflect.Type

func (*GlobalSettings) ToGlobalSettingsOutput

func (i *GlobalSettings) ToGlobalSettingsOutput() GlobalSettingsOutput

func (*GlobalSettings) ToGlobalSettingsOutputWithContext

func (i *GlobalSettings) ToGlobalSettingsOutputWithContext(ctx context.Context) GlobalSettingsOutput

type GlobalSettingsArgs

type GlobalSettingsArgs struct {
	// A list of resources along with the opt-in preferences for the account.
	GlobalSettings pulumi.StringMapInput
}

The set of arguments for constructing a GlobalSettings resource.

func (GlobalSettingsArgs) ElementType

func (GlobalSettingsArgs) ElementType() reflect.Type

type GlobalSettingsArray

type GlobalSettingsArray []GlobalSettingsInput

func (GlobalSettingsArray) ElementType

func (GlobalSettingsArray) ElementType() reflect.Type

func (GlobalSettingsArray) ToGlobalSettingsArrayOutput

func (i GlobalSettingsArray) ToGlobalSettingsArrayOutput() GlobalSettingsArrayOutput

func (GlobalSettingsArray) ToGlobalSettingsArrayOutputWithContext

func (i GlobalSettingsArray) ToGlobalSettingsArrayOutputWithContext(ctx context.Context) GlobalSettingsArrayOutput

type GlobalSettingsArrayInput

type GlobalSettingsArrayInput interface {
	pulumi.Input

	ToGlobalSettingsArrayOutput() GlobalSettingsArrayOutput
	ToGlobalSettingsArrayOutputWithContext(context.Context) GlobalSettingsArrayOutput
}

GlobalSettingsArrayInput is an input type that accepts GlobalSettingsArray and GlobalSettingsArrayOutput values. You can construct a concrete instance of `GlobalSettingsArrayInput` via:

GlobalSettingsArray{ GlobalSettingsArgs{...} }

type GlobalSettingsArrayOutput

type GlobalSettingsArrayOutput struct{ *pulumi.OutputState }

func (GlobalSettingsArrayOutput) ElementType

func (GlobalSettingsArrayOutput) ElementType() reflect.Type

func (GlobalSettingsArrayOutput) Index

func (GlobalSettingsArrayOutput) ToGlobalSettingsArrayOutput

func (o GlobalSettingsArrayOutput) ToGlobalSettingsArrayOutput() GlobalSettingsArrayOutput

func (GlobalSettingsArrayOutput) ToGlobalSettingsArrayOutputWithContext

func (o GlobalSettingsArrayOutput) ToGlobalSettingsArrayOutputWithContext(ctx context.Context) GlobalSettingsArrayOutput

type GlobalSettingsInput

type GlobalSettingsInput interface {
	pulumi.Input

	ToGlobalSettingsOutput() GlobalSettingsOutput
	ToGlobalSettingsOutputWithContext(ctx context.Context) GlobalSettingsOutput
}

type GlobalSettingsMap

type GlobalSettingsMap map[string]GlobalSettingsInput

func (GlobalSettingsMap) ElementType

func (GlobalSettingsMap) ElementType() reflect.Type

func (GlobalSettingsMap) ToGlobalSettingsMapOutput

func (i GlobalSettingsMap) ToGlobalSettingsMapOutput() GlobalSettingsMapOutput

func (GlobalSettingsMap) ToGlobalSettingsMapOutputWithContext

func (i GlobalSettingsMap) ToGlobalSettingsMapOutputWithContext(ctx context.Context) GlobalSettingsMapOutput

type GlobalSettingsMapInput

type GlobalSettingsMapInput interface {
	pulumi.Input

	ToGlobalSettingsMapOutput() GlobalSettingsMapOutput
	ToGlobalSettingsMapOutputWithContext(context.Context) GlobalSettingsMapOutput
}

GlobalSettingsMapInput is an input type that accepts GlobalSettingsMap and GlobalSettingsMapOutput values. You can construct a concrete instance of `GlobalSettingsMapInput` via:

GlobalSettingsMap{ "key": GlobalSettingsArgs{...} }

type GlobalSettingsMapOutput

type GlobalSettingsMapOutput struct{ *pulumi.OutputState }

func (GlobalSettingsMapOutput) ElementType

func (GlobalSettingsMapOutput) ElementType() reflect.Type

func (GlobalSettingsMapOutput) MapIndex

func (GlobalSettingsMapOutput) ToGlobalSettingsMapOutput

func (o GlobalSettingsMapOutput) ToGlobalSettingsMapOutput() GlobalSettingsMapOutput

func (GlobalSettingsMapOutput) ToGlobalSettingsMapOutputWithContext

func (o GlobalSettingsMapOutput) ToGlobalSettingsMapOutputWithContext(ctx context.Context) GlobalSettingsMapOutput

type GlobalSettingsOutput

type GlobalSettingsOutput struct{ *pulumi.OutputState }

func (GlobalSettingsOutput) ElementType

func (GlobalSettingsOutput) ElementType() reflect.Type

func (GlobalSettingsOutput) GlobalSettings added in v5.4.0

func (o GlobalSettingsOutput) GlobalSettings() pulumi.StringMapOutput

A list of resources along with the opt-in preferences for the account.

func (GlobalSettingsOutput) ToGlobalSettingsOutput

func (o GlobalSettingsOutput) ToGlobalSettingsOutput() GlobalSettingsOutput

func (GlobalSettingsOutput) ToGlobalSettingsOutputWithContext

func (o GlobalSettingsOutput) ToGlobalSettingsOutputWithContext(ctx context.Context) GlobalSettingsOutput

type GlobalSettingsState

type GlobalSettingsState struct {
	// A list of resources along with the opt-in preferences for the account.
	GlobalSettings pulumi.StringMapInput
}

func (GlobalSettingsState) ElementType

func (GlobalSettingsState) ElementType() reflect.Type

type LookupFrameworkArgs added in v5.1.0

type LookupFrameworkArgs struct {
	// Backup framework name.
	Name string `pulumi:"name"`
	// Tag key-value pair applied to those AWS resources that you want to trigger an evaluation for a rule. A maximum of one key-value pair can be provided.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getFramework.

type LookupFrameworkOutputArgs added in v5.1.0

type LookupFrameworkOutputArgs struct {
	// Backup framework name.
	Name pulumi.StringInput `pulumi:"name"`
	// Tag key-value pair applied to those AWS resources that you want to trigger an evaluation for a rule. A maximum of one key-value pair can be provided.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getFramework.

func (LookupFrameworkOutputArgs) ElementType added in v5.1.0

func (LookupFrameworkOutputArgs) ElementType() reflect.Type

type LookupFrameworkResult added in v5.1.0

type LookupFrameworkResult struct {
	// ARN of the backup framework.
	Arn string `pulumi:"arn"`
	// One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
	Controls []GetFrameworkControl `pulumi:"controls"`
	// Date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
	CreationTime string `pulumi:"creationTime"`
	// Deployment status of a framework. The statuses are: `CREATE_IN_PROGRESS` | `UPDATE_IN_PROGRESS` | `DELETE_IN_PROGRESS` | `COMPLETED`| `FAILED`.
	DeploymentStatus string `pulumi:"deploymentStatus"`
	// Description of the framework.
	Description string `pulumi:"description"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Name of a parameter, for example, BackupPlanFrequency.
	Name string `pulumi:"name"`
	// Framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. The statuses are: `ACTIVE`, `PARTIALLY_ACTIVE`, `INACTIVE`, `UNAVAILABLE`. For more information refer to the [AWS documentation for Framework Status](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_DescribeFramework.html#Backup-DescribeFramework-response-FrameworkStatus)
	Status string `pulumi:"status"`
	// Tag key-value pair applied to those AWS resources that you want to trigger an evaluation for a rule. A maximum of one key-value pair can be provided.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getFramework.

func LookupFramework added in v5.1.0

func LookupFramework(ctx *pulumi.Context, args *LookupFrameworkArgs, opts ...pulumi.InvokeOption) (*LookupFrameworkResult, error)

Use this data source to get information on an existing backup framework.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := backup.LookupFramework(ctx, &backup.LookupFrameworkArgs{
			Name: "my_example_backup_framework_name",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupFrameworkResultOutput added in v5.1.0

type LookupFrameworkResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getFramework.

func LookupFrameworkOutput added in v5.1.0

func (LookupFrameworkResultOutput) Arn added in v5.1.0

ARN of the backup framework.

func (LookupFrameworkResultOutput) Controls added in v5.1.0

One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.

func (LookupFrameworkResultOutput) CreationTime added in v5.1.0

Date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).

func (LookupFrameworkResultOutput) DeploymentStatus added in v5.1.0

func (o LookupFrameworkResultOutput) DeploymentStatus() pulumi.StringOutput

Deployment status of a framework. The statuses are: `CREATE_IN_PROGRESS` | `UPDATE_IN_PROGRESS` | `DELETE_IN_PROGRESS` | `COMPLETED`| `FAILED`.

func (LookupFrameworkResultOutput) Description added in v5.1.0

Description of the framework.

func (LookupFrameworkResultOutput) ElementType added in v5.1.0

func (LookupFrameworkResultOutput) Id added in v5.1.0

The provider-assigned unique ID for this managed resource.

func (LookupFrameworkResultOutput) Name added in v5.1.0

Name of a parameter, for example, BackupPlanFrequency.

func (LookupFrameworkResultOutput) Status added in v5.1.0

Framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. The statuses are: `ACTIVE`, `PARTIALLY_ACTIVE`, `INACTIVE`, `UNAVAILABLE`. For more information refer to the [AWS documentation for Framework Status](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_DescribeFramework.html#Backup-DescribeFramework-response-FrameworkStatus)

func (LookupFrameworkResultOutput) Tags added in v5.1.0

Tag key-value pair applied to those AWS resources that you want to trigger an evaluation for a rule. A maximum of one key-value pair can be provided.

func (LookupFrameworkResultOutput) ToLookupFrameworkResultOutput added in v5.1.0

func (o LookupFrameworkResultOutput) ToLookupFrameworkResultOutput() LookupFrameworkResultOutput

func (LookupFrameworkResultOutput) ToLookupFrameworkResultOutputWithContext added in v5.1.0

func (o LookupFrameworkResultOutput) ToLookupFrameworkResultOutputWithContext(ctx context.Context) LookupFrameworkResultOutput

type LookupPlanArgs

type LookupPlanArgs struct {
	// Backup plan ID.
	PlanId string `pulumi:"planId"`
	// Metadata that you can assign to help organize the plans you create.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getPlan.

type LookupPlanOutputArgs

type LookupPlanOutputArgs struct {
	// Backup plan ID.
	PlanId pulumi.StringInput `pulumi:"planId"`
	// Metadata that you can assign to help organize the plans you create.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getPlan.

func (LookupPlanOutputArgs) ElementType

func (LookupPlanOutputArgs) ElementType() reflect.Type

type LookupPlanResult

type LookupPlanResult struct {
	// ARN of the backup plan.
	Arn string `pulumi:"arn"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Display name of a backup plan.
	Name   string `pulumi:"name"`
	PlanId string `pulumi:"planId"`
	// Metadata that you can assign to help organize the plans you create.
	Tags map[string]string `pulumi:"tags"`
	// Unique, randomly generated, Unicode, UTF-8 encoded string that serves as the version ID of the backup plan.
	Version string `pulumi:"version"`
}

A collection of values returned by getPlan.

func LookupPlan

func LookupPlan(ctx *pulumi.Context, args *LookupPlanArgs, opts ...pulumi.InvokeOption) (*LookupPlanResult, error)

Use this data source to get information on an existing backup plan.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := backup.LookupPlan(ctx, &backup.LookupPlanArgs{
			PlanId: "my_example_backup_plan_id",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupPlanResultOutput

type LookupPlanResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getPlan.

func (LookupPlanResultOutput) Arn

ARN of the backup plan.

func (LookupPlanResultOutput) ElementType

func (LookupPlanResultOutput) ElementType() reflect.Type

func (LookupPlanResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupPlanResultOutput) Name

Display name of a backup plan.

func (LookupPlanResultOutput) PlanId

func (LookupPlanResultOutput) Tags

Metadata that you can assign to help organize the plans you create.

func (LookupPlanResultOutput) ToLookupPlanResultOutput

func (o LookupPlanResultOutput) ToLookupPlanResultOutput() LookupPlanResultOutput

func (LookupPlanResultOutput) ToLookupPlanResultOutputWithContext

func (o LookupPlanResultOutput) ToLookupPlanResultOutputWithContext(ctx context.Context) LookupPlanResultOutput

func (LookupPlanResultOutput) Version

Unique, randomly generated, Unicode, UTF-8 encoded string that serves as the version ID of the backup plan.

type LookupReportPlanArgs added in v5.1.0

type LookupReportPlanArgs struct {
	// Backup report plan name.
	Name string `pulumi:"name"`
	// Metadata that you can assign to help organize the report plans you create.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getReportPlan.

type LookupReportPlanOutputArgs added in v5.1.0

type LookupReportPlanOutputArgs struct {
	// Backup report plan name.
	Name pulumi.StringInput `pulumi:"name"`
	// Metadata that you can assign to help organize the report plans you create.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getReportPlan.

func (LookupReportPlanOutputArgs) ElementType added in v5.1.0

func (LookupReportPlanOutputArgs) ElementType() reflect.Type

type LookupReportPlanResult added in v5.1.0

type LookupReportPlanResult struct {
	// ARN of the backup report plan.
	Arn string `pulumi:"arn"`
	// Date and time that a report plan is created, in Unix format and Coordinated Universal Time (UTC).
	CreationTime string `pulumi:"creationTime"`
	// Deployment status of a report plan. The statuses are: `CREATE_IN_PROGRESS` | `UPDATE_IN_PROGRESS` | `DELETE_IN_PROGRESS` | `COMPLETED`.
	DeploymentStatus string `pulumi:"deploymentStatus"`
	// Description of the report plan.
	Description string `pulumi:"description"`
	// The provider-assigned unique ID for this managed resource.
	Id   string `pulumi:"id"`
	Name string `pulumi:"name"`
	// An object that contains information about where and how to deliver your reports, specifically your Amazon S3 bucket name, S3 key prefix, and the formats of your reports. Detailed below.
	ReportDeliveryChannels []GetReportPlanReportDeliveryChannel `pulumi:"reportDeliveryChannels"`
	// An object that identifies the report template for the report. Reports are built using a report template. Detailed below.
	ReportSettings []GetReportPlanReportSetting `pulumi:"reportSettings"`
	// Metadata that you can assign to help organize the report plans you create.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getReportPlan.

func LookupReportPlan added in v5.1.0

func LookupReportPlan(ctx *pulumi.Context, args *LookupReportPlanArgs, opts ...pulumi.InvokeOption) (*LookupReportPlanResult, error)

Use this data source to get information on an existing backup report plan.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := backup.LookupReportPlan(ctx, &backup.LookupReportPlanArgs{
			Name: "my_example_backup_report_plan_name",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupReportPlanResultOutput added in v5.1.0

type LookupReportPlanResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getReportPlan.

func LookupReportPlanOutput added in v5.1.0

func (LookupReportPlanResultOutput) Arn added in v5.1.0

ARN of the backup report plan.

func (LookupReportPlanResultOutput) CreationTime added in v5.1.0

Date and time that a report plan is created, in Unix format and Coordinated Universal Time (UTC).

func (LookupReportPlanResultOutput) DeploymentStatus added in v5.1.0

func (o LookupReportPlanResultOutput) DeploymentStatus() pulumi.StringOutput

Deployment status of a report plan. The statuses are: `CREATE_IN_PROGRESS` | `UPDATE_IN_PROGRESS` | `DELETE_IN_PROGRESS` | `COMPLETED`.

func (LookupReportPlanResultOutput) Description added in v5.1.0

Description of the report plan.

func (LookupReportPlanResultOutput) ElementType added in v5.1.0

func (LookupReportPlanResultOutput) Id added in v5.1.0

The provider-assigned unique ID for this managed resource.

func (LookupReportPlanResultOutput) Name added in v5.1.0

func (LookupReportPlanResultOutput) ReportDeliveryChannels added in v5.1.0

An object that contains information about where and how to deliver your reports, specifically your Amazon S3 bucket name, S3 key prefix, and the formats of your reports. Detailed below.

func (LookupReportPlanResultOutput) ReportSettings added in v5.1.0

An object that identifies the report template for the report. Reports are built using a report template. Detailed below.

func (LookupReportPlanResultOutput) Tags added in v5.1.0

Metadata that you can assign to help organize the report plans you create.

func (LookupReportPlanResultOutput) ToLookupReportPlanResultOutput added in v5.1.0

func (o LookupReportPlanResultOutput) ToLookupReportPlanResultOutput() LookupReportPlanResultOutput

func (LookupReportPlanResultOutput) ToLookupReportPlanResultOutputWithContext added in v5.1.0

func (o LookupReportPlanResultOutput) ToLookupReportPlanResultOutputWithContext(ctx context.Context) LookupReportPlanResultOutput

type LookupSelectionArgs

type LookupSelectionArgs struct {
	// Backup plan ID associated with the selection of resources.
	PlanId string `pulumi:"planId"`
	// Backup selection ID.
	SelectionId string `pulumi:"selectionId"`
}

A collection of arguments for invoking getSelection.

type LookupSelectionOutputArgs

type LookupSelectionOutputArgs struct {
	// Backup plan ID associated with the selection of resources.
	PlanId pulumi.StringInput `pulumi:"planId"`
	// Backup selection ID.
	SelectionId pulumi.StringInput `pulumi:"selectionId"`
}

A collection of arguments for invoking getSelection.

func (LookupSelectionOutputArgs) ElementType

func (LookupSelectionOutputArgs) ElementType() reflect.Type

type LookupSelectionResult

type LookupSelectionResult struct {
	// ARN of the IAM role that AWS Backup uses to authenticate when restoring and backing up the target resource. See the [AWS Backup Developer Guide](https://docs.aws.amazon.com/aws-backup/latest/devguide/access-control.html#managed-policies) for additional information about using AWS managed policies or creating custom policies attached to the IAM role.
	IamRoleArn string `pulumi:"iamRoleArn"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Display name of a resource selection document.
	Name   string `pulumi:"name"`
	PlanId string `pulumi:"planId"`
	// An array of strings that either contain Amazon Resource Names (ARNs) or match patterns of resources to assign to a backup plan..
	Resources   []string `pulumi:"resources"`
	SelectionId string   `pulumi:"selectionId"`
}

A collection of values returned by getSelection.

func LookupSelection

func LookupSelection(ctx *pulumi.Context, args *LookupSelectionArgs, opts ...pulumi.InvokeOption) (*LookupSelectionResult, error)

Use this data source to get information on an existing backup selection.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := backup.LookupSelection(ctx, &backup.LookupSelectionArgs{
			PlanId:      data.Aws_backup_plan.Example.Id,
			SelectionId: "selection-id-example",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupSelectionResultOutput

type LookupSelectionResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSelection.

func (LookupSelectionResultOutput) ElementType

func (LookupSelectionResultOutput) IamRoleArn

ARN of the IAM role that AWS Backup uses to authenticate when restoring and backing up the target resource. See the [AWS Backup Developer Guide](https://docs.aws.amazon.com/aws-backup/latest/devguide/access-control.html#managed-policies) for additional information about using AWS managed policies or creating custom policies attached to the IAM role.

func (LookupSelectionResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupSelectionResultOutput) Name

Display name of a resource selection document.

func (LookupSelectionResultOutput) PlanId

func (LookupSelectionResultOutput) Resources

An array of strings that either contain Amazon Resource Names (ARNs) or match patterns of resources to assign to a backup plan..

func (LookupSelectionResultOutput) SelectionId

func (LookupSelectionResultOutput) ToLookupSelectionResultOutput

func (o LookupSelectionResultOutput) ToLookupSelectionResultOutput() LookupSelectionResultOutput

func (LookupSelectionResultOutput) ToLookupSelectionResultOutputWithContext

func (o LookupSelectionResultOutput) ToLookupSelectionResultOutputWithContext(ctx context.Context) LookupSelectionResultOutput

type LookupVaultArgs

type LookupVaultArgs struct {
	// Name of the backup vault.
	Name string `pulumi:"name"`
	// Metadata that you can assign to help organize the resources that you create.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getVault.

type LookupVaultOutputArgs

type LookupVaultOutputArgs struct {
	// Name of the backup vault.
	Name pulumi.StringInput `pulumi:"name"`
	// Metadata that you can assign to help organize the resources that you create.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getVault.

func (LookupVaultOutputArgs) ElementType

func (LookupVaultOutputArgs) ElementType() reflect.Type

type LookupVaultResult

type LookupVaultResult struct {
	// ARN of the vault.
	Arn string `pulumi:"arn"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Server-side encryption key that is used to protect your backups.
	KmsKeyArn string `pulumi:"kmsKeyArn"`
	Name      string `pulumi:"name"`
	// Number of recovery points that are stored in a backup vault.
	RecoveryPoints int `pulumi:"recoveryPoints"`
	// Metadata that you can assign to help organize the resources that you create.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getVault.

func LookupVault

func LookupVault(ctx *pulumi.Context, args *LookupVaultArgs, opts ...pulumi.InvokeOption) (*LookupVaultResult, error)

Use this data source to get information on an existing backup vault.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := backup.LookupVault(ctx, &backup.LookupVaultArgs{
			Name: "example_backup_vault",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupVaultResultOutput

type LookupVaultResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getVault.

func (LookupVaultResultOutput) Arn

ARN of the vault.

func (LookupVaultResultOutput) ElementType

func (LookupVaultResultOutput) ElementType() reflect.Type

func (LookupVaultResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupVaultResultOutput) KmsKeyArn

Server-side encryption key that is used to protect your backups.

func (LookupVaultResultOutput) Name

func (LookupVaultResultOutput) RecoveryPoints

func (o LookupVaultResultOutput) RecoveryPoints() pulumi.IntOutput

Number of recovery points that are stored in a backup vault.

func (LookupVaultResultOutput) Tags

Metadata that you can assign to help organize the resources that you create.

func (LookupVaultResultOutput) ToLookupVaultResultOutput

func (o LookupVaultResultOutput) ToLookupVaultResultOutput() LookupVaultResultOutput

func (LookupVaultResultOutput) ToLookupVaultResultOutputWithContext

func (o LookupVaultResultOutput) ToLookupVaultResultOutputWithContext(ctx context.Context) LookupVaultResultOutput

type Plan

type Plan struct {
	pulumi.CustomResourceState

	// An object that specifies backup options for each resource type.
	AdvancedBackupSettings PlanAdvancedBackupSettingArrayOutput `pulumi:"advancedBackupSettings"`
	// The ARN of the backup plan.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The display name of a backup plan.
	Name pulumi.StringOutput `pulumi:"name"`
	// A rule object that specifies a scheduled task that is used to back up a selection of resources.
	Rules PlanRuleArrayOutput `pulumi:"rules"`
	// Metadata that you can assign to help organize the plans you create. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Unique, randomly generated, Unicode, UTF-8 encoded string that serves as the version ID of the backup plan.
	Version pulumi.StringOutput `pulumi:"version"`
}

Provides an AWS Backup plan resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := backup.NewPlan(ctx, "example", &backup.PlanArgs{
			Rules: backup.PlanRuleArray{
				&backup.PlanRuleArgs{
					RuleName:        pulumi.String("my_example_backup_rule"),
					TargetVaultName: pulumi.Any(aws_backup_vault.Test.Name),
					Schedule:        pulumi.String("cron(0 12 * * ? *)"),
					Lifecycle: &backup.PlanRuleLifecycleArgs{
						DeleteAfter: pulumi.Int(14),
					},
				},
			},
			AdvancedBackupSettings: backup.PlanAdvancedBackupSettingArray{
				&backup.PlanAdvancedBackupSettingArgs{
					BackupOptions: pulumi.StringMap{
						"WindowsVSS": pulumi.String("enabled"),
					},
					ResourceType: pulumi.String("EC2"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import aws:backup/plan:Plan test <id>

```

func GetPlan

func GetPlan(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PlanState, opts ...pulumi.ResourceOption) (*Plan, error)

GetPlan gets an existing Plan 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 NewPlan

func NewPlan(ctx *pulumi.Context,
	name string, args *PlanArgs, opts ...pulumi.ResourceOption) (*Plan, error)

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

func (*Plan) ElementType

func (*Plan) ElementType() reflect.Type

func (*Plan) ToPlanOutput

func (i *Plan) ToPlanOutput() PlanOutput

func (*Plan) ToPlanOutputWithContext

func (i *Plan) ToPlanOutputWithContext(ctx context.Context) PlanOutput

type PlanAdvancedBackupSetting

type PlanAdvancedBackupSetting struct {
	// Specifies the backup option for a selected resource. This option is only available for Windows VSS backup jobs. Set to `{ WindowsVSS = "enabled" }` to enable Windows VSS backup option and create a VSS Windows backup.
	BackupOptions map[string]string `pulumi:"backupOptions"`
	// The type of AWS resource to be backed up. For VSS Windows backups, the only supported resource type is Amazon EC2. Valid values: `EC2`.
	ResourceType string `pulumi:"resourceType"`
}

type PlanAdvancedBackupSettingArgs

type PlanAdvancedBackupSettingArgs struct {
	// Specifies the backup option for a selected resource. This option is only available for Windows VSS backup jobs. Set to `{ WindowsVSS = "enabled" }` to enable Windows VSS backup option and create a VSS Windows backup.
	BackupOptions pulumi.StringMapInput `pulumi:"backupOptions"`
	// The type of AWS resource to be backed up. For VSS Windows backups, the only supported resource type is Amazon EC2. Valid values: `EC2`.
	ResourceType pulumi.StringInput `pulumi:"resourceType"`
}

func (PlanAdvancedBackupSettingArgs) ElementType

func (PlanAdvancedBackupSettingArgs) ToPlanAdvancedBackupSettingOutput

func (i PlanAdvancedBackupSettingArgs) ToPlanAdvancedBackupSettingOutput() PlanAdvancedBackupSettingOutput

func (PlanAdvancedBackupSettingArgs) ToPlanAdvancedBackupSettingOutputWithContext

func (i PlanAdvancedBackupSettingArgs) ToPlanAdvancedBackupSettingOutputWithContext(ctx context.Context) PlanAdvancedBackupSettingOutput

type PlanAdvancedBackupSettingArray

type PlanAdvancedBackupSettingArray []PlanAdvancedBackupSettingInput

func (PlanAdvancedBackupSettingArray) ElementType

func (PlanAdvancedBackupSettingArray) ToPlanAdvancedBackupSettingArrayOutput

func (i PlanAdvancedBackupSettingArray) ToPlanAdvancedBackupSettingArrayOutput() PlanAdvancedBackupSettingArrayOutput

func (PlanAdvancedBackupSettingArray) ToPlanAdvancedBackupSettingArrayOutputWithContext

func (i PlanAdvancedBackupSettingArray) ToPlanAdvancedBackupSettingArrayOutputWithContext(ctx context.Context) PlanAdvancedBackupSettingArrayOutput

type PlanAdvancedBackupSettingArrayInput

type PlanAdvancedBackupSettingArrayInput interface {
	pulumi.Input

	ToPlanAdvancedBackupSettingArrayOutput() PlanAdvancedBackupSettingArrayOutput
	ToPlanAdvancedBackupSettingArrayOutputWithContext(context.Context) PlanAdvancedBackupSettingArrayOutput
}

PlanAdvancedBackupSettingArrayInput is an input type that accepts PlanAdvancedBackupSettingArray and PlanAdvancedBackupSettingArrayOutput values. You can construct a concrete instance of `PlanAdvancedBackupSettingArrayInput` via:

PlanAdvancedBackupSettingArray{ PlanAdvancedBackupSettingArgs{...} }

type PlanAdvancedBackupSettingArrayOutput

type PlanAdvancedBackupSettingArrayOutput struct{ *pulumi.OutputState }

func (PlanAdvancedBackupSettingArrayOutput) ElementType

func (PlanAdvancedBackupSettingArrayOutput) Index

func (PlanAdvancedBackupSettingArrayOutput) ToPlanAdvancedBackupSettingArrayOutput

func (o PlanAdvancedBackupSettingArrayOutput) ToPlanAdvancedBackupSettingArrayOutput() PlanAdvancedBackupSettingArrayOutput

func (PlanAdvancedBackupSettingArrayOutput) ToPlanAdvancedBackupSettingArrayOutputWithContext

func (o PlanAdvancedBackupSettingArrayOutput) ToPlanAdvancedBackupSettingArrayOutputWithContext(ctx context.Context) PlanAdvancedBackupSettingArrayOutput

type PlanAdvancedBackupSettingInput

type PlanAdvancedBackupSettingInput interface {
	pulumi.Input

	ToPlanAdvancedBackupSettingOutput() PlanAdvancedBackupSettingOutput
	ToPlanAdvancedBackupSettingOutputWithContext(context.Context) PlanAdvancedBackupSettingOutput
}

PlanAdvancedBackupSettingInput is an input type that accepts PlanAdvancedBackupSettingArgs and PlanAdvancedBackupSettingOutput values. You can construct a concrete instance of `PlanAdvancedBackupSettingInput` via:

PlanAdvancedBackupSettingArgs{...}

type PlanAdvancedBackupSettingOutput

type PlanAdvancedBackupSettingOutput struct{ *pulumi.OutputState }

func (PlanAdvancedBackupSettingOutput) BackupOptions

Specifies the backup option for a selected resource. This option is only available for Windows VSS backup jobs. Set to `{ WindowsVSS = "enabled" }` to enable Windows VSS backup option and create a VSS Windows backup.

func (PlanAdvancedBackupSettingOutput) ElementType

func (PlanAdvancedBackupSettingOutput) ResourceType

The type of AWS resource to be backed up. For VSS Windows backups, the only supported resource type is Amazon EC2. Valid values: `EC2`.

func (PlanAdvancedBackupSettingOutput) ToPlanAdvancedBackupSettingOutput

func (o PlanAdvancedBackupSettingOutput) ToPlanAdvancedBackupSettingOutput() PlanAdvancedBackupSettingOutput

func (PlanAdvancedBackupSettingOutput) ToPlanAdvancedBackupSettingOutputWithContext

func (o PlanAdvancedBackupSettingOutput) ToPlanAdvancedBackupSettingOutputWithContext(ctx context.Context) PlanAdvancedBackupSettingOutput

type PlanArgs

type PlanArgs struct {
	// An object that specifies backup options for each resource type.
	AdvancedBackupSettings PlanAdvancedBackupSettingArrayInput
	// The display name of a backup plan.
	Name pulumi.StringPtrInput
	// A rule object that specifies a scheduled task that is used to back up a selection of resources.
	Rules PlanRuleArrayInput
	// Metadata that you can assign to help organize the plans you create. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a Plan resource.

func (PlanArgs) ElementType

func (PlanArgs) ElementType() reflect.Type

type PlanArray

type PlanArray []PlanInput

func (PlanArray) ElementType

func (PlanArray) ElementType() reflect.Type

func (PlanArray) ToPlanArrayOutput

func (i PlanArray) ToPlanArrayOutput() PlanArrayOutput

func (PlanArray) ToPlanArrayOutputWithContext

func (i PlanArray) ToPlanArrayOutputWithContext(ctx context.Context) PlanArrayOutput

type PlanArrayInput

type PlanArrayInput interface {
	pulumi.Input

	ToPlanArrayOutput() PlanArrayOutput
	ToPlanArrayOutputWithContext(context.Context) PlanArrayOutput
}

PlanArrayInput is an input type that accepts PlanArray and PlanArrayOutput values. You can construct a concrete instance of `PlanArrayInput` via:

PlanArray{ PlanArgs{...} }

type PlanArrayOutput

type PlanArrayOutput struct{ *pulumi.OutputState }

func (PlanArrayOutput) ElementType

func (PlanArrayOutput) ElementType() reflect.Type

func (PlanArrayOutput) Index

func (PlanArrayOutput) ToPlanArrayOutput

func (o PlanArrayOutput) ToPlanArrayOutput() PlanArrayOutput

func (PlanArrayOutput) ToPlanArrayOutputWithContext

func (o PlanArrayOutput) ToPlanArrayOutputWithContext(ctx context.Context) PlanArrayOutput

type PlanInput

type PlanInput interface {
	pulumi.Input

	ToPlanOutput() PlanOutput
	ToPlanOutputWithContext(ctx context.Context) PlanOutput
}

type PlanMap

type PlanMap map[string]PlanInput

func (PlanMap) ElementType

func (PlanMap) ElementType() reflect.Type

func (PlanMap) ToPlanMapOutput

func (i PlanMap) ToPlanMapOutput() PlanMapOutput

func (PlanMap) ToPlanMapOutputWithContext

func (i PlanMap) ToPlanMapOutputWithContext(ctx context.Context) PlanMapOutput

type PlanMapInput

type PlanMapInput interface {
	pulumi.Input

	ToPlanMapOutput() PlanMapOutput
	ToPlanMapOutputWithContext(context.Context) PlanMapOutput
}

PlanMapInput is an input type that accepts PlanMap and PlanMapOutput values. You can construct a concrete instance of `PlanMapInput` via:

PlanMap{ "key": PlanArgs{...} }

type PlanMapOutput

type PlanMapOutput struct{ *pulumi.OutputState }

func (PlanMapOutput) ElementType

func (PlanMapOutput) ElementType() reflect.Type

func (PlanMapOutput) MapIndex

func (PlanMapOutput) ToPlanMapOutput

func (o PlanMapOutput) ToPlanMapOutput() PlanMapOutput

func (PlanMapOutput) ToPlanMapOutputWithContext

func (o PlanMapOutput) ToPlanMapOutputWithContext(ctx context.Context) PlanMapOutput

type PlanOutput

type PlanOutput struct{ *pulumi.OutputState }

func (PlanOutput) AdvancedBackupSettings added in v5.4.0

func (o PlanOutput) AdvancedBackupSettings() PlanAdvancedBackupSettingArrayOutput

An object that specifies backup options for each resource type.

func (PlanOutput) Arn added in v5.4.0

func (o PlanOutput) Arn() pulumi.StringOutput

The ARN of the backup plan.

func (PlanOutput) ElementType

func (PlanOutput) ElementType() reflect.Type

func (PlanOutput) Name added in v5.4.0

func (o PlanOutput) Name() pulumi.StringOutput

The display name of a backup plan.

func (PlanOutput) Rules added in v5.4.0

func (o PlanOutput) Rules() PlanRuleArrayOutput

A rule object that specifies a scheduled task that is used to back up a selection of resources.

func (PlanOutput) Tags added in v5.4.0

Metadata that you can assign to help organize the plans you create. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (PlanOutput) TagsAll added in v5.4.0

func (o PlanOutput) TagsAll() pulumi.StringMapOutput

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (PlanOutput) ToPlanOutput

func (o PlanOutput) ToPlanOutput() PlanOutput

func (PlanOutput) ToPlanOutputWithContext

func (o PlanOutput) ToPlanOutputWithContext(ctx context.Context) PlanOutput

func (PlanOutput) Version added in v5.4.0

func (o PlanOutput) Version() pulumi.StringOutput

Unique, randomly generated, Unicode, UTF-8 encoded string that serves as the version ID of the backup plan.

type PlanRule

type PlanRule struct {
	// The amount of time in minutes AWS Backup attempts a backup before canceling the job and returning an error.
	CompletionWindow *int `pulumi:"completionWindow"`
	// Configuration block(s) with copy operation settings. Detailed below.
	CopyActions []PlanRuleCopyAction `pulumi:"copyActions"`
	// Enable continuous backups for supported resources.
	EnableContinuousBackup *bool `pulumi:"enableContinuousBackup"`
	// The lifecycle defines when a protected resource is transitioned to cold storage and when it expires.  Fields documented below.
	Lifecycle *PlanRuleLifecycle `pulumi:"lifecycle"`
	// Metadata that you can assign to help organize the resources that you create.
	RecoveryPointTags map[string]string `pulumi:"recoveryPointTags"`
	// An display name for a backup rule.
	RuleName string `pulumi:"ruleName"`
	// A CRON expression specifying when AWS Backup initiates a backup job.
	Schedule *string `pulumi:"schedule"`
	// The amount of time in minutes before beginning a backup.
	StartWindow *int `pulumi:"startWindow"`
	// The name of a logical container where backups are stored.
	TargetVaultName string `pulumi:"targetVaultName"`
}

type PlanRuleArgs

type PlanRuleArgs struct {
	// The amount of time in minutes AWS Backup attempts a backup before canceling the job and returning an error.
	CompletionWindow pulumi.IntPtrInput `pulumi:"completionWindow"`
	// Configuration block(s) with copy operation settings. Detailed below.
	CopyActions PlanRuleCopyActionArrayInput `pulumi:"copyActions"`
	// Enable continuous backups for supported resources.
	EnableContinuousBackup pulumi.BoolPtrInput `pulumi:"enableContinuousBackup"`
	// The lifecycle defines when a protected resource is transitioned to cold storage and when it expires.  Fields documented below.
	Lifecycle PlanRuleLifecyclePtrInput `pulumi:"lifecycle"`
	// Metadata that you can assign to help organize the resources that you create.
	RecoveryPointTags pulumi.StringMapInput `pulumi:"recoveryPointTags"`
	// An display name for a backup rule.
	RuleName pulumi.StringInput `pulumi:"ruleName"`
	// A CRON expression specifying when AWS Backup initiates a backup job.
	Schedule pulumi.StringPtrInput `pulumi:"schedule"`
	// The amount of time in minutes before beginning a backup.
	StartWindow pulumi.IntPtrInput `pulumi:"startWindow"`
	// The name of a logical container where backups are stored.
	TargetVaultName pulumi.StringInput `pulumi:"targetVaultName"`
}

func (PlanRuleArgs) ElementType

func (PlanRuleArgs) ElementType() reflect.Type

func (PlanRuleArgs) ToPlanRuleOutput

func (i PlanRuleArgs) ToPlanRuleOutput() PlanRuleOutput

func (PlanRuleArgs) ToPlanRuleOutputWithContext

func (i PlanRuleArgs) ToPlanRuleOutputWithContext(ctx context.Context) PlanRuleOutput

type PlanRuleArray

type PlanRuleArray []PlanRuleInput

func (PlanRuleArray) ElementType

func (PlanRuleArray) ElementType() reflect.Type

func (PlanRuleArray) ToPlanRuleArrayOutput

func (i PlanRuleArray) ToPlanRuleArrayOutput() PlanRuleArrayOutput

func (PlanRuleArray) ToPlanRuleArrayOutputWithContext

func (i PlanRuleArray) ToPlanRuleArrayOutputWithContext(ctx context.Context) PlanRuleArrayOutput

type PlanRuleArrayInput

type PlanRuleArrayInput interface {
	pulumi.Input

	ToPlanRuleArrayOutput() PlanRuleArrayOutput
	ToPlanRuleArrayOutputWithContext(context.Context) PlanRuleArrayOutput
}

PlanRuleArrayInput is an input type that accepts PlanRuleArray and PlanRuleArrayOutput values. You can construct a concrete instance of `PlanRuleArrayInput` via:

PlanRuleArray{ PlanRuleArgs{...} }

type PlanRuleArrayOutput

type PlanRuleArrayOutput struct{ *pulumi.OutputState }

func (PlanRuleArrayOutput) ElementType

func (PlanRuleArrayOutput) ElementType() reflect.Type

func (PlanRuleArrayOutput) Index

func (PlanRuleArrayOutput) ToPlanRuleArrayOutput

func (o PlanRuleArrayOutput) ToPlanRuleArrayOutput() PlanRuleArrayOutput

func (PlanRuleArrayOutput) ToPlanRuleArrayOutputWithContext

func (o PlanRuleArrayOutput) ToPlanRuleArrayOutputWithContext(ctx context.Context) PlanRuleArrayOutput

type PlanRuleCopyAction

type PlanRuleCopyAction struct {
	// An Amazon Resource Name (ARN) that uniquely identifies the destination backup vault for the copied backup.
	DestinationVaultArn string `pulumi:"destinationVaultArn"`
	// The lifecycle defines when a protected resource is transitioned to cold storage and when it expires.  Fields documented below.
	Lifecycle *PlanRuleCopyActionLifecycle `pulumi:"lifecycle"`
}

type PlanRuleCopyActionArgs

type PlanRuleCopyActionArgs struct {
	// An Amazon Resource Name (ARN) that uniquely identifies the destination backup vault for the copied backup.
	DestinationVaultArn pulumi.StringInput `pulumi:"destinationVaultArn"`
	// The lifecycle defines when a protected resource is transitioned to cold storage and when it expires.  Fields documented below.
	Lifecycle PlanRuleCopyActionLifecyclePtrInput `pulumi:"lifecycle"`
}

func (PlanRuleCopyActionArgs) ElementType

func (PlanRuleCopyActionArgs) ElementType() reflect.Type

func (PlanRuleCopyActionArgs) ToPlanRuleCopyActionOutput

func (i PlanRuleCopyActionArgs) ToPlanRuleCopyActionOutput() PlanRuleCopyActionOutput

func (PlanRuleCopyActionArgs) ToPlanRuleCopyActionOutputWithContext

func (i PlanRuleCopyActionArgs) ToPlanRuleCopyActionOutputWithContext(ctx context.Context) PlanRuleCopyActionOutput

type PlanRuleCopyActionArray

type PlanRuleCopyActionArray []PlanRuleCopyActionInput

func (PlanRuleCopyActionArray) ElementType

func (PlanRuleCopyActionArray) ElementType() reflect.Type

func (PlanRuleCopyActionArray) ToPlanRuleCopyActionArrayOutput

func (i PlanRuleCopyActionArray) ToPlanRuleCopyActionArrayOutput() PlanRuleCopyActionArrayOutput

func (PlanRuleCopyActionArray) ToPlanRuleCopyActionArrayOutputWithContext

func (i PlanRuleCopyActionArray) ToPlanRuleCopyActionArrayOutputWithContext(ctx context.Context) PlanRuleCopyActionArrayOutput

type PlanRuleCopyActionArrayInput

type PlanRuleCopyActionArrayInput interface {
	pulumi.Input

	ToPlanRuleCopyActionArrayOutput() PlanRuleCopyActionArrayOutput
	ToPlanRuleCopyActionArrayOutputWithContext(context.Context) PlanRuleCopyActionArrayOutput
}

PlanRuleCopyActionArrayInput is an input type that accepts PlanRuleCopyActionArray and PlanRuleCopyActionArrayOutput values. You can construct a concrete instance of `PlanRuleCopyActionArrayInput` via:

PlanRuleCopyActionArray{ PlanRuleCopyActionArgs{...} }

type PlanRuleCopyActionArrayOutput

type PlanRuleCopyActionArrayOutput struct{ *pulumi.OutputState }

func (PlanRuleCopyActionArrayOutput) ElementType

func (PlanRuleCopyActionArrayOutput) Index

func (PlanRuleCopyActionArrayOutput) ToPlanRuleCopyActionArrayOutput

func (o PlanRuleCopyActionArrayOutput) ToPlanRuleCopyActionArrayOutput() PlanRuleCopyActionArrayOutput

func (PlanRuleCopyActionArrayOutput) ToPlanRuleCopyActionArrayOutputWithContext

func (o PlanRuleCopyActionArrayOutput) ToPlanRuleCopyActionArrayOutputWithContext(ctx context.Context) PlanRuleCopyActionArrayOutput

type PlanRuleCopyActionInput

type PlanRuleCopyActionInput interface {
	pulumi.Input

	ToPlanRuleCopyActionOutput() PlanRuleCopyActionOutput
	ToPlanRuleCopyActionOutputWithContext(context.Context) PlanRuleCopyActionOutput
}

PlanRuleCopyActionInput is an input type that accepts PlanRuleCopyActionArgs and PlanRuleCopyActionOutput values. You can construct a concrete instance of `PlanRuleCopyActionInput` via:

PlanRuleCopyActionArgs{...}

type PlanRuleCopyActionLifecycle

type PlanRuleCopyActionLifecycle struct {
	// Specifies the number of days after creation that a recovery point is moved to cold storage.
	ColdStorageAfter *int `pulumi:"coldStorageAfter"`
	// Specifies the number of days after creation that a recovery point is deleted. Must be 90 days greater than `coldStorageAfter`.
	DeleteAfter *int `pulumi:"deleteAfter"`
}

type PlanRuleCopyActionLifecycleArgs

type PlanRuleCopyActionLifecycleArgs struct {
	// Specifies the number of days after creation that a recovery point is moved to cold storage.
	ColdStorageAfter pulumi.IntPtrInput `pulumi:"coldStorageAfter"`
	// Specifies the number of days after creation that a recovery point is deleted. Must be 90 days greater than `coldStorageAfter`.
	DeleteAfter pulumi.IntPtrInput `pulumi:"deleteAfter"`
}

func (PlanRuleCopyActionLifecycleArgs) ElementType

func (PlanRuleCopyActionLifecycleArgs) ToPlanRuleCopyActionLifecycleOutput

func (i PlanRuleCopyActionLifecycleArgs) ToPlanRuleCopyActionLifecycleOutput() PlanRuleCopyActionLifecycleOutput

func (PlanRuleCopyActionLifecycleArgs) ToPlanRuleCopyActionLifecycleOutputWithContext

func (i PlanRuleCopyActionLifecycleArgs) ToPlanRuleCopyActionLifecycleOutputWithContext(ctx context.Context) PlanRuleCopyActionLifecycleOutput

func (PlanRuleCopyActionLifecycleArgs) ToPlanRuleCopyActionLifecyclePtrOutput

func (i PlanRuleCopyActionLifecycleArgs) ToPlanRuleCopyActionLifecyclePtrOutput() PlanRuleCopyActionLifecyclePtrOutput

func (PlanRuleCopyActionLifecycleArgs) ToPlanRuleCopyActionLifecyclePtrOutputWithContext

func (i PlanRuleCopyActionLifecycleArgs) ToPlanRuleCopyActionLifecyclePtrOutputWithContext(ctx context.Context) PlanRuleCopyActionLifecyclePtrOutput

type PlanRuleCopyActionLifecycleInput

type PlanRuleCopyActionLifecycleInput interface {
	pulumi.Input

	ToPlanRuleCopyActionLifecycleOutput() PlanRuleCopyActionLifecycleOutput
	ToPlanRuleCopyActionLifecycleOutputWithContext(context.Context) PlanRuleCopyActionLifecycleOutput
}

PlanRuleCopyActionLifecycleInput is an input type that accepts PlanRuleCopyActionLifecycleArgs and PlanRuleCopyActionLifecycleOutput values. You can construct a concrete instance of `PlanRuleCopyActionLifecycleInput` via:

PlanRuleCopyActionLifecycleArgs{...}

type PlanRuleCopyActionLifecycleOutput

type PlanRuleCopyActionLifecycleOutput struct{ *pulumi.OutputState }

func (PlanRuleCopyActionLifecycleOutput) ColdStorageAfter

Specifies the number of days after creation that a recovery point is moved to cold storage.

func (PlanRuleCopyActionLifecycleOutput) DeleteAfter

Specifies the number of days after creation that a recovery point is deleted. Must be 90 days greater than `coldStorageAfter`.

func (PlanRuleCopyActionLifecycleOutput) ElementType

func (PlanRuleCopyActionLifecycleOutput) ToPlanRuleCopyActionLifecycleOutput

func (o PlanRuleCopyActionLifecycleOutput) ToPlanRuleCopyActionLifecycleOutput() PlanRuleCopyActionLifecycleOutput

func (PlanRuleCopyActionLifecycleOutput) ToPlanRuleCopyActionLifecycleOutputWithContext

func (o PlanRuleCopyActionLifecycleOutput) ToPlanRuleCopyActionLifecycleOutputWithContext(ctx context.Context) PlanRuleCopyActionLifecycleOutput

func (PlanRuleCopyActionLifecycleOutput) ToPlanRuleCopyActionLifecyclePtrOutput

func (o PlanRuleCopyActionLifecycleOutput) ToPlanRuleCopyActionLifecyclePtrOutput() PlanRuleCopyActionLifecyclePtrOutput

func (PlanRuleCopyActionLifecycleOutput) ToPlanRuleCopyActionLifecyclePtrOutputWithContext

func (o PlanRuleCopyActionLifecycleOutput) ToPlanRuleCopyActionLifecyclePtrOutputWithContext(ctx context.Context) PlanRuleCopyActionLifecyclePtrOutput

type PlanRuleCopyActionLifecyclePtrInput

type PlanRuleCopyActionLifecyclePtrInput interface {
	pulumi.Input

	ToPlanRuleCopyActionLifecyclePtrOutput() PlanRuleCopyActionLifecyclePtrOutput
	ToPlanRuleCopyActionLifecyclePtrOutputWithContext(context.Context) PlanRuleCopyActionLifecyclePtrOutput
}

PlanRuleCopyActionLifecyclePtrInput is an input type that accepts PlanRuleCopyActionLifecycleArgs, PlanRuleCopyActionLifecyclePtr and PlanRuleCopyActionLifecyclePtrOutput values. You can construct a concrete instance of `PlanRuleCopyActionLifecyclePtrInput` via:

        PlanRuleCopyActionLifecycleArgs{...}

or:

        nil

type PlanRuleCopyActionLifecyclePtrOutput

type PlanRuleCopyActionLifecyclePtrOutput struct{ *pulumi.OutputState }

func (PlanRuleCopyActionLifecyclePtrOutput) ColdStorageAfter

Specifies the number of days after creation that a recovery point is moved to cold storage.

func (PlanRuleCopyActionLifecyclePtrOutput) DeleteAfter

Specifies the number of days after creation that a recovery point is deleted. Must be 90 days greater than `coldStorageAfter`.

func (PlanRuleCopyActionLifecyclePtrOutput) Elem

func (PlanRuleCopyActionLifecyclePtrOutput) ElementType

func (PlanRuleCopyActionLifecyclePtrOutput) ToPlanRuleCopyActionLifecyclePtrOutput

func (o PlanRuleCopyActionLifecyclePtrOutput) ToPlanRuleCopyActionLifecyclePtrOutput() PlanRuleCopyActionLifecyclePtrOutput

func (PlanRuleCopyActionLifecyclePtrOutput) ToPlanRuleCopyActionLifecyclePtrOutputWithContext

func (o PlanRuleCopyActionLifecyclePtrOutput) ToPlanRuleCopyActionLifecyclePtrOutputWithContext(ctx context.Context) PlanRuleCopyActionLifecyclePtrOutput

type PlanRuleCopyActionOutput

type PlanRuleCopyActionOutput struct{ *pulumi.OutputState }

func (PlanRuleCopyActionOutput) DestinationVaultArn

func (o PlanRuleCopyActionOutput) DestinationVaultArn() pulumi.StringOutput

An Amazon Resource Name (ARN) that uniquely identifies the destination backup vault for the copied backup.

func (PlanRuleCopyActionOutput) ElementType

func (PlanRuleCopyActionOutput) ElementType() reflect.Type

func (PlanRuleCopyActionOutput) Lifecycle

The lifecycle defines when a protected resource is transitioned to cold storage and when it expires. Fields documented below.

func (PlanRuleCopyActionOutput) ToPlanRuleCopyActionOutput

func (o PlanRuleCopyActionOutput) ToPlanRuleCopyActionOutput() PlanRuleCopyActionOutput

func (PlanRuleCopyActionOutput) ToPlanRuleCopyActionOutputWithContext

func (o PlanRuleCopyActionOutput) ToPlanRuleCopyActionOutputWithContext(ctx context.Context) PlanRuleCopyActionOutput

type PlanRuleInput

type PlanRuleInput interface {
	pulumi.Input

	ToPlanRuleOutput() PlanRuleOutput
	ToPlanRuleOutputWithContext(context.Context) PlanRuleOutput
}

PlanRuleInput is an input type that accepts PlanRuleArgs and PlanRuleOutput values. You can construct a concrete instance of `PlanRuleInput` via:

PlanRuleArgs{...}

type PlanRuleLifecycle

type PlanRuleLifecycle struct {
	// Specifies the number of days after creation that a recovery point is moved to cold storage.
	ColdStorageAfter *int `pulumi:"coldStorageAfter"`
	// Specifies the number of days after creation that a recovery point is deleted. Must be 90 days greater than `coldStorageAfter`.
	DeleteAfter *int `pulumi:"deleteAfter"`
}

type PlanRuleLifecycleArgs

type PlanRuleLifecycleArgs struct {
	// Specifies the number of days after creation that a recovery point is moved to cold storage.
	ColdStorageAfter pulumi.IntPtrInput `pulumi:"coldStorageAfter"`
	// Specifies the number of days after creation that a recovery point is deleted. Must be 90 days greater than `coldStorageAfter`.
	DeleteAfter pulumi.IntPtrInput `pulumi:"deleteAfter"`
}

func (PlanRuleLifecycleArgs) ElementType

func (PlanRuleLifecycleArgs) ElementType() reflect.Type

func (PlanRuleLifecycleArgs) ToPlanRuleLifecycleOutput

func (i PlanRuleLifecycleArgs) ToPlanRuleLifecycleOutput() PlanRuleLifecycleOutput

func (PlanRuleLifecycleArgs) ToPlanRuleLifecycleOutputWithContext

func (i PlanRuleLifecycleArgs) ToPlanRuleLifecycleOutputWithContext(ctx context.Context) PlanRuleLifecycleOutput

func (PlanRuleLifecycleArgs) ToPlanRuleLifecyclePtrOutput

func (i PlanRuleLifecycleArgs) ToPlanRuleLifecyclePtrOutput() PlanRuleLifecyclePtrOutput

func (PlanRuleLifecycleArgs) ToPlanRuleLifecyclePtrOutputWithContext

func (i PlanRuleLifecycleArgs) ToPlanRuleLifecyclePtrOutputWithContext(ctx context.Context) PlanRuleLifecyclePtrOutput

type PlanRuleLifecycleInput

type PlanRuleLifecycleInput interface {
	pulumi.Input

	ToPlanRuleLifecycleOutput() PlanRuleLifecycleOutput
	ToPlanRuleLifecycleOutputWithContext(context.Context) PlanRuleLifecycleOutput
}

PlanRuleLifecycleInput is an input type that accepts PlanRuleLifecycleArgs and PlanRuleLifecycleOutput values. You can construct a concrete instance of `PlanRuleLifecycleInput` via:

PlanRuleLifecycleArgs{...}

type PlanRuleLifecycleOutput

type PlanRuleLifecycleOutput struct{ *pulumi.OutputState }

func (PlanRuleLifecycleOutput) ColdStorageAfter

func (o PlanRuleLifecycleOutput) ColdStorageAfter() pulumi.IntPtrOutput

Specifies the number of days after creation that a recovery point is moved to cold storage.

func (PlanRuleLifecycleOutput) DeleteAfter

Specifies the number of days after creation that a recovery point is deleted. Must be 90 days greater than `coldStorageAfter`.

func (PlanRuleLifecycleOutput) ElementType

func (PlanRuleLifecycleOutput) ElementType() reflect.Type

func (PlanRuleLifecycleOutput) ToPlanRuleLifecycleOutput

func (o PlanRuleLifecycleOutput) ToPlanRuleLifecycleOutput() PlanRuleLifecycleOutput

func (PlanRuleLifecycleOutput) ToPlanRuleLifecycleOutputWithContext

func (o PlanRuleLifecycleOutput) ToPlanRuleLifecycleOutputWithContext(ctx context.Context) PlanRuleLifecycleOutput

func (PlanRuleLifecycleOutput) ToPlanRuleLifecyclePtrOutput

func (o PlanRuleLifecycleOutput) ToPlanRuleLifecyclePtrOutput() PlanRuleLifecyclePtrOutput

func (PlanRuleLifecycleOutput) ToPlanRuleLifecyclePtrOutputWithContext

func (o PlanRuleLifecycleOutput) ToPlanRuleLifecyclePtrOutputWithContext(ctx context.Context) PlanRuleLifecyclePtrOutput

type PlanRuleLifecyclePtrInput

type PlanRuleLifecyclePtrInput interface {
	pulumi.Input

	ToPlanRuleLifecyclePtrOutput() PlanRuleLifecyclePtrOutput
	ToPlanRuleLifecyclePtrOutputWithContext(context.Context) PlanRuleLifecyclePtrOutput
}

PlanRuleLifecyclePtrInput is an input type that accepts PlanRuleLifecycleArgs, PlanRuleLifecyclePtr and PlanRuleLifecyclePtrOutput values. You can construct a concrete instance of `PlanRuleLifecyclePtrInput` via:

        PlanRuleLifecycleArgs{...}

or:

        nil

type PlanRuleLifecyclePtrOutput

type PlanRuleLifecyclePtrOutput struct{ *pulumi.OutputState }

func (PlanRuleLifecyclePtrOutput) ColdStorageAfter

func (o PlanRuleLifecyclePtrOutput) ColdStorageAfter() pulumi.IntPtrOutput

Specifies the number of days after creation that a recovery point is moved to cold storage.

func (PlanRuleLifecyclePtrOutput) DeleteAfter

Specifies the number of days after creation that a recovery point is deleted. Must be 90 days greater than `coldStorageAfter`.

func (PlanRuleLifecyclePtrOutput) Elem

func (PlanRuleLifecyclePtrOutput) ElementType

func (PlanRuleLifecyclePtrOutput) ElementType() reflect.Type

func (PlanRuleLifecyclePtrOutput) ToPlanRuleLifecyclePtrOutput

func (o PlanRuleLifecyclePtrOutput) ToPlanRuleLifecyclePtrOutput() PlanRuleLifecyclePtrOutput

func (PlanRuleLifecyclePtrOutput) ToPlanRuleLifecyclePtrOutputWithContext

func (o PlanRuleLifecyclePtrOutput) ToPlanRuleLifecyclePtrOutputWithContext(ctx context.Context) PlanRuleLifecyclePtrOutput

type PlanRuleOutput

type PlanRuleOutput struct{ *pulumi.OutputState }

func (PlanRuleOutput) CompletionWindow

func (o PlanRuleOutput) CompletionWindow() pulumi.IntPtrOutput

The amount of time in minutes AWS Backup attempts a backup before canceling the job and returning an error.

func (PlanRuleOutput) CopyActions

Configuration block(s) with copy operation settings. Detailed below.

func (PlanRuleOutput) ElementType

func (PlanRuleOutput) ElementType() reflect.Type

func (PlanRuleOutput) EnableContinuousBackup

func (o PlanRuleOutput) EnableContinuousBackup() pulumi.BoolPtrOutput

Enable continuous backups for supported resources.

func (PlanRuleOutput) Lifecycle

The lifecycle defines when a protected resource is transitioned to cold storage and when it expires. Fields documented below.

func (PlanRuleOutput) RecoveryPointTags

func (o PlanRuleOutput) RecoveryPointTags() pulumi.StringMapOutput

Metadata that you can assign to help organize the resources that you create.

func (PlanRuleOutput) RuleName

func (o PlanRuleOutput) RuleName() pulumi.StringOutput

An display name for a backup rule.

func (PlanRuleOutput) Schedule

func (o PlanRuleOutput) Schedule() pulumi.StringPtrOutput

A CRON expression specifying when AWS Backup initiates a backup job.

func (PlanRuleOutput) StartWindow

func (o PlanRuleOutput) StartWindow() pulumi.IntPtrOutput

The amount of time in minutes before beginning a backup.

func (PlanRuleOutput) TargetVaultName

func (o PlanRuleOutput) TargetVaultName() pulumi.StringOutput

The name of a logical container where backups are stored.

func (PlanRuleOutput) ToPlanRuleOutput

func (o PlanRuleOutput) ToPlanRuleOutput() PlanRuleOutput

func (PlanRuleOutput) ToPlanRuleOutputWithContext

func (o PlanRuleOutput) ToPlanRuleOutputWithContext(ctx context.Context) PlanRuleOutput

type PlanState

type PlanState struct {
	// An object that specifies backup options for each resource type.
	AdvancedBackupSettings PlanAdvancedBackupSettingArrayInput
	// The ARN of the backup plan.
	Arn pulumi.StringPtrInput
	// The display name of a backup plan.
	Name pulumi.StringPtrInput
	// A rule object that specifies a scheduled task that is used to back up a selection of resources.
	Rules PlanRuleArrayInput
	// Metadata that you can assign to help organize the plans you create. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
	// Unique, randomly generated, Unicode, UTF-8 encoded string that serves as the version ID of the backup plan.
	Version pulumi.StringPtrInput
}

func (PlanState) ElementType

func (PlanState) ElementType() reflect.Type

type RegionSettings

type RegionSettings struct {
	pulumi.CustomResourceState

	// A map of services along with the management preferences for the Region.
	ResourceTypeManagementPreference pulumi.BoolMapOutput `pulumi:"resourceTypeManagementPreference"`
	// A map of services along with the opt-in preferences for the Region.
	ResourceTypeOptInPreference pulumi.BoolMapOutput `pulumi:"resourceTypeOptInPreference"`
}

Provides an AWS Backup Region Settings resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := backup.NewRegionSettings(ctx, "test", &backup.RegionSettingsArgs{
			ResourceTypeManagementPreference: pulumi.BoolMap{
				"DynamoDB": pulumi.Bool(true),
				"EFS":      pulumi.Bool(true),
			},
			ResourceTypeOptInPreference: pulumi.BoolMap{
				"Aurora":          pulumi.Bool(true),
				"DocumentDB":      pulumi.Bool(true),
				"DynamoDB":        pulumi.Bool(true),
				"EBS":             pulumi.Bool(true),
				"EC2":             pulumi.Bool(true),
				"EFS":             pulumi.Bool(true),
				"FSx":             pulumi.Bool(true),
				"Neptune":         pulumi.Bool(true),
				"RDS":             pulumi.Bool(true),
				"Storage Gateway": pulumi.Bool(true),
				"VirtualMachine":  pulumi.Bool(true),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Backup Region Settings can be imported using the `region`, e.g.,

```sh

$ pulumi import aws:backup/regionSettings:RegionSettings test us-west-2

```

func GetRegionSettings

func GetRegionSettings(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RegionSettingsState, opts ...pulumi.ResourceOption) (*RegionSettings, error)

GetRegionSettings gets an existing RegionSettings 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 NewRegionSettings

func NewRegionSettings(ctx *pulumi.Context,
	name string, args *RegionSettingsArgs, opts ...pulumi.ResourceOption) (*RegionSettings, error)

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

func (*RegionSettings) ElementType

func (*RegionSettings) ElementType() reflect.Type

func (*RegionSettings) ToRegionSettingsOutput

func (i *RegionSettings) ToRegionSettingsOutput() RegionSettingsOutput

func (*RegionSettings) ToRegionSettingsOutputWithContext

func (i *RegionSettings) ToRegionSettingsOutputWithContext(ctx context.Context) RegionSettingsOutput

type RegionSettingsArgs

type RegionSettingsArgs struct {
	// A map of services along with the management preferences for the Region.
	ResourceTypeManagementPreference pulumi.BoolMapInput
	// A map of services along with the opt-in preferences for the Region.
	ResourceTypeOptInPreference pulumi.BoolMapInput
}

The set of arguments for constructing a RegionSettings resource.

func (RegionSettingsArgs) ElementType

func (RegionSettingsArgs) ElementType() reflect.Type

type RegionSettingsArray

type RegionSettingsArray []RegionSettingsInput

func (RegionSettingsArray) ElementType

func (RegionSettingsArray) ElementType() reflect.Type

func (RegionSettingsArray) ToRegionSettingsArrayOutput

func (i RegionSettingsArray) ToRegionSettingsArrayOutput() RegionSettingsArrayOutput

func (RegionSettingsArray) ToRegionSettingsArrayOutputWithContext

func (i RegionSettingsArray) ToRegionSettingsArrayOutputWithContext(ctx context.Context) RegionSettingsArrayOutput

type RegionSettingsArrayInput

type RegionSettingsArrayInput interface {
	pulumi.Input

	ToRegionSettingsArrayOutput() RegionSettingsArrayOutput
	ToRegionSettingsArrayOutputWithContext(context.Context) RegionSettingsArrayOutput
}

RegionSettingsArrayInput is an input type that accepts RegionSettingsArray and RegionSettingsArrayOutput values. You can construct a concrete instance of `RegionSettingsArrayInput` via:

RegionSettingsArray{ RegionSettingsArgs{...} }

type RegionSettingsArrayOutput

type RegionSettingsArrayOutput struct{ *pulumi.OutputState }

func (RegionSettingsArrayOutput) ElementType

func (RegionSettingsArrayOutput) ElementType() reflect.Type

func (RegionSettingsArrayOutput) Index

func (RegionSettingsArrayOutput) ToRegionSettingsArrayOutput

func (o RegionSettingsArrayOutput) ToRegionSettingsArrayOutput() RegionSettingsArrayOutput

func (RegionSettingsArrayOutput) ToRegionSettingsArrayOutputWithContext

func (o RegionSettingsArrayOutput) ToRegionSettingsArrayOutputWithContext(ctx context.Context) RegionSettingsArrayOutput

type RegionSettingsInput

type RegionSettingsInput interface {
	pulumi.Input

	ToRegionSettingsOutput() RegionSettingsOutput
	ToRegionSettingsOutputWithContext(ctx context.Context) RegionSettingsOutput
}

type RegionSettingsMap

type RegionSettingsMap map[string]RegionSettingsInput

func (RegionSettingsMap) ElementType

func (RegionSettingsMap) ElementType() reflect.Type

func (RegionSettingsMap) ToRegionSettingsMapOutput

func (i RegionSettingsMap) ToRegionSettingsMapOutput() RegionSettingsMapOutput

func (RegionSettingsMap) ToRegionSettingsMapOutputWithContext

func (i RegionSettingsMap) ToRegionSettingsMapOutputWithContext(ctx context.Context) RegionSettingsMapOutput

type RegionSettingsMapInput

type RegionSettingsMapInput interface {
	pulumi.Input

	ToRegionSettingsMapOutput() RegionSettingsMapOutput
	ToRegionSettingsMapOutputWithContext(context.Context) RegionSettingsMapOutput
}

RegionSettingsMapInput is an input type that accepts RegionSettingsMap and RegionSettingsMapOutput values. You can construct a concrete instance of `RegionSettingsMapInput` via:

RegionSettingsMap{ "key": RegionSettingsArgs{...} }

type RegionSettingsMapOutput

type RegionSettingsMapOutput struct{ *pulumi.OutputState }

func (RegionSettingsMapOutput) ElementType

func (RegionSettingsMapOutput) ElementType() reflect.Type

func (RegionSettingsMapOutput) MapIndex

func (RegionSettingsMapOutput) ToRegionSettingsMapOutput

func (o RegionSettingsMapOutput) ToRegionSettingsMapOutput() RegionSettingsMapOutput

func (RegionSettingsMapOutput) ToRegionSettingsMapOutputWithContext

func (o RegionSettingsMapOutput) ToRegionSettingsMapOutputWithContext(ctx context.Context) RegionSettingsMapOutput

type RegionSettingsOutput

type RegionSettingsOutput struct{ *pulumi.OutputState }

func (RegionSettingsOutput) ElementType

func (RegionSettingsOutput) ElementType() reflect.Type

func (RegionSettingsOutput) ResourceTypeManagementPreference added in v5.4.0

func (o RegionSettingsOutput) ResourceTypeManagementPreference() pulumi.BoolMapOutput

A map of services along with the management preferences for the Region.

func (RegionSettingsOutput) ResourceTypeOptInPreference added in v5.4.0

func (o RegionSettingsOutput) ResourceTypeOptInPreference() pulumi.BoolMapOutput

A map of services along with the opt-in preferences for the Region.

func (RegionSettingsOutput) ToRegionSettingsOutput

func (o RegionSettingsOutput) ToRegionSettingsOutput() RegionSettingsOutput

func (RegionSettingsOutput) ToRegionSettingsOutputWithContext

func (o RegionSettingsOutput) ToRegionSettingsOutputWithContext(ctx context.Context) RegionSettingsOutput

type RegionSettingsState

type RegionSettingsState struct {
	// A map of services along with the management preferences for the Region.
	ResourceTypeManagementPreference pulumi.BoolMapInput
	// A map of services along with the opt-in preferences for the Region.
	ResourceTypeOptInPreference pulumi.BoolMapInput
}

func (RegionSettingsState) ElementType

func (RegionSettingsState) ElementType() reflect.Type

type ReportPlan added in v5.1.0

type ReportPlan struct {
	pulumi.CustomResourceState

	// The ARN of the backup report plan.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The date and time that a report plan is created, in Unix format and Coordinated Universal Time (UTC).
	CreationTime pulumi.StringOutput `pulumi:"creationTime"`
	// The deployment status of a report plan. The statuses are: `CREATE_IN_PROGRESS` | `UPDATE_IN_PROGRESS` | `DELETE_IN_PROGRESS` | `COMPLETED`.
	DeploymentStatus pulumi.StringOutput `pulumi:"deploymentStatus"`
	// The description of the report plan with a maximum of 1,024 characters
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The unique name of the report plan. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
	Name pulumi.StringOutput `pulumi:"name"`
	// An object that contains information about where and how to deliver your reports, specifically your Amazon S3 bucket name, S3 key prefix, and the formats of your reports. Detailed below.
	ReportDeliveryChannel ReportPlanReportDeliveryChannelOutput `pulumi:"reportDeliveryChannel"`
	// An object that identifies the report template for the report. Reports are built using a report template. Detailed below.
	ReportSetting ReportPlanReportSettingOutput `pulumi:"reportSetting"`
	// Metadata that you can assign to help organize the report plans you create. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides an AWS Backup Report Plan resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := backup.NewReportPlan(ctx, "example", &backup.ReportPlanArgs{
			Description: pulumi.String("example description"),
			ReportDeliveryChannel: &backup.ReportPlanReportDeliveryChannelArgs{
				Formats: pulumi.StringArray{
					pulumi.String("CSV"),
					pulumi.String("JSON"),
				},
				S3BucketName: pulumi.String("example-bucket-name"),
			},
			ReportSetting: &backup.ReportPlanReportSettingArgs{
				ReportTemplate: pulumi.String("RESTORE_JOB_REPORT"),
			},
			Tags: pulumi.StringMap{
				"Name": pulumi.String("Example Report Plan"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Backup Report Plan can be imported using the `id` which corresponds to the name of the Backup Report Plan, e.g.,

```sh

$ pulumi import aws:backup/reportPlan:ReportPlan test <id>

```

func GetReportPlan added in v5.1.0

func GetReportPlan(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ReportPlanState, opts ...pulumi.ResourceOption) (*ReportPlan, error)

GetReportPlan gets an existing ReportPlan 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 NewReportPlan added in v5.1.0

func NewReportPlan(ctx *pulumi.Context,
	name string, args *ReportPlanArgs, opts ...pulumi.ResourceOption) (*ReportPlan, error)

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

func (*ReportPlan) ElementType added in v5.1.0

func (*ReportPlan) ElementType() reflect.Type

func (*ReportPlan) ToReportPlanOutput added in v5.1.0

func (i *ReportPlan) ToReportPlanOutput() ReportPlanOutput

func (*ReportPlan) ToReportPlanOutputWithContext added in v5.1.0

func (i *ReportPlan) ToReportPlanOutputWithContext(ctx context.Context) ReportPlanOutput

type ReportPlanArgs added in v5.1.0

type ReportPlanArgs struct {
	// The description of the report plan with a maximum of 1,024 characters
	Description pulumi.StringPtrInput
	// The unique name of the report plan. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
	Name pulumi.StringPtrInput
	// An object that contains information about where and how to deliver your reports, specifically your Amazon S3 bucket name, S3 key prefix, and the formats of your reports. Detailed below.
	ReportDeliveryChannel ReportPlanReportDeliveryChannelInput
	// An object that identifies the report template for the report. Reports are built using a report template. Detailed below.
	ReportSetting ReportPlanReportSettingInput
	// Metadata that you can assign to help organize the report plans you create. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ReportPlan resource.

func (ReportPlanArgs) ElementType added in v5.1.0

func (ReportPlanArgs) ElementType() reflect.Type

type ReportPlanArray added in v5.1.0

type ReportPlanArray []ReportPlanInput

func (ReportPlanArray) ElementType added in v5.1.0

func (ReportPlanArray) ElementType() reflect.Type

func (ReportPlanArray) ToReportPlanArrayOutput added in v5.1.0

func (i ReportPlanArray) ToReportPlanArrayOutput() ReportPlanArrayOutput

func (ReportPlanArray) ToReportPlanArrayOutputWithContext added in v5.1.0

func (i ReportPlanArray) ToReportPlanArrayOutputWithContext(ctx context.Context) ReportPlanArrayOutput

type ReportPlanArrayInput added in v5.1.0

type ReportPlanArrayInput interface {
	pulumi.Input

	ToReportPlanArrayOutput() ReportPlanArrayOutput
	ToReportPlanArrayOutputWithContext(context.Context) ReportPlanArrayOutput
}

ReportPlanArrayInput is an input type that accepts ReportPlanArray and ReportPlanArrayOutput values. You can construct a concrete instance of `ReportPlanArrayInput` via:

ReportPlanArray{ ReportPlanArgs{...} }

type ReportPlanArrayOutput added in v5.1.0

type ReportPlanArrayOutput struct{ *pulumi.OutputState }

func (ReportPlanArrayOutput) ElementType added in v5.1.0

func (ReportPlanArrayOutput) ElementType() reflect.Type

func (ReportPlanArrayOutput) Index added in v5.1.0

func (ReportPlanArrayOutput) ToReportPlanArrayOutput added in v5.1.0

func (o ReportPlanArrayOutput) ToReportPlanArrayOutput() ReportPlanArrayOutput

func (ReportPlanArrayOutput) ToReportPlanArrayOutputWithContext added in v5.1.0

func (o ReportPlanArrayOutput) ToReportPlanArrayOutputWithContext(ctx context.Context) ReportPlanArrayOutput

type ReportPlanInput added in v5.1.0

type ReportPlanInput interface {
	pulumi.Input

	ToReportPlanOutput() ReportPlanOutput
	ToReportPlanOutputWithContext(ctx context.Context) ReportPlanOutput
}

type ReportPlanMap added in v5.1.0

type ReportPlanMap map[string]ReportPlanInput

func (ReportPlanMap) ElementType added in v5.1.0

func (ReportPlanMap) ElementType() reflect.Type

func (ReportPlanMap) ToReportPlanMapOutput added in v5.1.0

func (i ReportPlanMap) ToReportPlanMapOutput() ReportPlanMapOutput

func (ReportPlanMap) ToReportPlanMapOutputWithContext added in v5.1.0

func (i ReportPlanMap) ToReportPlanMapOutputWithContext(ctx context.Context) ReportPlanMapOutput

type ReportPlanMapInput added in v5.1.0

type ReportPlanMapInput interface {
	pulumi.Input

	ToReportPlanMapOutput() ReportPlanMapOutput
	ToReportPlanMapOutputWithContext(context.Context) ReportPlanMapOutput
}

ReportPlanMapInput is an input type that accepts ReportPlanMap and ReportPlanMapOutput values. You can construct a concrete instance of `ReportPlanMapInput` via:

ReportPlanMap{ "key": ReportPlanArgs{...} }

type ReportPlanMapOutput added in v5.1.0

type ReportPlanMapOutput struct{ *pulumi.OutputState }

func (ReportPlanMapOutput) ElementType added in v5.1.0

func (ReportPlanMapOutput) ElementType() reflect.Type

func (ReportPlanMapOutput) MapIndex added in v5.1.0

func (ReportPlanMapOutput) ToReportPlanMapOutput added in v5.1.0

func (o ReportPlanMapOutput) ToReportPlanMapOutput() ReportPlanMapOutput

func (ReportPlanMapOutput) ToReportPlanMapOutputWithContext added in v5.1.0

func (o ReportPlanMapOutput) ToReportPlanMapOutputWithContext(ctx context.Context) ReportPlanMapOutput

type ReportPlanOutput added in v5.1.0

type ReportPlanOutput struct{ *pulumi.OutputState }

func (ReportPlanOutput) Arn added in v5.4.0

The ARN of the backup report plan.

func (ReportPlanOutput) CreationTime added in v5.4.0

func (o ReportPlanOutput) CreationTime() pulumi.StringOutput

The date and time that a report plan is created, in Unix format and Coordinated Universal Time (UTC).

func (ReportPlanOutput) DeploymentStatus added in v5.4.0

func (o ReportPlanOutput) DeploymentStatus() pulumi.StringOutput

The deployment status of a report plan. The statuses are: `CREATE_IN_PROGRESS` | `UPDATE_IN_PROGRESS` | `DELETE_IN_PROGRESS` | `COMPLETED`.

func (ReportPlanOutput) Description added in v5.4.0

func (o ReportPlanOutput) Description() pulumi.StringPtrOutput

The description of the report plan with a maximum of 1,024 characters

func (ReportPlanOutput) ElementType added in v5.1.0

func (ReportPlanOutput) ElementType() reflect.Type

func (ReportPlanOutput) Name added in v5.4.0

The unique name of the report plan. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.

func (ReportPlanOutput) ReportDeliveryChannel added in v5.4.0

func (o ReportPlanOutput) ReportDeliveryChannel() ReportPlanReportDeliveryChannelOutput

An object that contains information about where and how to deliver your reports, specifically your Amazon S3 bucket name, S3 key prefix, and the formats of your reports. Detailed below.

func (ReportPlanOutput) ReportSetting added in v5.4.0

An object that identifies the report template for the report. Reports are built using a report template. Detailed below.

func (ReportPlanOutput) Tags added in v5.4.0

Metadata that you can assign to help organize the report plans you create. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (ReportPlanOutput) TagsAll added in v5.4.0

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (ReportPlanOutput) ToReportPlanOutput added in v5.1.0

func (o ReportPlanOutput) ToReportPlanOutput() ReportPlanOutput

func (ReportPlanOutput) ToReportPlanOutputWithContext added in v5.1.0

func (o ReportPlanOutput) ToReportPlanOutputWithContext(ctx context.Context) ReportPlanOutput

type ReportPlanReportDeliveryChannel added in v5.1.0

type ReportPlanReportDeliveryChannel struct {
	// A list of the format of your reports: CSV, JSON, or both. If not specified, the default format is CSV.
	Formats []string `pulumi:"formats"`
	// The unique name of the S3 bucket that receives your reports.
	S3BucketName string `pulumi:"s3BucketName"`
	// The prefix for where Backup Audit Manager delivers your reports to Amazon S3. The prefix is this part of the following path: s3://your-bucket-name/prefix/Backup/us-west-2/year/month/day/report-name. If not specified, there is no prefix.
	S3KeyPrefix *string `pulumi:"s3KeyPrefix"`
}

type ReportPlanReportDeliveryChannelArgs added in v5.1.0

type ReportPlanReportDeliveryChannelArgs struct {
	// A list of the format of your reports: CSV, JSON, or both. If not specified, the default format is CSV.
	Formats pulumi.StringArrayInput `pulumi:"formats"`
	// The unique name of the S3 bucket that receives your reports.
	S3BucketName pulumi.StringInput `pulumi:"s3BucketName"`
	// The prefix for where Backup Audit Manager delivers your reports to Amazon S3. The prefix is this part of the following path: s3://your-bucket-name/prefix/Backup/us-west-2/year/month/day/report-name. If not specified, there is no prefix.
	S3KeyPrefix pulumi.StringPtrInput `pulumi:"s3KeyPrefix"`
}

func (ReportPlanReportDeliveryChannelArgs) ElementType added in v5.1.0

func (ReportPlanReportDeliveryChannelArgs) ToReportPlanReportDeliveryChannelOutput added in v5.1.0

func (i ReportPlanReportDeliveryChannelArgs) ToReportPlanReportDeliveryChannelOutput() ReportPlanReportDeliveryChannelOutput

func (ReportPlanReportDeliveryChannelArgs) ToReportPlanReportDeliveryChannelOutputWithContext added in v5.1.0

func (i ReportPlanReportDeliveryChannelArgs) ToReportPlanReportDeliveryChannelOutputWithContext(ctx context.Context) ReportPlanReportDeliveryChannelOutput

func (ReportPlanReportDeliveryChannelArgs) ToReportPlanReportDeliveryChannelPtrOutput added in v5.1.0

func (i ReportPlanReportDeliveryChannelArgs) ToReportPlanReportDeliveryChannelPtrOutput() ReportPlanReportDeliveryChannelPtrOutput

func (ReportPlanReportDeliveryChannelArgs) ToReportPlanReportDeliveryChannelPtrOutputWithContext added in v5.1.0

func (i ReportPlanReportDeliveryChannelArgs) ToReportPlanReportDeliveryChannelPtrOutputWithContext(ctx context.Context) ReportPlanReportDeliveryChannelPtrOutput

type ReportPlanReportDeliveryChannelInput added in v5.1.0

type ReportPlanReportDeliveryChannelInput interface {
	pulumi.Input

	ToReportPlanReportDeliveryChannelOutput() ReportPlanReportDeliveryChannelOutput
	ToReportPlanReportDeliveryChannelOutputWithContext(context.Context) ReportPlanReportDeliveryChannelOutput
}

ReportPlanReportDeliveryChannelInput is an input type that accepts ReportPlanReportDeliveryChannelArgs and ReportPlanReportDeliveryChannelOutput values. You can construct a concrete instance of `ReportPlanReportDeliveryChannelInput` via:

ReportPlanReportDeliveryChannelArgs{...}

type ReportPlanReportDeliveryChannelOutput added in v5.1.0

type ReportPlanReportDeliveryChannelOutput struct{ *pulumi.OutputState }

func (ReportPlanReportDeliveryChannelOutput) ElementType added in v5.1.0

func (ReportPlanReportDeliveryChannelOutput) Formats added in v5.1.0

A list of the format of your reports: CSV, JSON, or both. If not specified, the default format is CSV.

func (ReportPlanReportDeliveryChannelOutput) S3BucketName added in v5.1.0

The unique name of the S3 bucket that receives your reports.

func (ReportPlanReportDeliveryChannelOutput) S3KeyPrefix added in v5.1.0

The prefix for where Backup Audit Manager delivers your reports to Amazon S3. The prefix is this part of the following path: s3://your-bucket-name/prefix/Backup/us-west-2/year/month/day/report-name. If not specified, there is no prefix.

func (ReportPlanReportDeliveryChannelOutput) ToReportPlanReportDeliveryChannelOutput added in v5.1.0

func (o ReportPlanReportDeliveryChannelOutput) ToReportPlanReportDeliveryChannelOutput() ReportPlanReportDeliveryChannelOutput

func (ReportPlanReportDeliveryChannelOutput) ToReportPlanReportDeliveryChannelOutputWithContext added in v5.1.0

func (o ReportPlanReportDeliveryChannelOutput) ToReportPlanReportDeliveryChannelOutputWithContext(ctx context.Context) ReportPlanReportDeliveryChannelOutput

func (ReportPlanReportDeliveryChannelOutput) ToReportPlanReportDeliveryChannelPtrOutput added in v5.1.0

func (o ReportPlanReportDeliveryChannelOutput) ToReportPlanReportDeliveryChannelPtrOutput() ReportPlanReportDeliveryChannelPtrOutput

func (ReportPlanReportDeliveryChannelOutput) ToReportPlanReportDeliveryChannelPtrOutputWithContext added in v5.1.0

func (o ReportPlanReportDeliveryChannelOutput) ToReportPlanReportDeliveryChannelPtrOutputWithContext(ctx context.Context) ReportPlanReportDeliveryChannelPtrOutput

type ReportPlanReportDeliveryChannelPtrInput added in v5.1.0

type ReportPlanReportDeliveryChannelPtrInput interface {
	pulumi.Input

	ToReportPlanReportDeliveryChannelPtrOutput() ReportPlanReportDeliveryChannelPtrOutput
	ToReportPlanReportDeliveryChannelPtrOutputWithContext(context.Context) ReportPlanReportDeliveryChannelPtrOutput
}

ReportPlanReportDeliveryChannelPtrInput is an input type that accepts ReportPlanReportDeliveryChannelArgs, ReportPlanReportDeliveryChannelPtr and ReportPlanReportDeliveryChannelPtrOutput values. You can construct a concrete instance of `ReportPlanReportDeliveryChannelPtrInput` via:

        ReportPlanReportDeliveryChannelArgs{...}

or:

        nil

type ReportPlanReportDeliveryChannelPtrOutput added in v5.1.0

type ReportPlanReportDeliveryChannelPtrOutput struct{ *pulumi.OutputState }

func (ReportPlanReportDeliveryChannelPtrOutput) Elem added in v5.1.0

func (ReportPlanReportDeliveryChannelPtrOutput) ElementType added in v5.1.0

func (ReportPlanReportDeliveryChannelPtrOutput) Formats added in v5.1.0

A list of the format of your reports: CSV, JSON, or both. If not specified, the default format is CSV.

func (ReportPlanReportDeliveryChannelPtrOutput) S3BucketName added in v5.1.0

The unique name of the S3 bucket that receives your reports.

func (ReportPlanReportDeliveryChannelPtrOutput) S3KeyPrefix added in v5.1.0

The prefix for where Backup Audit Manager delivers your reports to Amazon S3. The prefix is this part of the following path: s3://your-bucket-name/prefix/Backup/us-west-2/year/month/day/report-name. If not specified, there is no prefix.

func (ReportPlanReportDeliveryChannelPtrOutput) ToReportPlanReportDeliveryChannelPtrOutput added in v5.1.0

func (o ReportPlanReportDeliveryChannelPtrOutput) ToReportPlanReportDeliveryChannelPtrOutput() ReportPlanReportDeliveryChannelPtrOutput

func (ReportPlanReportDeliveryChannelPtrOutput) ToReportPlanReportDeliveryChannelPtrOutputWithContext added in v5.1.0

func (o ReportPlanReportDeliveryChannelPtrOutput) ToReportPlanReportDeliveryChannelPtrOutputWithContext(ctx context.Context) ReportPlanReportDeliveryChannelPtrOutput

type ReportPlanReportSetting added in v5.1.0

type ReportPlanReportSetting struct {
	// Specifies the list of accounts a report covers.
	Accounts []string `pulumi:"accounts"`
	// Specifies the Amazon Resource Names (ARNs) of the frameworks a report covers.
	FrameworkArns []string `pulumi:"frameworkArns"`
	// Specifies the number of frameworks a report covers.
	NumberOfFrameworks *int `pulumi:"numberOfFrameworks"`
	// Specifies the list of Organizational Units a report covers.
	OrganizationUnits []string `pulumi:"organizationUnits"`
	// Specifies the list of regions a report covers.
	Regions []string `pulumi:"regions"`
	// Identifies the report template for the report. Reports are built using a report template. The report templates are: `RESOURCE_COMPLIANCE_REPORT` | `CONTROL_COMPLIANCE_REPORT` | `BACKUP_JOB_REPORT` | `COPY_JOB_REPORT` | `RESTORE_JOB_REPORT`.
	ReportTemplate string `pulumi:"reportTemplate"`
}

type ReportPlanReportSettingArgs added in v5.1.0

type ReportPlanReportSettingArgs struct {
	// Specifies the list of accounts a report covers.
	Accounts pulumi.StringArrayInput `pulumi:"accounts"`
	// Specifies the Amazon Resource Names (ARNs) of the frameworks a report covers.
	FrameworkArns pulumi.StringArrayInput `pulumi:"frameworkArns"`
	// Specifies the number of frameworks a report covers.
	NumberOfFrameworks pulumi.IntPtrInput `pulumi:"numberOfFrameworks"`
	// Specifies the list of Organizational Units a report covers.
	OrganizationUnits pulumi.StringArrayInput `pulumi:"organizationUnits"`
	// Specifies the list of regions a report covers.
	Regions pulumi.StringArrayInput `pulumi:"regions"`
	// Identifies the report template for the report. Reports are built using a report template. The report templates are: `RESOURCE_COMPLIANCE_REPORT` | `CONTROL_COMPLIANCE_REPORT` | `BACKUP_JOB_REPORT` | `COPY_JOB_REPORT` | `RESTORE_JOB_REPORT`.
	ReportTemplate pulumi.StringInput `pulumi:"reportTemplate"`
}

func (ReportPlanReportSettingArgs) ElementType added in v5.1.0

func (ReportPlanReportSettingArgs) ToReportPlanReportSettingOutput added in v5.1.0

func (i ReportPlanReportSettingArgs) ToReportPlanReportSettingOutput() ReportPlanReportSettingOutput

func (ReportPlanReportSettingArgs) ToReportPlanReportSettingOutputWithContext added in v5.1.0

func (i ReportPlanReportSettingArgs) ToReportPlanReportSettingOutputWithContext(ctx context.Context) ReportPlanReportSettingOutput

func (ReportPlanReportSettingArgs) ToReportPlanReportSettingPtrOutput added in v5.1.0

func (i ReportPlanReportSettingArgs) ToReportPlanReportSettingPtrOutput() ReportPlanReportSettingPtrOutput

func (ReportPlanReportSettingArgs) ToReportPlanReportSettingPtrOutputWithContext added in v5.1.0

func (i ReportPlanReportSettingArgs) ToReportPlanReportSettingPtrOutputWithContext(ctx context.Context) ReportPlanReportSettingPtrOutput

type ReportPlanReportSettingInput added in v5.1.0

type ReportPlanReportSettingInput interface {
	pulumi.Input

	ToReportPlanReportSettingOutput() ReportPlanReportSettingOutput
	ToReportPlanReportSettingOutputWithContext(context.Context) ReportPlanReportSettingOutput
}

ReportPlanReportSettingInput is an input type that accepts ReportPlanReportSettingArgs and ReportPlanReportSettingOutput values. You can construct a concrete instance of `ReportPlanReportSettingInput` via:

ReportPlanReportSettingArgs{...}

type ReportPlanReportSettingOutput added in v5.1.0

type ReportPlanReportSettingOutput struct{ *pulumi.OutputState }

func (ReportPlanReportSettingOutput) Accounts added in v5.40.0

Specifies the list of accounts a report covers.

func (ReportPlanReportSettingOutput) ElementType added in v5.1.0

func (ReportPlanReportSettingOutput) FrameworkArns added in v5.1.0

Specifies the Amazon Resource Names (ARNs) of the frameworks a report covers.

func (ReportPlanReportSettingOutput) NumberOfFrameworks added in v5.1.0

func (o ReportPlanReportSettingOutput) NumberOfFrameworks() pulumi.IntPtrOutput

Specifies the number of frameworks a report covers.

func (ReportPlanReportSettingOutput) OrganizationUnits added in v5.40.0

Specifies the list of Organizational Units a report covers.

func (ReportPlanReportSettingOutput) Regions added in v5.40.0

Specifies the list of regions a report covers.

func (ReportPlanReportSettingOutput) ReportTemplate added in v5.1.0

Identifies the report template for the report. Reports are built using a report template. The report templates are: `RESOURCE_COMPLIANCE_REPORT` | `CONTROL_COMPLIANCE_REPORT` | `BACKUP_JOB_REPORT` | `COPY_JOB_REPORT` | `RESTORE_JOB_REPORT`.

func (ReportPlanReportSettingOutput) ToReportPlanReportSettingOutput added in v5.1.0

func (o ReportPlanReportSettingOutput) ToReportPlanReportSettingOutput() ReportPlanReportSettingOutput

func (ReportPlanReportSettingOutput) ToReportPlanReportSettingOutputWithContext added in v5.1.0

func (o ReportPlanReportSettingOutput) ToReportPlanReportSettingOutputWithContext(ctx context.Context) ReportPlanReportSettingOutput

func (ReportPlanReportSettingOutput) ToReportPlanReportSettingPtrOutput added in v5.1.0

func (o ReportPlanReportSettingOutput) ToReportPlanReportSettingPtrOutput() ReportPlanReportSettingPtrOutput

func (ReportPlanReportSettingOutput) ToReportPlanReportSettingPtrOutputWithContext added in v5.1.0

func (o ReportPlanReportSettingOutput) ToReportPlanReportSettingPtrOutputWithContext(ctx context.Context) ReportPlanReportSettingPtrOutput

type ReportPlanReportSettingPtrInput added in v5.1.0

type ReportPlanReportSettingPtrInput interface {
	pulumi.Input

	ToReportPlanReportSettingPtrOutput() ReportPlanReportSettingPtrOutput
	ToReportPlanReportSettingPtrOutputWithContext(context.Context) ReportPlanReportSettingPtrOutput
}

ReportPlanReportSettingPtrInput is an input type that accepts ReportPlanReportSettingArgs, ReportPlanReportSettingPtr and ReportPlanReportSettingPtrOutput values. You can construct a concrete instance of `ReportPlanReportSettingPtrInput` via:

        ReportPlanReportSettingArgs{...}

or:

        nil

func ReportPlanReportSettingPtr added in v5.1.0

func ReportPlanReportSettingPtr(v *ReportPlanReportSettingArgs) ReportPlanReportSettingPtrInput

type ReportPlanReportSettingPtrOutput added in v5.1.0

type ReportPlanReportSettingPtrOutput struct{ *pulumi.OutputState }

func (ReportPlanReportSettingPtrOutput) Accounts added in v5.40.0

Specifies the list of accounts a report covers.

func (ReportPlanReportSettingPtrOutput) Elem added in v5.1.0

func (ReportPlanReportSettingPtrOutput) ElementType added in v5.1.0

func (ReportPlanReportSettingPtrOutput) FrameworkArns added in v5.1.0

Specifies the Amazon Resource Names (ARNs) of the frameworks a report covers.

func (ReportPlanReportSettingPtrOutput) NumberOfFrameworks added in v5.1.0

func (o ReportPlanReportSettingPtrOutput) NumberOfFrameworks() pulumi.IntPtrOutput

Specifies the number of frameworks a report covers.

func (ReportPlanReportSettingPtrOutput) OrganizationUnits added in v5.40.0

Specifies the list of Organizational Units a report covers.

func (ReportPlanReportSettingPtrOutput) Regions added in v5.40.0

Specifies the list of regions a report covers.

func (ReportPlanReportSettingPtrOutput) ReportTemplate added in v5.1.0

Identifies the report template for the report. Reports are built using a report template. The report templates are: `RESOURCE_COMPLIANCE_REPORT` | `CONTROL_COMPLIANCE_REPORT` | `BACKUP_JOB_REPORT` | `COPY_JOB_REPORT` | `RESTORE_JOB_REPORT`.

func (ReportPlanReportSettingPtrOutput) ToReportPlanReportSettingPtrOutput added in v5.1.0

func (o ReportPlanReportSettingPtrOutput) ToReportPlanReportSettingPtrOutput() ReportPlanReportSettingPtrOutput

func (ReportPlanReportSettingPtrOutput) ToReportPlanReportSettingPtrOutputWithContext added in v5.1.0

func (o ReportPlanReportSettingPtrOutput) ToReportPlanReportSettingPtrOutputWithContext(ctx context.Context) ReportPlanReportSettingPtrOutput

type ReportPlanState added in v5.1.0

type ReportPlanState struct {
	// The ARN of the backup report plan.
	Arn pulumi.StringPtrInput
	// The date and time that a report plan is created, in Unix format and Coordinated Universal Time (UTC).
	CreationTime pulumi.StringPtrInput
	// The deployment status of a report plan. The statuses are: `CREATE_IN_PROGRESS` | `UPDATE_IN_PROGRESS` | `DELETE_IN_PROGRESS` | `COMPLETED`.
	DeploymentStatus pulumi.StringPtrInput
	// The description of the report plan with a maximum of 1,024 characters
	Description pulumi.StringPtrInput
	// The unique name of the report plan. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
	Name pulumi.StringPtrInput
	// An object that contains information about where and how to deliver your reports, specifically your Amazon S3 bucket name, S3 key prefix, and the formats of your reports. Detailed below.
	ReportDeliveryChannel ReportPlanReportDeliveryChannelPtrInput
	// An object that identifies the report template for the report. Reports are built using a report template. Detailed below.
	ReportSetting ReportPlanReportSettingPtrInput
	// Metadata that you can assign to help organize the report plans you create. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
}

func (ReportPlanState) ElementType added in v5.1.0

func (ReportPlanState) ElementType() reflect.Type

type Selection

type Selection struct {
	pulumi.CustomResourceState

	// A list of conditions that you define to assign resources to your backup plans using tags.
	Conditions SelectionConditionArrayOutput `pulumi:"conditions"`
	// The ARN of the IAM role that AWS Backup uses to authenticate when restoring and backing up the target resource. See the [AWS Backup Developer Guide](https://docs.aws.amazon.com/aws-backup/latest/devguide/access-control.html#managed-policies) for additional information about using AWS managed policies or creating custom policies attached to the IAM role.
	IamRoleArn pulumi.StringOutput `pulumi:"iamRoleArn"`
	// The display name of a resource selection document.
	Name pulumi.StringOutput `pulumi:"name"`
	// An array of strings that either contain Amazon Resource Names (ARNs) or match patterns of resources to exclude from a backup plan.
	NotResources pulumi.StringArrayOutput `pulumi:"notResources"`
	// The backup plan ID to be associated with the selection of resources.
	PlanId pulumi.StringOutput `pulumi:"planId"`
	// An array of strings that either contain Amazon Resource Names (ARNs) or match patterns of resources to assign to a backup plan.
	Resources pulumi.StringArrayOutput `pulumi:"resources"`
	// Tag-based conditions used to specify a set of resources to assign to a backup plan.
	SelectionTags SelectionSelectionTagArrayOutput `pulumi:"selectionTags"`
}

Manages selection conditions for AWS Backup plan resources.

## Example Usage ### IAM Role

> For more information about creating and managing IAM Roles for backups and restores, see the [AWS Backup Developer Guide](https://docs.aws.amazon.com/aws-backup/latest/devguide/iam-service-roles.html).

The below example creates an IAM role with the default managed IAM Policy for allowing AWS Backup to create backups.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup"
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/iam"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		assumeRole, err := iam.GetPolicyDocument(ctx, &iam.GetPolicyDocumentArgs{
			Statements: []iam.GetPolicyDocumentStatement{
				{
					Effect: pulumi.StringRef("Allow"),
					Principals: []iam.GetPolicyDocumentStatementPrincipal{
						{
							Type: "Service",
							Identifiers: []string{
								"backup.amazonaws.com",
							},
						},
					},
					Actions: []string{
						"sts:AssumeRole",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		exampleRole, err := iam.NewRole(ctx, "exampleRole", &iam.RoleArgs{
			AssumeRolePolicy: *pulumi.String(assumeRole.Json),
		})
		if err != nil {
			return err
		}
		_, err = iam.NewRolePolicyAttachment(ctx, "exampleRolePolicyAttachment", &iam.RolePolicyAttachmentArgs{
			PolicyArn: pulumi.String("arn:aws:iam::aws:policy/service-role/AWSBackupServiceRolePolicyForBackup"),
			Role:      exampleRole.Name,
		})
		if err != nil {
			return err
		}
		_, err = backup.NewSelection(ctx, "exampleSelection", &backup.SelectionArgs{
			IamRoleArn: exampleRole.Arn,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Selecting Backups By Tag

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := backup.NewSelection(ctx, "example", &backup.SelectionArgs{
			IamRoleArn: pulumi.Any(aws_iam_role.Example.Arn),
			PlanId:     pulumi.Any(aws_backup_plan.Example.Id),
			SelectionTags: backup.SelectionSelectionTagArray{
				&backup.SelectionSelectionTagArgs{
					Type:  pulumi.String("STRINGEQUALS"),
					Key:   pulumi.String("foo"),
					Value: pulumi.String("bar"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Selecting Backups By Conditions

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := backup.NewSelection(ctx, "example", &backup.SelectionArgs{
			IamRoleArn: pulumi.Any(aws_iam_role.Example.Arn),
			PlanId:     pulumi.Any(aws_backup_plan.Example.Id),
			Resources: pulumi.StringArray{
				pulumi.String("*"),
			},
			Conditions: backup.SelectionConditionArray{
				&backup.SelectionConditionArgs{
					StringEquals: backup.SelectionConditionStringEqualArray{
						&backup.SelectionConditionStringEqualArgs{
							Key:   pulumi.String("aws:ResourceTag/Component"),
							Value: pulumi.String("rds"),
						},
					},
					StringLikes: backup.SelectionConditionStringLikeArray{
						&backup.SelectionConditionStringLikeArgs{
							Key:   pulumi.String("aws:ResourceTag/Application"),
							Value: pulumi.String("app*"),
						},
					},
					StringNotEquals: backup.SelectionConditionStringNotEqualArray{
						&backup.SelectionConditionStringNotEqualArgs{
							Key:   pulumi.String("aws:ResourceTag/Backup"),
							Value: pulumi.String("false"),
						},
					},
					StringNotLikes: backup.SelectionConditionStringNotLikeArray{
						&backup.SelectionConditionStringNotLikeArgs{
							Key:   pulumi.String("aws:ResourceTag/Environment"),
							Value: pulumi.String("test*"),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Selecting Backups By Resource

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := backup.NewSelection(ctx, "example", &backup.SelectionArgs{
			IamRoleArn: pulumi.Any(aws_iam_role.Example.Arn),
			PlanId:     pulumi.Any(aws_backup_plan.Example.Id),
			Resources: pulumi.StringArray{
				aws_db_instance.Example.Arn,
				aws_ebs_volume.Example.Arn,
				aws_efs_file_system.Example.Arn,
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Selecting Backups By Not Resource

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := backup.NewSelection(ctx, "example", &backup.SelectionArgs{
			IamRoleArn: pulumi.Any(aws_iam_role.Example.Arn),
			PlanId:     pulumi.Any(aws_backup_plan.Example.Id),
			NotResources: pulumi.StringArray{
				aws_db_instance.Example.Arn,
				aws_ebs_volume.Example.Arn,
				aws_efs_file_system.Example.Arn,
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Backup selection can be imported using the role plan_id and id separated by `|`.

```sh

$ pulumi import aws:backup/selection:Selection example plan-id|selection-id

```

func GetSelection

func GetSelection(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SelectionState, opts ...pulumi.ResourceOption) (*Selection, error)

GetSelection gets an existing Selection 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 NewSelection

func NewSelection(ctx *pulumi.Context,
	name string, args *SelectionArgs, opts ...pulumi.ResourceOption) (*Selection, error)

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

func (*Selection) ElementType

func (*Selection) ElementType() reflect.Type

func (*Selection) ToSelectionOutput

func (i *Selection) ToSelectionOutput() SelectionOutput

func (*Selection) ToSelectionOutputWithContext

func (i *Selection) ToSelectionOutputWithContext(ctx context.Context) SelectionOutput

type SelectionArgs

type SelectionArgs struct {
	// A list of conditions that you define to assign resources to your backup plans using tags.
	Conditions SelectionConditionArrayInput
	// The ARN of the IAM role that AWS Backup uses to authenticate when restoring and backing up the target resource. See the [AWS Backup Developer Guide](https://docs.aws.amazon.com/aws-backup/latest/devguide/access-control.html#managed-policies) for additional information about using AWS managed policies or creating custom policies attached to the IAM role.
	IamRoleArn pulumi.StringInput
	// The display name of a resource selection document.
	Name pulumi.StringPtrInput
	// An array of strings that either contain Amazon Resource Names (ARNs) or match patterns of resources to exclude from a backup plan.
	NotResources pulumi.StringArrayInput
	// The backup plan ID to be associated with the selection of resources.
	PlanId pulumi.StringInput
	// An array of strings that either contain Amazon Resource Names (ARNs) or match patterns of resources to assign to a backup plan.
	Resources pulumi.StringArrayInput
	// Tag-based conditions used to specify a set of resources to assign to a backup plan.
	SelectionTags SelectionSelectionTagArrayInput
}

The set of arguments for constructing a Selection resource.

func (SelectionArgs) ElementType

func (SelectionArgs) ElementType() reflect.Type

type SelectionArray

type SelectionArray []SelectionInput

func (SelectionArray) ElementType

func (SelectionArray) ElementType() reflect.Type

func (SelectionArray) ToSelectionArrayOutput

func (i SelectionArray) ToSelectionArrayOutput() SelectionArrayOutput

func (SelectionArray) ToSelectionArrayOutputWithContext

func (i SelectionArray) ToSelectionArrayOutputWithContext(ctx context.Context) SelectionArrayOutput

type SelectionArrayInput

type SelectionArrayInput interface {
	pulumi.Input

	ToSelectionArrayOutput() SelectionArrayOutput
	ToSelectionArrayOutputWithContext(context.Context) SelectionArrayOutput
}

SelectionArrayInput is an input type that accepts SelectionArray and SelectionArrayOutput values. You can construct a concrete instance of `SelectionArrayInput` via:

SelectionArray{ SelectionArgs{...} }

type SelectionArrayOutput

type SelectionArrayOutput struct{ *pulumi.OutputState }

func (SelectionArrayOutput) ElementType

func (SelectionArrayOutput) ElementType() reflect.Type

func (SelectionArrayOutput) Index

func (SelectionArrayOutput) ToSelectionArrayOutput

func (o SelectionArrayOutput) ToSelectionArrayOutput() SelectionArrayOutput

func (SelectionArrayOutput) ToSelectionArrayOutputWithContext

func (o SelectionArrayOutput) ToSelectionArrayOutputWithContext(ctx context.Context) SelectionArrayOutput

type SelectionCondition

type SelectionCondition struct {
	StringEquals    []SelectionConditionStringEqual    `pulumi:"stringEquals"`
	StringLikes     []SelectionConditionStringLike     `pulumi:"stringLikes"`
	StringNotEquals []SelectionConditionStringNotEqual `pulumi:"stringNotEquals"`
	StringNotLikes  []SelectionConditionStringNotLike  `pulumi:"stringNotLikes"`
}

type SelectionConditionArgs

type SelectionConditionArgs struct {
	StringEquals    SelectionConditionStringEqualArrayInput    `pulumi:"stringEquals"`
	StringLikes     SelectionConditionStringLikeArrayInput     `pulumi:"stringLikes"`
	StringNotEquals SelectionConditionStringNotEqualArrayInput `pulumi:"stringNotEquals"`
	StringNotLikes  SelectionConditionStringNotLikeArrayInput  `pulumi:"stringNotLikes"`
}

func (SelectionConditionArgs) ElementType

func (SelectionConditionArgs) ElementType() reflect.Type

func (SelectionConditionArgs) ToSelectionConditionOutput

func (i SelectionConditionArgs) ToSelectionConditionOutput() SelectionConditionOutput

func (SelectionConditionArgs) ToSelectionConditionOutputWithContext

func (i SelectionConditionArgs) ToSelectionConditionOutputWithContext(ctx context.Context) SelectionConditionOutput

type SelectionConditionArray

type SelectionConditionArray []SelectionConditionInput

func (SelectionConditionArray) ElementType

func (SelectionConditionArray) ElementType() reflect.Type

func (SelectionConditionArray) ToSelectionConditionArrayOutput

func (i SelectionConditionArray) ToSelectionConditionArrayOutput() SelectionConditionArrayOutput

func (SelectionConditionArray) ToSelectionConditionArrayOutputWithContext

func (i SelectionConditionArray) ToSelectionConditionArrayOutputWithContext(ctx context.Context) SelectionConditionArrayOutput

type SelectionConditionArrayInput

type SelectionConditionArrayInput interface {
	pulumi.Input

	ToSelectionConditionArrayOutput() SelectionConditionArrayOutput
	ToSelectionConditionArrayOutputWithContext(context.Context) SelectionConditionArrayOutput
}

SelectionConditionArrayInput is an input type that accepts SelectionConditionArray and SelectionConditionArrayOutput values. You can construct a concrete instance of `SelectionConditionArrayInput` via:

SelectionConditionArray{ SelectionConditionArgs{...} }

type SelectionConditionArrayOutput

type SelectionConditionArrayOutput struct{ *pulumi.OutputState }

func (SelectionConditionArrayOutput) ElementType

func (SelectionConditionArrayOutput) Index

func (SelectionConditionArrayOutput) ToSelectionConditionArrayOutput

func (o SelectionConditionArrayOutput) ToSelectionConditionArrayOutput() SelectionConditionArrayOutput

func (SelectionConditionArrayOutput) ToSelectionConditionArrayOutputWithContext

func (o SelectionConditionArrayOutput) ToSelectionConditionArrayOutputWithContext(ctx context.Context) SelectionConditionArrayOutput

type SelectionConditionInput

type SelectionConditionInput interface {
	pulumi.Input

	ToSelectionConditionOutput() SelectionConditionOutput
	ToSelectionConditionOutputWithContext(context.Context) SelectionConditionOutput
}

SelectionConditionInput is an input type that accepts SelectionConditionArgs and SelectionConditionOutput values. You can construct a concrete instance of `SelectionConditionInput` via:

SelectionConditionArgs{...}

type SelectionConditionOutput

type SelectionConditionOutput struct{ *pulumi.OutputState }

func (SelectionConditionOutput) ElementType

func (SelectionConditionOutput) ElementType() reflect.Type

func (SelectionConditionOutput) StringEquals

func (SelectionConditionOutput) StringLikes

func (SelectionConditionOutput) StringNotEquals

func (SelectionConditionOutput) StringNotLikes

func (SelectionConditionOutput) ToSelectionConditionOutput

func (o SelectionConditionOutput) ToSelectionConditionOutput() SelectionConditionOutput

func (SelectionConditionOutput) ToSelectionConditionOutputWithContext

func (o SelectionConditionOutput) ToSelectionConditionOutputWithContext(ctx context.Context) SelectionConditionOutput

type SelectionConditionStringEqual

type SelectionConditionStringEqual struct {
	// The key in a key-value pair.
	Key string `pulumi:"key"`
	// The value in a key-value pair.
	Value string `pulumi:"value"`
}

type SelectionConditionStringEqualArgs

type SelectionConditionStringEqualArgs struct {
	// The key in a key-value pair.
	Key pulumi.StringInput `pulumi:"key"`
	// The value in a key-value pair.
	Value pulumi.StringInput `pulumi:"value"`
}

func (SelectionConditionStringEqualArgs) ElementType

func (SelectionConditionStringEqualArgs) ToSelectionConditionStringEqualOutput

func (i SelectionConditionStringEqualArgs) ToSelectionConditionStringEqualOutput() SelectionConditionStringEqualOutput

func (SelectionConditionStringEqualArgs) ToSelectionConditionStringEqualOutputWithContext

func (i SelectionConditionStringEqualArgs) ToSelectionConditionStringEqualOutputWithContext(ctx context.Context) SelectionConditionStringEqualOutput

type SelectionConditionStringEqualArray

type SelectionConditionStringEqualArray []SelectionConditionStringEqualInput

func (SelectionConditionStringEqualArray) ElementType

func (SelectionConditionStringEqualArray) ToSelectionConditionStringEqualArrayOutput

func (i SelectionConditionStringEqualArray) ToSelectionConditionStringEqualArrayOutput() SelectionConditionStringEqualArrayOutput

func (SelectionConditionStringEqualArray) ToSelectionConditionStringEqualArrayOutputWithContext

func (i SelectionConditionStringEqualArray) ToSelectionConditionStringEqualArrayOutputWithContext(ctx context.Context) SelectionConditionStringEqualArrayOutput

type SelectionConditionStringEqualArrayInput

type SelectionConditionStringEqualArrayInput interface {
	pulumi.Input

	ToSelectionConditionStringEqualArrayOutput() SelectionConditionStringEqualArrayOutput
	ToSelectionConditionStringEqualArrayOutputWithContext(context.Context) SelectionConditionStringEqualArrayOutput
}

SelectionConditionStringEqualArrayInput is an input type that accepts SelectionConditionStringEqualArray and SelectionConditionStringEqualArrayOutput values. You can construct a concrete instance of `SelectionConditionStringEqualArrayInput` via:

SelectionConditionStringEqualArray{ SelectionConditionStringEqualArgs{...} }

type SelectionConditionStringEqualArrayOutput

type SelectionConditionStringEqualArrayOutput struct{ *pulumi.OutputState }

func (SelectionConditionStringEqualArrayOutput) ElementType

func (SelectionConditionStringEqualArrayOutput) Index

func (SelectionConditionStringEqualArrayOutput) ToSelectionConditionStringEqualArrayOutput

func (o SelectionConditionStringEqualArrayOutput) ToSelectionConditionStringEqualArrayOutput() SelectionConditionStringEqualArrayOutput

func (SelectionConditionStringEqualArrayOutput) ToSelectionConditionStringEqualArrayOutputWithContext

func (o SelectionConditionStringEqualArrayOutput) ToSelectionConditionStringEqualArrayOutputWithContext(ctx context.Context) SelectionConditionStringEqualArrayOutput

type SelectionConditionStringEqualInput

type SelectionConditionStringEqualInput interface {
	pulumi.Input

	ToSelectionConditionStringEqualOutput() SelectionConditionStringEqualOutput
	ToSelectionConditionStringEqualOutputWithContext(context.Context) SelectionConditionStringEqualOutput
}

SelectionConditionStringEqualInput is an input type that accepts SelectionConditionStringEqualArgs and SelectionConditionStringEqualOutput values. You can construct a concrete instance of `SelectionConditionStringEqualInput` via:

SelectionConditionStringEqualArgs{...}

type SelectionConditionStringEqualOutput

type SelectionConditionStringEqualOutput struct{ *pulumi.OutputState }

func (SelectionConditionStringEqualOutput) ElementType

func (SelectionConditionStringEqualOutput) Key

The key in a key-value pair.

func (SelectionConditionStringEqualOutput) ToSelectionConditionStringEqualOutput

func (o SelectionConditionStringEqualOutput) ToSelectionConditionStringEqualOutput() SelectionConditionStringEqualOutput

func (SelectionConditionStringEqualOutput) ToSelectionConditionStringEqualOutputWithContext

func (o SelectionConditionStringEqualOutput) ToSelectionConditionStringEqualOutputWithContext(ctx context.Context) SelectionConditionStringEqualOutput

func (SelectionConditionStringEqualOutput) Value

The value in a key-value pair.

type SelectionConditionStringLike

type SelectionConditionStringLike struct {
	// The key in a key-value pair.
	Key string `pulumi:"key"`
	// The value in a key-value pair.
	Value string `pulumi:"value"`
}

type SelectionConditionStringLikeArgs

type SelectionConditionStringLikeArgs struct {
	// The key in a key-value pair.
	Key pulumi.StringInput `pulumi:"key"`
	// The value in a key-value pair.
	Value pulumi.StringInput `pulumi:"value"`
}

func (SelectionConditionStringLikeArgs) ElementType

func (SelectionConditionStringLikeArgs) ToSelectionConditionStringLikeOutput

func (i SelectionConditionStringLikeArgs) ToSelectionConditionStringLikeOutput() SelectionConditionStringLikeOutput

func (SelectionConditionStringLikeArgs) ToSelectionConditionStringLikeOutputWithContext

func (i SelectionConditionStringLikeArgs) ToSelectionConditionStringLikeOutputWithContext(ctx context.Context) SelectionConditionStringLikeOutput

type SelectionConditionStringLikeArray

type SelectionConditionStringLikeArray []SelectionConditionStringLikeInput

func (SelectionConditionStringLikeArray) ElementType

func (SelectionConditionStringLikeArray) ToSelectionConditionStringLikeArrayOutput

func (i SelectionConditionStringLikeArray) ToSelectionConditionStringLikeArrayOutput() SelectionConditionStringLikeArrayOutput

func (SelectionConditionStringLikeArray) ToSelectionConditionStringLikeArrayOutputWithContext

func (i SelectionConditionStringLikeArray) ToSelectionConditionStringLikeArrayOutputWithContext(ctx context.Context) SelectionConditionStringLikeArrayOutput

type SelectionConditionStringLikeArrayInput

type SelectionConditionStringLikeArrayInput interface {
	pulumi.Input

	ToSelectionConditionStringLikeArrayOutput() SelectionConditionStringLikeArrayOutput
	ToSelectionConditionStringLikeArrayOutputWithContext(context.Context) SelectionConditionStringLikeArrayOutput
}

SelectionConditionStringLikeArrayInput is an input type that accepts SelectionConditionStringLikeArray and SelectionConditionStringLikeArrayOutput values. You can construct a concrete instance of `SelectionConditionStringLikeArrayInput` via:

SelectionConditionStringLikeArray{ SelectionConditionStringLikeArgs{...} }

type SelectionConditionStringLikeArrayOutput

type SelectionConditionStringLikeArrayOutput struct{ *pulumi.OutputState }

func (SelectionConditionStringLikeArrayOutput) ElementType

func (SelectionConditionStringLikeArrayOutput) Index

func (SelectionConditionStringLikeArrayOutput) ToSelectionConditionStringLikeArrayOutput

func (o SelectionConditionStringLikeArrayOutput) ToSelectionConditionStringLikeArrayOutput() SelectionConditionStringLikeArrayOutput

func (SelectionConditionStringLikeArrayOutput) ToSelectionConditionStringLikeArrayOutputWithContext

func (o SelectionConditionStringLikeArrayOutput) ToSelectionConditionStringLikeArrayOutputWithContext(ctx context.Context) SelectionConditionStringLikeArrayOutput

type SelectionConditionStringLikeInput

type SelectionConditionStringLikeInput interface {
	pulumi.Input

	ToSelectionConditionStringLikeOutput() SelectionConditionStringLikeOutput
	ToSelectionConditionStringLikeOutputWithContext(context.Context) SelectionConditionStringLikeOutput
}

SelectionConditionStringLikeInput is an input type that accepts SelectionConditionStringLikeArgs and SelectionConditionStringLikeOutput values. You can construct a concrete instance of `SelectionConditionStringLikeInput` via:

SelectionConditionStringLikeArgs{...}

type SelectionConditionStringLikeOutput

type SelectionConditionStringLikeOutput struct{ *pulumi.OutputState }

func (SelectionConditionStringLikeOutput) ElementType

func (SelectionConditionStringLikeOutput) Key

The key in a key-value pair.

func (SelectionConditionStringLikeOutput) ToSelectionConditionStringLikeOutput

func (o SelectionConditionStringLikeOutput) ToSelectionConditionStringLikeOutput() SelectionConditionStringLikeOutput

func (SelectionConditionStringLikeOutput) ToSelectionConditionStringLikeOutputWithContext

func (o SelectionConditionStringLikeOutput) ToSelectionConditionStringLikeOutputWithContext(ctx context.Context) SelectionConditionStringLikeOutput

func (SelectionConditionStringLikeOutput) Value

The value in a key-value pair.

type SelectionConditionStringNotEqual

type SelectionConditionStringNotEqual struct {
	// The key in a key-value pair.
	Key string `pulumi:"key"`
	// The value in a key-value pair.
	Value string `pulumi:"value"`
}

type SelectionConditionStringNotEqualArgs

type SelectionConditionStringNotEqualArgs struct {
	// The key in a key-value pair.
	Key pulumi.StringInput `pulumi:"key"`
	// The value in a key-value pair.
	Value pulumi.StringInput `pulumi:"value"`
}

func (SelectionConditionStringNotEqualArgs) ElementType

func (SelectionConditionStringNotEqualArgs) ToSelectionConditionStringNotEqualOutput

func (i SelectionConditionStringNotEqualArgs) ToSelectionConditionStringNotEqualOutput() SelectionConditionStringNotEqualOutput

func (SelectionConditionStringNotEqualArgs) ToSelectionConditionStringNotEqualOutputWithContext

func (i SelectionConditionStringNotEqualArgs) ToSelectionConditionStringNotEqualOutputWithContext(ctx context.Context) SelectionConditionStringNotEqualOutput

type SelectionConditionStringNotEqualArray

type SelectionConditionStringNotEqualArray []SelectionConditionStringNotEqualInput

func (SelectionConditionStringNotEqualArray) ElementType

func (SelectionConditionStringNotEqualArray) ToSelectionConditionStringNotEqualArrayOutput

func (i SelectionConditionStringNotEqualArray) ToSelectionConditionStringNotEqualArrayOutput() SelectionConditionStringNotEqualArrayOutput

func (SelectionConditionStringNotEqualArray) ToSelectionConditionStringNotEqualArrayOutputWithContext

func (i SelectionConditionStringNotEqualArray) ToSelectionConditionStringNotEqualArrayOutputWithContext(ctx context.Context) SelectionConditionStringNotEqualArrayOutput

type SelectionConditionStringNotEqualArrayInput

type SelectionConditionStringNotEqualArrayInput interface {
	pulumi.Input

	ToSelectionConditionStringNotEqualArrayOutput() SelectionConditionStringNotEqualArrayOutput
	ToSelectionConditionStringNotEqualArrayOutputWithContext(context.Context) SelectionConditionStringNotEqualArrayOutput
}

SelectionConditionStringNotEqualArrayInput is an input type that accepts SelectionConditionStringNotEqualArray and SelectionConditionStringNotEqualArrayOutput values. You can construct a concrete instance of `SelectionConditionStringNotEqualArrayInput` via:

SelectionConditionStringNotEqualArray{ SelectionConditionStringNotEqualArgs{...} }

type SelectionConditionStringNotEqualArrayOutput

type SelectionConditionStringNotEqualArrayOutput struct{ *pulumi.OutputState }

func (SelectionConditionStringNotEqualArrayOutput) ElementType

func (SelectionConditionStringNotEqualArrayOutput) Index

func (SelectionConditionStringNotEqualArrayOutput) ToSelectionConditionStringNotEqualArrayOutput

func (o SelectionConditionStringNotEqualArrayOutput) ToSelectionConditionStringNotEqualArrayOutput() SelectionConditionStringNotEqualArrayOutput

func (SelectionConditionStringNotEqualArrayOutput) ToSelectionConditionStringNotEqualArrayOutputWithContext

func (o SelectionConditionStringNotEqualArrayOutput) ToSelectionConditionStringNotEqualArrayOutputWithContext(ctx context.Context) SelectionConditionStringNotEqualArrayOutput

type SelectionConditionStringNotEqualInput

type SelectionConditionStringNotEqualInput interface {
	pulumi.Input

	ToSelectionConditionStringNotEqualOutput() SelectionConditionStringNotEqualOutput
	ToSelectionConditionStringNotEqualOutputWithContext(context.Context) SelectionConditionStringNotEqualOutput
}

SelectionConditionStringNotEqualInput is an input type that accepts SelectionConditionStringNotEqualArgs and SelectionConditionStringNotEqualOutput values. You can construct a concrete instance of `SelectionConditionStringNotEqualInput` via:

SelectionConditionStringNotEqualArgs{...}

type SelectionConditionStringNotEqualOutput

type SelectionConditionStringNotEqualOutput struct{ *pulumi.OutputState }

func (SelectionConditionStringNotEqualOutput) ElementType

func (SelectionConditionStringNotEqualOutput) Key

The key in a key-value pair.

func (SelectionConditionStringNotEqualOutput) ToSelectionConditionStringNotEqualOutput

func (o SelectionConditionStringNotEqualOutput) ToSelectionConditionStringNotEqualOutput() SelectionConditionStringNotEqualOutput

func (SelectionConditionStringNotEqualOutput) ToSelectionConditionStringNotEqualOutputWithContext

func (o SelectionConditionStringNotEqualOutput) ToSelectionConditionStringNotEqualOutputWithContext(ctx context.Context) SelectionConditionStringNotEqualOutput

func (SelectionConditionStringNotEqualOutput) Value

The value in a key-value pair.

type SelectionConditionStringNotLike

type SelectionConditionStringNotLike struct {
	// The key in a key-value pair.
	Key string `pulumi:"key"`
	// The value in a key-value pair.
	Value string `pulumi:"value"`
}

type SelectionConditionStringNotLikeArgs

type SelectionConditionStringNotLikeArgs struct {
	// The key in a key-value pair.
	Key pulumi.StringInput `pulumi:"key"`
	// The value in a key-value pair.
	Value pulumi.StringInput `pulumi:"value"`
}

func (SelectionConditionStringNotLikeArgs) ElementType

func (SelectionConditionStringNotLikeArgs) ToSelectionConditionStringNotLikeOutput

func (i SelectionConditionStringNotLikeArgs) ToSelectionConditionStringNotLikeOutput() SelectionConditionStringNotLikeOutput

func (SelectionConditionStringNotLikeArgs) ToSelectionConditionStringNotLikeOutputWithContext

func (i SelectionConditionStringNotLikeArgs) ToSelectionConditionStringNotLikeOutputWithContext(ctx context.Context) SelectionConditionStringNotLikeOutput

type SelectionConditionStringNotLikeArray

type SelectionConditionStringNotLikeArray []SelectionConditionStringNotLikeInput

func (SelectionConditionStringNotLikeArray) ElementType

func (SelectionConditionStringNotLikeArray) ToSelectionConditionStringNotLikeArrayOutput

func (i SelectionConditionStringNotLikeArray) ToSelectionConditionStringNotLikeArrayOutput() SelectionConditionStringNotLikeArrayOutput

func (SelectionConditionStringNotLikeArray) ToSelectionConditionStringNotLikeArrayOutputWithContext

func (i SelectionConditionStringNotLikeArray) ToSelectionConditionStringNotLikeArrayOutputWithContext(ctx context.Context) SelectionConditionStringNotLikeArrayOutput

type SelectionConditionStringNotLikeArrayInput

type SelectionConditionStringNotLikeArrayInput interface {
	pulumi.Input

	ToSelectionConditionStringNotLikeArrayOutput() SelectionConditionStringNotLikeArrayOutput
	ToSelectionConditionStringNotLikeArrayOutputWithContext(context.Context) SelectionConditionStringNotLikeArrayOutput
}

SelectionConditionStringNotLikeArrayInput is an input type that accepts SelectionConditionStringNotLikeArray and SelectionConditionStringNotLikeArrayOutput values. You can construct a concrete instance of `SelectionConditionStringNotLikeArrayInput` via:

SelectionConditionStringNotLikeArray{ SelectionConditionStringNotLikeArgs{...} }

type SelectionConditionStringNotLikeArrayOutput

type SelectionConditionStringNotLikeArrayOutput struct{ *pulumi.OutputState }

func (SelectionConditionStringNotLikeArrayOutput) ElementType

func (SelectionConditionStringNotLikeArrayOutput) Index

func (SelectionConditionStringNotLikeArrayOutput) ToSelectionConditionStringNotLikeArrayOutput

func (o SelectionConditionStringNotLikeArrayOutput) ToSelectionConditionStringNotLikeArrayOutput() SelectionConditionStringNotLikeArrayOutput

func (SelectionConditionStringNotLikeArrayOutput) ToSelectionConditionStringNotLikeArrayOutputWithContext

func (o SelectionConditionStringNotLikeArrayOutput) ToSelectionConditionStringNotLikeArrayOutputWithContext(ctx context.Context) SelectionConditionStringNotLikeArrayOutput

type SelectionConditionStringNotLikeInput

type SelectionConditionStringNotLikeInput interface {
	pulumi.Input

	ToSelectionConditionStringNotLikeOutput() SelectionConditionStringNotLikeOutput
	ToSelectionConditionStringNotLikeOutputWithContext(context.Context) SelectionConditionStringNotLikeOutput
}

SelectionConditionStringNotLikeInput is an input type that accepts SelectionConditionStringNotLikeArgs and SelectionConditionStringNotLikeOutput values. You can construct a concrete instance of `SelectionConditionStringNotLikeInput` via:

SelectionConditionStringNotLikeArgs{...}

type SelectionConditionStringNotLikeOutput

type SelectionConditionStringNotLikeOutput struct{ *pulumi.OutputState }

func (SelectionConditionStringNotLikeOutput) ElementType

func (SelectionConditionStringNotLikeOutput) Key

The key in a key-value pair.

func (SelectionConditionStringNotLikeOutput) ToSelectionConditionStringNotLikeOutput

func (o SelectionConditionStringNotLikeOutput) ToSelectionConditionStringNotLikeOutput() SelectionConditionStringNotLikeOutput

func (SelectionConditionStringNotLikeOutput) ToSelectionConditionStringNotLikeOutputWithContext

func (o SelectionConditionStringNotLikeOutput) ToSelectionConditionStringNotLikeOutputWithContext(ctx context.Context) SelectionConditionStringNotLikeOutput

func (SelectionConditionStringNotLikeOutput) Value

The value in a key-value pair.

type SelectionInput

type SelectionInput interface {
	pulumi.Input

	ToSelectionOutput() SelectionOutput
	ToSelectionOutputWithContext(ctx context.Context) SelectionOutput
}

type SelectionMap

type SelectionMap map[string]SelectionInput

func (SelectionMap) ElementType

func (SelectionMap) ElementType() reflect.Type

func (SelectionMap) ToSelectionMapOutput

func (i SelectionMap) ToSelectionMapOutput() SelectionMapOutput

func (SelectionMap) ToSelectionMapOutputWithContext

func (i SelectionMap) ToSelectionMapOutputWithContext(ctx context.Context) SelectionMapOutput

type SelectionMapInput

type SelectionMapInput interface {
	pulumi.Input

	ToSelectionMapOutput() SelectionMapOutput
	ToSelectionMapOutputWithContext(context.Context) SelectionMapOutput
}

SelectionMapInput is an input type that accepts SelectionMap and SelectionMapOutput values. You can construct a concrete instance of `SelectionMapInput` via:

SelectionMap{ "key": SelectionArgs{...} }

type SelectionMapOutput

type SelectionMapOutput struct{ *pulumi.OutputState }

func (SelectionMapOutput) ElementType

func (SelectionMapOutput) ElementType() reflect.Type

func (SelectionMapOutput) MapIndex

func (SelectionMapOutput) ToSelectionMapOutput

func (o SelectionMapOutput) ToSelectionMapOutput() SelectionMapOutput

func (SelectionMapOutput) ToSelectionMapOutputWithContext

func (o SelectionMapOutput) ToSelectionMapOutputWithContext(ctx context.Context) SelectionMapOutput

type SelectionOutput

type SelectionOutput struct{ *pulumi.OutputState }

func (SelectionOutput) Conditions added in v5.4.0

A list of conditions that you define to assign resources to your backup plans using tags.

func (SelectionOutput) ElementType

func (SelectionOutput) ElementType() reflect.Type

func (SelectionOutput) IamRoleArn added in v5.4.0

func (o SelectionOutput) IamRoleArn() pulumi.StringOutput

The ARN of the IAM role that AWS Backup uses to authenticate when restoring and backing up the target resource. See the [AWS Backup Developer Guide](https://docs.aws.amazon.com/aws-backup/latest/devguide/access-control.html#managed-policies) for additional information about using AWS managed policies or creating custom policies attached to the IAM role.

func (SelectionOutput) Name added in v5.4.0

The display name of a resource selection document.

func (SelectionOutput) NotResources added in v5.4.0

func (o SelectionOutput) NotResources() pulumi.StringArrayOutput

An array of strings that either contain Amazon Resource Names (ARNs) or match patterns of resources to exclude from a backup plan.

func (SelectionOutput) PlanId added in v5.4.0

func (o SelectionOutput) PlanId() pulumi.StringOutput

The backup plan ID to be associated with the selection of resources.

func (SelectionOutput) Resources added in v5.4.0

An array of strings that either contain Amazon Resource Names (ARNs) or match patterns of resources to assign to a backup plan.

func (SelectionOutput) SelectionTags added in v5.4.0

Tag-based conditions used to specify a set of resources to assign to a backup plan.

func (SelectionOutput) ToSelectionOutput

func (o SelectionOutput) ToSelectionOutput() SelectionOutput

func (SelectionOutput) ToSelectionOutputWithContext

func (o SelectionOutput) ToSelectionOutputWithContext(ctx context.Context) SelectionOutput

type SelectionSelectionTag

type SelectionSelectionTag struct {
	// The key in a key-value pair.
	Key string `pulumi:"key"`
	// An operation, such as `StringEquals`, that is applied to a key-value pair used to filter resources in a selection.
	Type string `pulumi:"type"`
	// The value in a key-value pair.
	Value string `pulumi:"value"`
}

type SelectionSelectionTagArgs

type SelectionSelectionTagArgs struct {
	// The key in a key-value pair.
	Key pulumi.StringInput `pulumi:"key"`
	// An operation, such as `StringEquals`, that is applied to a key-value pair used to filter resources in a selection.
	Type pulumi.StringInput `pulumi:"type"`
	// The value in a key-value pair.
	Value pulumi.StringInput `pulumi:"value"`
}

func (SelectionSelectionTagArgs) ElementType

func (SelectionSelectionTagArgs) ElementType() reflect.Type

func (SelectionSelectionTagArgs) ToSelectionSelectionTagOutput

func (i SelectionSelectionTagArgs) ToSelectionSelectionTagOutput() SelectionSelectionTagOutput

func (SelectionSelectionTagArgs) ToSelectionSelectionTagOutputWithContext

func (i SelectionSelectionTagArgs) ToSelectionSelectionTagOutputWithContext(ctx context.Context) SelectionSelectionTagOutput

type SelectionSelectionTagArray

type SelectionSelectionTagArray []SelectionSelectionTagInput

func (SelectionSelectionTagArray) ElementType

func (SelectionSelectionTagArray) ElementType() reflect.Type

func (SelectionSelectionTagArray) ToSelectionSelectionTagArrayOutput

func (i SelectionSelectionTagArray) ToSelectionSelectionTagArrayOutput() SelectionSelectionTagArrayOutput

func (SelectionSelectionTagArray) ToSelectionSelectionTagArrayOutputWithContext

func (i SelectionSelectionTagArray) ToSelectionSelectionTagArrayOutputWithContext(ctx context.Context) SelectionSelectionTagArrayOutput

type SelectionSelectionTagArrayInput

type SelectionSelectionTagArrayInput interface {
	pulumi.Input

	ToSelectionSelectionTagArrayOutput() SelectionSelectionTagArrayOutput
	ToSelectionSelectionTagArrayOutputWithContext(context.Context) SelectionSelectionTagArrayOutput
}

SelectionSelectionTagArrayInput is an input type that accepts SelectionSelectionTagArray and SelectionSelectionTagArrayOutput values. You can construct a concrete instance of `SelectionSelectionTagArrayInput` via:

SelectionSelectionTagArray{ SelectionSelectionTagArgs{...} }

type SelectionSelectionTagArrayOutput

type SelectionSelectionTagArrayOutput struct{ *pulumi.OutputState }

func (SelectionSelectionTagArrayOutput) ElementType

func (SelectionSelectionTagArrayOutput) Index

func (SelectionSelectionTagArrayOutput) ToSelectionSelectionTagArrayOutput

func (o SelectionSelectionTagArrayOutput) ToSelectionSelectionTagArrayOutput() SelectionSelectionTagArrayOutput

func (SelectionSelectionTagArrayOutput) ToSelectionSelectionTagArrayOutputWithContext

func (o SelectionSelectionTagArrayOutput) ToSelectionSelectionTagArrayOutputWithContext(ctx context.Context) SelectionSelectionTagArrayOutput

type SelectionSelectionTagInput

type SelectionSelectionTagInput interface {
	pulumi.Input

	ToSelectionSelectionTagOutput() SelectionSelectionTagOutput
	ToSelectionSelectionTagOutputWithContext(context.Context) SelectionSelectionTagOutput
}

SelectionSelectionTagInput is an input type that accepts SelectionSelectionTagArgs and SelectionSelectionTagOutput values. You can construct a concrete instance of `SelectionSelectionTagInput` via:

SelectionSelectionTagArgs{...}

type SelectionSelectionTagOutput

type SelectionSelectionTagOutput struct{ *pulumi.OutputState }

func (SelectionSelectionTagOutput) ElementType

func (SelectionSelectionTagOutput) Key

The key in a key-value pair.

func (SelectionSelectionTagOutput) ToSelectionSelectionTagOutput

func (o SelectionSelectionTagOutput) ToSelectionSelectionTagOutput() SelectionSelectionTagOutput

func (SelectionSelectionTagOutput) ToSelectionSelectionTagOutputWithContext

func (o SelectionSelectionTagOutput) ToSelectionSelectionTagOutputWithContext(ctx context.Context) SelectionSelectionTagOutput

func (SelectionSelectionTagOutput) Type

An operation, such as `StringEquals`, that is applied to a key-value pair used to filter resources in a selection.

func (SelectionSelectionTagOutput) Value

The value in a key-value pair.

type SelectionState

type SelectionState struct {
	// A list of conditions that you define to assign resources to your backup plans using tags.
	Conditions SelectionConditionArrayInput
	// The ARN of the IAM role that AWS Backup uses to authenticate when restoring and backing up the target resource. See the [AWS Backup Developer Guide](https://docs.aws.amazon.com/aws-backup/latest/devguide/access-control.html#managed-policies) for additional information about using AWS managed policies or creating custom policies attached to the IAM role.
	IamRoleArn pulumi.StringPtrInput
	// The display name of a resource selection document.
	Name pulumi.StringPtrInput
	// An array of strings that either contain Amazon Resource Names (ARNs) or match patterns of resources to exclude from a backup plan.
	NotResources pulumi.StringArrayInput
	// The backup plan ID to be associated with the selection of resources.
	PlanId pulumi.StringPtrInput
	// An array of strings that either contain Amazon Resource Names (ARNs) or match patterns of resources to assign to a backup plan.
	Resources pulumi.StringArrayInput
	// Tag-based conditions used to specify a set of resources to assign to a backup plan.
	SelectionTags SelectionSelectionTagArrayInput
}

func (SelectionState) ElementType

func (SelectionState) ElementType() reflect.Type

type Vault

type Vault struct {
	pulumi.CustomResourceState

	// The ARN of the vault.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// A boolean that indicates that all recovery points stored in the vault are deleted so that the vault can be destroyed without error.
	ForceDestroy pulumi.BoolPtrOutput `pulumi:"forceDestroy"`
	// The server-side encryption key that is used to protect your backups.
	KmsKeyArn pulumi.StringOutput `pulumi:"kmsKeyArn"`
	// Name of the backup vault to create.
	Name pulumi.StringOutput `pulumi:"name"`
	// The number of recovery points that are stored in a backup vault.
	RecoveryPoints pulumi.IntOutput `pulumi:"recoveryPoints"`
	// Metadata that you can assign to help organize the resources that you create. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides an AWS Backup vault resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := backup.NewVault(ctx, "example", &backup.VaultArgs{
			KmsKeyArn: pulumi.Any(aws_kms_key.Example.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Backup vault can be imported using the `name`, e.g.,

```sh

$ pulumi import aws:backup/vault:Vault test-vault TestVault

```

func GetVault

func GetVault(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VaultState, opts ...pulumi.ResourceOption) (*Vault, error)

GetVault gets an existing Vault 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 NewVault

func NewVault(ctx *pulumi.Context,
	name string, args *VaultArgs, opts ...pulumi.ResourceOption) (*Vault, error)

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

func (*Vault) ElementType

func (*Vault) ElementType() reflect.Type

func (*Vault) ToVaultOutput

func (i *Vault) ToVaultOutput() VaultOutput

func (*Vault) ToVaultOutputWithContext

func (i *Vault) ToVaultOutputWithContext(ctx context.Context) VaultOutput

type VaultArgs

type VaultArgs struct {
	// A boolean that indicates that all recovery points stored in the vault are deleted so that the vault can be destroyed without error.
	ForceDestroy pulumi.BoolPtrInput
	// The server-side encryption key that is used to protect your backups.
	KmsKeyArn pulumi.StringPtrInput
	// Name of the backup vault to create.
	Name pulumi.StringPtrInput
	// Metadata that you can assign to help organize the resources that you create. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a Vault resource.

func (VaultArgs) ElementType

func (VaultArgs) ElementType() reflect.Type

type VaultArray

type VaultArray []VaultInput

func (VaultArray) ElementType

func (VaultArray) ElementType() reflect.Type

func (VaultArray) ToVaultArrayOutput

func (i VaultArray) ToVaultArrayOutput() VaultArrayOutput

func (VaultArray) ToVaultArrayOutputWithContext

func (i VaultArray) ToVaultArrayOutputWithContext(ctx context.Context) VaultArrayOutput

type VaultArrayInput

type VaultArrayInput interface {
	pulumi.Input

	ToVaultArrayOutput() VaultArrayOutput
	ToVaultArrayOutputWithContext(context.Context) VaultArrayOutput
}

VaultArrayInput is an input type that accepts VaultArray and VaultArrayOutput values. You can construct a concrete instance of `VaultArrayInput` via:

VaultArray{ VaultArgs{...} }

type VaultArrayOutput

type VaultArrayOutput struct{ *pulumi.OutputState }

func (VaultArrayOutput) ElementType

func (VaultArrayOutput) ElementType() reflect.Type

func (VaultArrayOutput) Index

func (VaultArrayOutput) ToVaultArrayOutput

func (o VaultArrayOutput) ToVaultArrayOutput() VaultArrayOutput

func (VaultArrayOutput) ToVaultArrayOutputWithContext

func (o VaultArrayOutput) ToVaultArrayOutputWithContext(ctx context.Context) VaultArrayOutput

type VaultInput

type VaultInput interface {
	pulumi.Input

	ToVaultOutput() VaultOutput
	ToVaultOutputWithContext(ctx context.Context) VaultOutput
}

type VaultLockConfiguration

type VaultLockConfiguration struct {
	pulumi.CustomResourceState

	// The ARN of the vault.
	BackupVaultArn pulumi.StringOutput `pulumi:"backupVaultArn"`
	// Name of the backup vault to add a lock configuration for.
	BackupVaultName pulumi.StringOutput `pulumi:"backupVaultName"`
	// The number of days before the lock date. If omitted creates a vault lock in `governance` mode, otherwise it will create a vault lock in `compliance` mode.
	ChangeableForDays pulumi.IntPtrOutput `pulumi:"changeableForDays"`
	// The maximum retention period that the vault retains its recovery points.
	MaxRetentionDays pulumi.IntPtrOutput `pulumi:"maxRetentionDays"`
	// The minimum retention period that the vault retains its recovery points.
	MinRetentionDays pulumi.IntPtrOutput `pulumi:"minRetentionDays"`
}

Provides an AWS Backup vault lock configuration resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := backup.NewVaultLockConfiguration(ctx, "test", &backup.VaultLockConfigurationArgs{
			BackupVaultName:   pulumi.String("example_backup_vault"),
			ChangeableForDays: pulumi.Int(3),
			MaxRetentionDays:  pulumi.Int(1200),
			MinRetentionDays:  pulumi.Int(7),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Backup vault lock configuration can be imported using the `name`, e.g.,

```sh

$ pulumi import aws:backup/vaultLockConfiguration:VaultLockConfiguration test TestVault

```

func GetVaultLockConfiguration

func GetVaultLockConfiguration(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VaultLockConfigurationState, opts ...pulumi.ResourceOption) (*VaultLockConfiguration, error)

GetVaultLockConfiguration gets an existing VaultLockConfiguration 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 NewVaultLockConfiguration

func NewVaultLockConfiguration(ctx *pulumi.Context,
	name string, args *VaultLockConfigurationArgs, opts ...pulumi.ResourceOption) (*VaultLockConfiguration, error)

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

func (*VaultLockConfiguration) ElementType

func (*VaultLockConfiguration) ElementType() reflect.Type

func (*VaultLockConfiguration) ToVaultLockConfigurationOutput

func (i *VaultLockConfiguration) ToVaultLockConfigurationOutput() VaultLockConfigurationOutput

func (*VaultLockConfiguration) ToVaultLockConfigurationOutputWithContext

func (i *VaultLockConfiguration) ToVaultLockConfigurationOutputWithContext(ctx context.Context) VaultLockConfigurationOutput

type VaultLockConfigurationArgs

type VaultLockConfigurationArgs struct {
	// Name of the backup vault to add a lock configuration for.
	BackupVaultName pulumi.StringInput
	// The number of days before the lock date. If omitted creates a vault lock in `governance` mode, otherwise it will create a vault lock in `compliance` mode.
	ChangeableForDays pulumi.IntPtrInput
	// The maximum retention period that the vault retains its recovery points.
	MaxRetentionDays pulumi.IntPtrInput
	// The minimum retention period that the vault retains its recovery points.
	MinRetentionDays pulumi.IntPtrInput
}

The set of arguments for constructing a VaultLockConfiguration resource.

func (VaultLockConfigurationArgs) ElementType

func (VaultLockConfigurationArgs) ElementType() reflect.Type

type VaultLockConfigurationArray

type VaultLockConfigurationArray []VaultLockConfigurationInput

func (VaultLockConfigurationArray) ElementType

func (VaultLockConfigurationArray) ToVaultLockConfigurationArrayOutput

func (i VaultLockConfigurationArray) ToVaultLockConfigurationArrayOutput() VaultLockConfigurationArrayOutput

func (VaultLockConfigurationArray) ToVaultLockConfigurationArrayOutputWithContext

func (i VaultLockConfigurationArray) ToVaultLockConfigurationArrayOutputWithContext(ctx context.Context) VaultLockConfigurationArrayOutput

type VaultLockConfigurationArrayInput

type VaultLockConfigurationArrayInput interface {
	pulumi.Input

	ToVaultLockConfigurationArrayOutput() VaultLockConfigurationArrayOutput
	ToVaultLockConfigurationArrayOutputWithContext(context.Context) VaultLockConfigurationArrayOutput
}

VaultLockConfigurationArrayInput is an input type that accepts VaultLockConfigurationArray and VaultLockConfigurationArrayOutput values. You can construct a concrete instance of `VaultLockConfigurationArrayInput` via:

VaultLockConfigurationArray{ VaultLockConfigurationArgs{...} }

type VaultLockConfigurationArrayOutput

type VaultLockConfigurationArrayOutput struct{ *pulumi.OutputState }

func (VaultLockConfigurationArrayOutput) ElementType

func (VaultLockConfigurationArrayOutput) Index

func (VaultLockConfigurationArrayOutput) ToVaultLockConfigurationArrayOutput

func (o VaultLockConfigurationArrayOutput) ToVaultLockConfigurationArrayOutput() VaultLockConfigurationArrayOutput

func (VaultLockConfigurationArrayOutput) ToVaultLockConfigurationArrayOutputWithContext

func (o VaultLockConfigurationArrayOutput) ToVaultLockConfigurationArrayOutputWithContext(ctx context.Context) VaultLockConfigurationArrayOutput

type VaultLockConfigurationInput

type VaultLockConfigurationInput interface {
	pulumi.Input

	ToVaultLockConfigurationOutput() VaultLockConfigurationOutput
	ToVaultLockConfigurationOutputWithContext(ctx context.Context) VaultLockConfigurationOutput
}

type VaultLockConfigurationMap

type VaultLockConfigurationMap map[string]VaultLockConfigurationInput

func (VaultLockConfigurationMap) ElementType

func (VaultLockConfigurationMap) ElementType() reflect.Type

func (VaultLockConfigurationMap) ToVaultLockConfigurationMapOutput

func (i VaultLockConfigurationMap) ToVaultLockConfigurationMapOutput() VaultLockConfigurationMapOutput

func (VaultLockConfigurationMap) ToVaultLockConfigurationMapOutputWithContext

func (i VaultLockConfigurationMap) ToVaultLockConfigurationMapOutputWithContext(ctx context.Context) VaultLockConfigurationMapOutput

type VaultLockConfigurationMapInput

type VaultLockConfigurationMapInput interface {
	pulumi.Input

	ToVaultLockConfigurationMapOutput() VaultLockConfigurationMapOutput
	ToVaultLockConfigurationMapOutputWithContext(context.Context) VaultLockConfigurationMapOutput
}

VaultLockConfigurationMapInput is an input type that accepts VaultLockConfigurationMap and VaultLockConfigurationMapOutput values. You can construct a concrete instance of `VaultLockConfigurationMapInput` via:

VaultLockConfigurationMap{ "key": VaultLockConfigurationArgs{...} }

type VaultLockConfigurationMapOutput

type VaultLockConfigurationMapOutput struct{ *pulumi.OutputState }

func (VaultLockConfigurationMapOutput) ElementType

func (VaultLockConfigurationMapOutput) MapIndex

func (VaultLockConfigurationMapOutput) ToVaultLockConfigurationMapOutput

func (o VaultLockConfigurationMapOutput) ToVaultLockConfigurationMapOutput() VaultLockConfigurationMapOutput

func (VaultLockConfigurationMapOutput) ToVaultLockConfigurationMapOutputWithContext

func (o VaultLockConfigurationMapOutput) ToVaultLockConfigurationMapOutputWithContext(ctx context.Context) VaultLockConfigurationMapOutput

type VaultLockConfigurationOutput

type VaultLockConfigurationOutput struct{ *pulumi.OutputState }

func (VaultLockConfigurationOutput) BackupVaultArn added in v5.4.0

The ARN of the vault.

func (VaultLockConfigurationOutput) BackupVaultName added in v5.4.0

func (o VaultLockConfigurationOutput) BackupVaultName() pulumi.StringOutput

Name of the backup vault to add a lock configuration for.

func (VaultLockConfigurationOutput) ChangeableForDays added in v5.4.0

func (o VaultLockConfigurationOutput) ChangeableForDays() pulumi.IntPtrOutput

The number of days before the lock date. If omitted creates a vault lock in `governance` mode, otherwise it will create a vault lock in `compliance` mode.

func (VaultLockConfigurationOutput) ElementType

func (VaultLockConfigurationOutput) MaxRetentionDays added in v5.4.0

func (o VaultLockConfigurationOutput) MaxRetentionDays() pulumi.IntPtrOutput

The maximum retention period that the vault retains its recovery points.

func (VaultLockConfigurationOutput) MinRetentionDays added in v5.4.0

func (o VaultLockConfigurationOutput) MinRetentionDays() pulumi.IntPtrOutput

The minimum retention period that the vault retains its recovery points.

func (VaultLockConfigurationOutput) ToVaultLockConfigurationOutput

func (o VaultLockConfigurationOutput) ToVaultLockConfigurationOutput() VaultLockConfigurationOutput

func (VaultLockConfigurationOutput) ToVaultLockConfigurationOutputWithContext

func (o VaultLockConfigurationOutput) ToVaultLockConfigurationOutputWithContext(ctx context.Context) VaultLockConfigurationOutput

type VaultLockConfigurationState

type VaultLockConfigurationState struct {
	// The ARN of the vault.
	BackupVaultArn pulumi.StringPtrInput
	// Name of the backup vault to add a lock configuration for.
	BackupVaultName pulumi.StringPtrInput
	// The number of days before the lock date. If omitted creates a vault lock in `governance` mode, otherwise it will create a vault lock in `compliance` mode.
	ChangeableForDays pulumi.IntPtrInput
	// The maximum retention period that the vault retains its recovery points.
	MaxRetentionDays pulumi.IntPtrInput
	// The minimum retention period that the vault retains its recovery points.
	MinRetentionDays pulumi.IntPtrInput
}

func (VaultLockConfigurationState) ElementType

type VaultMap

type VaultMap map[string]VaultInput

func (VaultMap) ElementType

func (VaultMap) ElementType() reflect.Type

func (VaultMap) ToVaultMapOutput

func (i VaultMap) ToVaultMapOutput() VaultMapOutput

func (VaultMap) ToVaultMapOutputWithContext

func (i VaultMap) ToVaultMapOutputWithContext(ctx context.Context) VaultMapOutput

type VaultMapInput

type VaultMapInput interface {
	pulumi.Input

	ToVaultMapOutput() VaultMapOutput
	ToVaultMapOutputWithContext(context.Context) VaultMapOutput
}

VaultMapInput is an input type that accepts VaultMap and VaultMapOutput values. You can construct a concrete instance of `VaultMapInput` via:

VaultMap{ "key": VaultArgs{...} }

type VaultMapOutput

type VaultMapOutput struct{ *pulumi.OutputState }

func (VaultMapOutput) ElementType

func (VaultMapOutput) ElementType() reflect.Type

func (VaultMapOutput) MapIndex

func (VaultMapOutput) ToVaultMapOutput

func (o VaultMapOutput) ToVaultMapOutput() VaultMapOutput

func (VaultMapOutput) ToVaultMapOutputWithContext

func (o VaultMapOutput) ToVaultMapOutputWithContext(ctx context.Context) VaultMapOutput

type VaultNotifications

type VaultNotifications struct {
	pulumi.CustomResourceState

	// The ARN of the vault.
	BackupVaultArn pulumi.StringOutput `pulumi:"backupVaultArn"`
	// An array of events that indicate the status of jobs to back up resources to the backup vault.
	BackupVaultEvents pulumi.StringArrayOutput `pulumi:"backupVaultEvents"`
	// Name of the backup vault to add notifications for.
	BackupVaultName pulumi.StringOutput `pulumi:"backupVaultName"`
	// The Amazon Resource Name (ARN) that specifies the topic for a backup vault’s events
	SnsTopicArn pulumi.StringOutput `pulumi:"snsTopicArn"`
}

Provides an AWS Backup vault notifications resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi" "github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup" "github.com/pulumi/pulumi-aws/sdk/v5/go/aws/iam" "github.com/pulumi/pulumi-aws/sdk/v5/go/aws/sns" ) func main() { pulumi.Run(func(ctx *pulumi.Context) error { testTopic, err := sns.NewTopic(ctx, "testTopic", nil) if err != nil { return err } testPolicyDocument := testTopic.Arn.ApplyT(func(arn string) (iam.GetPolicyDocumentResult, error) { return iam.GetPolicyDocumentOutput(ctx, iam.GetPolicyDocumentOutputArgs{ PolicyId: "__default_policy_ID", Statements: []iam.GetPolicyDocumentStatement{ { Actions: []string{ "SNS:Publish", }, Effect: "Allow", Principals: []iam.GetPolicyDocumentStatementPrincipal{ { Type: "Service", Identifiers: []string{ "backup.amazonaws.com", }, }, }, Resources: interface{}{ arn, }, Sid: "__default_statement_ID", }, }, }, nil), nil }).(iam.GetPolicyDocumentResultOutput) _, err = sns.NewTopicPolicy(ctx, "testTopicPolicy", &sns.TopicPolicyArgs{ Arn: testTopic.Arn, Policy: testPolicyDocument.ApplyT(func(testPolicyDocument iam.GetPolicyDocumentResult) (*string, error) { return &testPolicyDocument.Json, nil }).(pulumi.StringPtrOutput), }) if err != nil { return err } _, err = backup.NewVaultNotifications(ctx, "testVaultNotifications", &backup.VaultNotificationsArgs{ BackupVaultName: pulumi.String("example_backup_vault"), SnsTopicArn: testTopic.Arn, BackupVaultEvents: pulumi.StringArray{ pulumi.String("BACKUP_JOB_STARTED"), pulumi.String("RESTORE_JOB_COMPLETED"), }, }) if err != nil { return err } return nil }) } ```

## Import

Backup vault notifications can be imported using the `name`, e.g.,

```sh

$ pulumi import aws:backup/vaultNotifications:VaultNotifications test TestVault

```

func GetVaultNotifications

func GetVaultNotifications(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VaultNotificationsState, opts ...pulumi.ResourceOption) (*VaultNotifications, error)

GetVaultNotifications gets an existing VaultNotifications 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 NewVaultNotifications

func NewVaultNotifications(ctx *pulumi.Context,
	name string, args *VaultNotificationsArgs, opts ...pulumi.ResourceOption) (*VaultNotifications, error)

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

func (*VaultNotifications) ElementType

func (*VaultNotifications) ElementType() reflect.Type

func (*VaultNotifications) ToVaultNotificationsOutput

func (i *VaultNotifications) ToVaultNotificationsOutput() VaultNotificationsOutput

func (*VaultNotifications) ToVaultNotificationsOutputWithContext

func (i *VaultNotifications) ToVaultNotificationsOutputWithContext(ctx context.Context) VaultNotificationsOutput

type VaultNotificationsArgs

type VaultNotificationsArgs struct {
	// An array of events that indicate the status of jobs to back up resources to the backup vault.
	BackupVaultEvents pulumi.StringArrayInput
	// Name of the backup vault to add notifications for.
	BackupVaultName pulumi.StringInput
	// The Amazon Resource Name (ARN) that specifies the topic for a backup vault’s events
	SnsTopicArn pulumi.StringInput
}

The set of arguments for constructing a VaultNotifications resource.

func (VaultNotificationsArgs) ElementType

func (VaultNotificationsArgs) ElementType() reflect.Type

type VaultNotificationsArray

type VaultNotificationsArray []VaultNotificationsInput

func (VaultNotificationsArray) ElementType

func (VaultNotificationsArray) ElementType() reflect.Type

func (VaultNotificationsArray) ToVaultNotificationsArrayOutput

func (i VaultNotificationsArray) ToVaultNotificationsArrayOutput() VaultNotificationsArrayOutput

func (VaultNotificationsArray) ToVaultNotificationsArrayOutputWithContext

func (i VaultNotificationsArray) ToVaultNotificationsArrayOutputWithContext(ctx context.Context) VaultNotificationsArrayOutput

type VaultNotificationsArrayInput

type VaultNotificationsArrayInput interface {
	pulumi.Input

	ToVaultNotificationsArrayOutput() VaultNotificationsArrayOutput
	ToVaultNotificationsArrayOutputWithContext(context.Context) VaultNotificationsArrayOutput
}

VaultNotificationsArrayInput is an input type that accepts VaultNotificationsArray and VaultNotificationsArrayOutput values. You can construct a concrete instance of `VaultNotificationsArrayInput` via:

VaultNotificationsArray{ VaultNotificationsArgs{...} }

type VaultNotificationsArrayOutput

type VaultNotificationsArrayOutput struct{ *pulumi.OutputState }

func (VaultNotificationsArrayOutput) ElementType

func (VaultNotificationsArrayOutput) Index

func (VaultNotificationsArrayOutput) ToVaultNotificationsArrayOutput

func (o VaultNotificationsArrayOutput) ToVaultNotificationsArrayOutput() VaultNotificationsArrayOutput

func (VaultNotificationsArrayOutput) ToVaultNotificationsArrayOutputWithContext

func (o VaultNotificationsArrayOutput) ToVaultNotificationsArrayOutputWithContext(ctx context.Context) VaultNotificationsArrayOutput

type VaultNotificationsInput

type VaultNotificationsInput interface {
	pulumi.Input

	ToVaultNotificationsOutput() VaultNotificationsOutput
	ToVaultNotificationsOutputWithContext(ctx context.Context) VaultNotificationsOutput
}

type VaultNotificationsMap

type VaultNotificationsMap map[string]VaultNotificationsInput

func (VaultNotificationsMap) ElementType

func (VaultNotificationsMap) ElementType() reflect.Type

func (VaultNotificationsMap) ToVaultNotificationsMapOutput

func (i VaultNotificationsMap) ToVaultNotificationsMapOutput() VaultNotificationsMapOutput

func (VaultNotificationsMap) ToVaultNotificationsMapOutputWithContext

func (i VaultNotificationsMap) ToVaultNotificationsMapOutputWithContext(ctx context.Context) VaultNotificationsMapOutput

type VaultNotificationsMapInput

type VaultNotificationsMapInput interface {
	pulumi.Input

	ToVaultNotificationsMapOutput() VaultNotificationsMapOutput
	ToVaultNotificationsMapOutputWithContext(context.Context) VaultNotificationsMapOutput
}

VaultNotificationsMapInput is an input type that accepts VaultNotificationsMap and VaultNotificationsMapOutput values. You can construct a concrete instance of `VaultNotificationsMapInput` via:

VaultNotificationsMap{ "key": VaultNotificationsArgs{...} }

type VaultNotificationsMapOutput

type VaultNotificationsMapOutput struct{ *pulumi.OutputState }

func (VaultNotificationsMapOutput) ElementType

func (VaultNotificationsMapOutput) MapIndex

func (VaultNotificationsMapOutput) ToVaultNotificationsMapOutput

func (o VaultNotificationsMapOutput) ToVaultNotificationsMapOutput() VaultNotificationsMapOutput

func (VaultNotificationsMapOutput) ToVaultNotificationsMapOutputWithContext

func (o VaultNotificationsMapOutput) ToVaultNotificationsMapOutputWithContext(ctx context.Context) VaultNotificationsMapOutput

type VaultNotificationsOutput

type VaultNotificationsOutput struct{ *pulumi.OutputState }

func (VaultNotificationsOutput) BackupVaultArn added in v5.4.0

func (o VaultNotificationsOutput) BackupVaultArn() pulumi.StringOutput

The ARN of the vault.

func (VaultNotificationsOutput) BackupVaultEvents added in v5.4.0

func (o VaultNotificationsOutput) BackupVaultEvents() pulumi.StringArrayOutput

An array of events that indicate the status of jobs to back up resources to the backup vault.

func (VaultNotificationsOutput) BackupVaultName added in v5.4.0

func (o VaultNotificationsOutput) BackupVaultName() pulumi.StringOutput

Name of the backup vault to add notifications for.

func (VaultNotificationsOutput) ElementType

func (VaultNotificationsOutput) ElementType() reflect.Type

func (VaultNotificationsOutput) SnsTopicArn added in v5.4.0

The Amazon Resource Name (ARN) that specifies the topic for a backup vault’s events

func (VaultNotificationsOutput) ToVaultNotificationsOutput

func (o VaultNotificationsOutput) ToVaultNotificationsOutput() VaultNotificationsOutput

func (VaultNotificationsOutput) ToVaultNotificationsOutputWithContext

func (o VaultNotificationsOutput) ToVaultNotificationsOutputWithContext(ctx context.Context) VaultNotificationsOutput

type VaultNotificationsState

type VaultNotificationsState struct {
	// The ARN of the vault.
	BackupVaultArn pulumi.StringPtrInput
	// An array of events that indicate the status of jobs to back up resources to the backup vault.
	BackupVaultEvents pulumi.StringArrayInput
	// Name of the backup vault to add notifications for.
	BackupVaultName pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) that specifies the topic for a backup vault’s events
	SnsTopicArn pulumi.StringPtrInput
}

func (VaultNotificationsState) ElementType

func (VaultNotificationsState) ElementType() reflect.Type

type VaultOutput

type VaultOutput struct{ *pulumi.OutputState }

func (VaultOutput) Arn added in v5.4.0

The ARN of the vault.

func (VaultOutput) ElementType

func (VaultOutput) ElementType() reflect.Type

func (VaultOutput) ForceDestroy added in v5.11.0

func (o VaultOutput) ForceDestroy() pulumi.BoolPtrOutput

A boolean that indicates that all recovery points stored in the vault are deleted so that the vault can be destroyed without error.

func (VaultOutput) KmsKeyArn added in v5.4.0

func (o VaultOutput) KmsKeyArn() pulumi.StringOutput

The server-side encryption key that is used to protect your backups.

func (VaultOutput) Name added in v5.4.0

func (o VaultOutput) Name() pulumi.StringOutput

Name of the backup vault to create.

func (VaultOutput) RecoveryPoints added in v5.4.0

func (o VaultOutput) RecoveryPoints() pulumi.IntOutput

The number of recovery points that are stored in a backup vault.

func (VaultOutput) Tags added in v5.4.0

Metadata that you can assign to help organize the resources that you create. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (VaultOutput) TagsAll added in v5.4.0

func (o VaultOutput) TagsAll() pulumi.StringMapOutput

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

func (VaultOutput) ToVaultOutput

func (o VaultOutput) ToVaultOutput() VaultOutput

func (VaultOutput) ToVaultOutputWithContext

func (o VaultOutput) ToVaultOutputWithContext(ctx context.Context) VaultOutput

type VaultPolicy

type VaultPolicy struct {
	pulumi.CustomResourceState

	// The ARN of the vault.
	BackupVaultArn pulumi.StringOutput `pulumi:"backupVaultArn"`
	// Name of the backup vault to add policy for.
	BackupVaultName pulumi.StringOutput `pulumi:"backupVaultName"`
	// The backup vault access policy document in JSON format.
	Policy pulumi.StringOutput `pulumi:"policy"`
}

Provides an AWS Backup vault policy resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/backup"
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/iam"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleVault, err := backup.NewVault(ctx, "exampleVault", nil)
		if err != nil {
			return err
		}
		examplePolicyDocument := iam.GetPolicyDocumentOutput(ctx, iam.GetPolicyDocumentOutputArgs{
			Statements: iam.GetPolicyDocumentStatementArray{
				&iam.GetPolicyDocumentStatementArgs{
					Effect: pulumi.String("Allow"),
					Principals: iam.GetPolicyDocumentStatementPrincipalArray{
						&iam.GetPolicyDocumentStatementPrincipalArgs{
							Type: pulumi.String("AWS"),
							Identifiers: pulumi.StringArray{
								pulumi.String("*"),
							},
						},
					},
					Actions: pulumi.StringArray{
						pulumi.String("backup:DescribeBackupVault"),
						pulumi.String("backup:DeleteBackupVault"),
						pulumi.String("backup:PutBackupVaultAccessPolicy"),
						pulumi.String("backup:DeleteBackupVaultAccessPolicy"),
						pulumi.String("backup:GetBackupVaultAccessPolicy"),
						pulumi.String("backup:StartBackupJob"),
						pulumi.String("backup:GetBackupVaultNotifications"),
						pulumi.String("backup:PutBackupVaultNotifications"),
					},
					Resources: pulumi.StringArray{
						exampleVault.Arn,
					},
				},
			},
		}, nil)
		_, err = backup.NewVaultPolicy(ctx, "exampleVaultPolicy", &backup.VaultPolicyArgs{
			BackupVaultName: exampleVault.Name,
			Policy: examplePolicyDocument.ApplyT(func(examplePolicyDocument iam.GetPolicyDocumentResult) (*string, error) {
				return &examplePolicyDocument.Json, nil
			}).(pulumi.StringPtrOutput),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Backup vault policy can be imported using the `name`, e.g.,

```sh

$ pulumi import aws:backup/vaultPolicy:VaultPolicy test TestVault

```

func GetVaultPolicy

func GetVaultPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VaultPolicyState, opts ...pulumi.ResourceOption) (*VaultPolicy, error)

GetVaultPolicy gets an existing VaultPolicy 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 NewVaultPolicy

func NewVaultPolicy(ctx *pulumi.Context,
	name string, args *VaultPolicyArgs, opts ...pulumi.ResourceOption) (*VaultPolicy, error)

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

func (*VaultPolicy) ElementType

func (*VaultPolicy) ElementType() reflect.Type

func (*VaultPolicy) ToVaultPolicyOutput

func (i *VaultPolicy) ToVaultPolicyOutput() VaultPolicyOutput

func (*VaultPolicy) ToVaultPolicyOutputWithContext

func (i *VaultPolicy) ToVaultPolicyOutputWithContext(ctx context.Context) VaultPolicyOutput

type VaultPolicyArgs

type VaultPolicyArgs struct {
	// Name of the backup vault to add policy for.
	BackupVaultName pulumi.StringInput
	// The backup vault access policy document in JSON format.
	Policy pulumi.StringInput
}

The set of arguments for constructing a VaultPolicy resource.

func (VaultPolicyArgs) ElementType

func (VaultPolicyArgs) ElementType() reflect.Type

type VaultPolicyArray

type VaultPolicyArray []VaultPolicyInput

func (VaultPolicyArray) ElementType

func (VaultPolicyArray) ElementType() reflect.Type

func (VaultPolicyArray) ToVaultPolicyArrayOutput

func (i VaultPolicyArray) ToVaultPolicyArrayOutput() VaultPolicyArrayOutput

func (VaultPolicyArray) ToVaultPolicyArrayOutputWithContext

func (i VaultPolicyArray) ToVaultPolicyArrayOutputWithContext(ctx context.Context) VaultPolicyArrayOutput

type VaultPolicyArrayInput

type VaultPolicyArrayInput interface {
	pulumi.Input

	ToVaultPolicyArrayOutput() VaultPolicyArrayOutput
	ToVaultPolicyArrayOutputWithContext(context.Context) VaultPolicyArrayOutput
}

VaultPolicyArrayInput is an input type that accepts VaultPolicyArray and VaultPolicyArrayOutput values. You can construct a concrete instance of `VaultPolicyArrayInput` via:

VaultPolicyArray{ VaultPolicyArgs{...} }

type VaultPolicyArrayOutput

type VaultPolicyArrayOutput struct{ *pulumi.OutputState }

func (VaultPolicyArrayOutput) ElementType

func (VaultPolicyArrayOutput) ElementType() reflect.Type

func (VaultPolicyArrayOutput) Index

func (VaultPolicyArrayOutput) ToVaultPolicyArrayOutput

func (o VaultPolicyArrayOutput) ToVaultPolicyArrayOutput() VaultPolicyArrayOutput

func (VaultPolicyArrayOutput) ToVaultPolicyArrayOutputWithContext

func (o VaultPolicyArrayOutput) ToVaultPolicyArrayOutputWithContext(ctx context.Context) VaultPolicyArrayOutput

type VaultPolicyInput

type VaultPolicyInput interface {
	pulumi.Input

	ToVaultPolicyOutput() VaultPolicyOutput
	ToVaultPolicyOutputWithContext(ctx context.Context) VaultPolicyOutput
}

type VaultPolicyMap

type VaultPolicyMap map[string]VaultPolicyInput

func (VaultPolicyMap) ElementType

func (VaultPolicyMap) ElementType() reflect.Type

func (VaultPolicyMap) ToVaultPolicyMapOutput

func (i VaultPolicyMap) ToVaultPolicyMapOutput() VaultPolicyMapOutput

func (VaultPolicyMap) ToVaultPolicyMapOutputWithContext

func (i VaultPolicyMap) ToVaultPolicyMapOutputWithContext(ctx context.Context) VaultPolicyMapOutput

type VaultPolicyMapInput

type VaultPolicyMapInput interface {
	pulumi.Input

	ToVaultPolicyMapOutput() VaultPolicyMapOutput
	ToVaultPolicyMapOutputWithContext(context.Context) VaultPolicyMapOutput
}

VaultPolicyMapInput is an input type that accepts VaultPolicyMap and VaultPolicyMapOutput values. You can construct a concrete instance of `VaultPolicyMapInput` via:

VaultPolicyMap{ "key": VaultPolicyArgs{...} }

type VaultPolicyMapOutput

type VaultPolicyMapOutput struct{ *pulumi.OutputState }

func (VaultPolicyMapOutput) ElementType

func (VaultPolicyMapOutput) ElementType() reflect.Type

func (VaultPolicyMapOutput) MapIndex

func (VaultPolicyMapOutput) ToVaultPolicyMapOutput

func (o VaultPolicyMapOutput) ToVaultPolicyMapOutput() VaultPolicyMapOutput

func (VaultPolicyMapOutput) ToVaultPolicyMapOutputWithContext

func (o VaultPolicyMapOutput) ToVaultPolicyMapOutputWithContext(ctx context.Context) VaultPolicyMapOutput

type VaultPolicyOutput

type VaultPolicyOutput struct{ *pulumi.OutputState }

func (VaultPolicyOutput) BackupVaultArn added in v5.4.0

func (o VaultPolicyOutput) BackupVaultArn() pulumi.StringOutput

The ARN of the vault.

func (VaultPolicyOutput) BackupVaultName added in v5.4.0

func (o VaultPolicyOutput) BackupVaultName() pulumi.StringOutput

Name of the backup vault to add policy for.

func (VaultPolicyOutput) ElementType

func (VaultPolicyOutput) ElementType() reflect.Type

func (VaultPolicyOutput) Policy added in v5.4.0

The backup vault access policy document in JSON format.

func (VaultPolicyOutput) ToVaultPolicyOutput

func (o VaultPolicyOutput) ToVaultPolicyOutput() VaultPolicyOutput

func (VaultPolicyOutput) ToVaultPolicyOutputWithContext

func (o VaultPolicyOutput) ToVaultPolicyOutputWithContext(ctx context.Context) VaultPolicyOutput

type VaultPolicyState

type VaultPolicyState struct {
	// The ARN of the vault.
	BackupVaultArn pulumi.StringPtrInput
	// Name of the backup vault to add policy for.
	BackupVaultName pulumi.StringPtrInput
	// The backup vault access policy document in JSON format.
	Policy pulumi.StringPtrInput
}

func (VaultPolicyState) ElementType

func (VaultPolicyState) ElementType() reflect.Type

type VaultState

type VaultState struct {
	// The ARN of the vault.
	Arn pulumi.StringPtrInput
	// A boolean that indicates that all recovery points stored in the vault are deleted so that the vault can be destroyed without error.
	ForceDestroy pulumi.BoolPtrInput
	// The server-side encryption key that is used to protect your backups.
	KmsKeyArn pulumi.StringPtrInput
	// Name of the backup vault to create.
	Name pulumi.StringPtrInput
	// The number of recovery points that are stored in a backup vault.
	RecoveryPoints pulumi.IntPtrInput
	// Metadata that you can assign to help organize the resources that you create. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
}

func (VaultState) ElementType

func (VaultState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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