Module backup

@pulumi/aws > backup

class Plan

extends CustomResource

Provides an AWS Backup plan resource.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.backup.Plan("example", {
    rules: [{
        ruleName: "tf_example_backup_rule",
        schedule: "cron(0 12 * * ? *)",
        targetVaultName: aws_backup_vault_test.name,
    }],
});

constructor

new Plan(name: string, args: PlanArgs, opts?: pulumi.CustomResourceOptions)

Create a Plan resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: PlanState, opts?: pulumi.CustomResourceOptions): Plan

Get an existing Plan resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property arn

public arn: pulumi.Output<string>;

The ARN of the backup plan.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

The display name of a backup plan.

property rules

public rules: pulumi.Output<{
    completionWindow: undefined | number;
    lifecycle: undefined | {
        coldStorageAfter: undefined | number;
        deleteAfter: undefined | number;
    };
    recoveryPointTags: undefined | {[key: string]: string};
    ruleName: string;
    schedule: undefined | string;
    startWindow: undefined | number;
    targetVaultName: string;
}[]>;

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

property tags

public tags: pulumi.Output<{[key: string]: any} | undefined>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property version

public version: pulumi.Output<string>;

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

class Selection

extends CustomResource

Manages selection conditions for AWS Backup plan resources.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.backup.Selection("example", {
    iamRoleArn: "arn:aws:iam::123456789012:role/service-role/AWSBackupDefaultServiceRole",
    planId: aws_backup_plan_example.id,
    resources: ["arn:aws:ec2:us-east-1:123456789012:volume/"],
    selectionTags: [{
        key: "foo",
        type: "STRINGEQUALS",
        value: "bar",
    }],
});

constructor

new Selection(name: string, args: SelectionArgs, opts?: pulumi.CustomResourceOptions)

Create a Selection resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SelectionState, opts?: pulumi.CustomResourceOptions): Selection

Get an existing Selection resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property iamRoleArn

public iamRoleArn: pulumi.Output<string>;

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 for additional information about using AWS managed policies or creating custom policies attached to the IAM role.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

The display name of a resource selection document.

property planId

public planId: pulumi.Output<string>;

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

property resources

public resources: pulumi.Output<string[] | undefined>;

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

property selectionTags

public selectionTags: pulumi.Output<{
    key: string;
    type: string;
    value: string;
}[] | undefined>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class Vault

extends CustomResource

Provides an AWS Backup vault resource.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.backup.Vault("example", {
    kmsKeyArn: aws_kms_key_example.arn,
});

constructor

new Vault(name: string, args?: VaultArgs, opts?: pulumi.CustomResourceOptions)

Create a Vault resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VaultState, opts?: pulumi.CustomResourceOptions): Vault

Get an existing Vault resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property arn

public arn: pulumi.Output<string>;

The ARN of the vault.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property kmsKeyArn

public kmsKeyArn: pulumi.Output<string>;

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

property name

public name: pulumi.Output<string>;

Name of the backup vault to create.

property recoveryPoints

public recoveryPoints: pulumi.Output<number>;

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

property tags

public tags: pulumi.Output<{[key: string]: string} | undefined>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

interface PlanArgs

The set of arguments for constructing a Plan resource.

property name

name?: pulumi.Input<string>;

The display name of a backup plan.

property rules

rules: pulumi.Input<pulumi.Input<{
    completionWindow: pulumi.Input<number>;
    lifecycle: pulumi.Input<{
        coldStorageAfter: pulumi.Input<number>;
        deleteAfter: pulumi.Input<number>;
    }>;
    recoveryPointTags: pulumi.Input<{[key: string]: pulumi.Input<string>}>;
    ruleName: pulumi.Input<string>;
    schedule: pulumi.Input<string>;
    startWindow: pulumi.Input<number>;
    targetVaultName: pulumi.Input<string>;
}>[]>;

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

property tags

tags?: pulumi.Input<{[key: string]: any}>;

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

interface PlanState

Input properties used for looking up and filtering Plan resources.

property arn

arn?: pulumi.Input<string>;

The ARN of the backup plan.

property name

name?: pulumi.Input<string>;

The display name of a backup plan.

property rules

rules?: pulumi.Input<pulumi.Input<{
    completionWindow: pulumi.Input<number>;
    lifecycle: pulumi.Input<{
        coldStorageAfter: pulumi.Input<number>;
        deleteAfter: pulumi.Input<number>;
    }>;
    recoveryPointTags: pulumi.Input<{[key: string]: pulumi.Input<string>}>;
    ruleName: pulumi.Input<string>;
    schedule: pulumi.Input<string>;
    startWindow: pulumi.Input<number>;
    targetVaultName: pulumi.Input<string>;
}>[]>;

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

property tags

tags?: pulumi.Input<{[key: string]: any}>;

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

property version

version?: pulumi.Input<string>;

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

interface SelectionArgs

The set of arguments for constructing a Selection resource.

property iamRoleArn

iamRoleArn: pulumi.Input<string>;

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 for additional information about using AWS managed policies or creating custom policies attached to the IAM role.

property name

name?: pulumi.Input<string>;

The display name of a resource selection document.

property planId

planId: pulumi.Input<string>;

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

property resources

resources?: pulumi.Input<pulumi.Input<string>[]>;

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

property selectionTags

selectionTags?: pulumi.Input<pulumi.Input<{
    key: pulumi.Input<string>;
    type: pulumi.Input<string>;
    value: pulumi.Input<string>;
}>[]>;

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

interface SelectionState

Input properties used for looking up and filtering Selection resources.

property iamRoleArn

iamRoleArn?: pulumi.Input<string>;

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 for additional information about using AWS managed policies or creating custom policies attached to the IAM role.

property name

name?: pulumi.Input<string>;

The display name of a resource selection document.

property planId

planId?: pulumi.Input<string>;

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

property resources

resources?: pulumi.Input<pulumi.Input<string>[]>;

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

property selectionTags

selectionTags?: pulumi.Input<pulumi.Input<{
    key: pulumi.Input<string>;
    type: pulumi.Input<string>;
    value: pulumi.Input<string>;
}>[]>;

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

interface VaultArgs

The set of arguments for constructing a Vault resource.

property kmsKeyArn

kmsKeyArn?: pulumi.Input<string>;

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

property name

name?: pulumi.Input<string>;

Name of the backup vault to create.

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

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

interface VaultState

Input properties used for looking up and filtering Vault resources.

property arn

arn?: pulumi.Input<string>;

The ARN of the vault.

property kmsKeyArn

kmsKeyArn?: pulumi.Input<string>;

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

property name

name?: pulumi.Input<string>;

Name of the backup vault to create.

property recoveryPoints

recoveryPoints?: pulumi.Input<number>;

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

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

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