SnapshotCopyArgs

data class SnapshotCopyArgs(val clusterIdentifier: Output<String>? = null, val destinationRegion: Output<String>? = null, val manualSnapshotRetentionPeriod: Output<Int>? = null, val retentionPeriod: Output<Int>? = null, val snapshotCopyGrantName: Output<String>? = null) : ConvertibleToJava<SnapshotCopyArgs>

Resource for managing an AWS Redshift Snapshot Copy.

Example Usage

Basic Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.redshift.SnapshotCopy("example", {
clusterIdentifier: exampleAwsRedshiftCluster.id,
destinationRegion: "us-east-1",
});
import pulumi
import pulumi_aws as aws
example = aws.redshift.SnapshotCopy("example",
cluster_identifier=example_aws_redshift_cluster["id"],
destination_region="us-east-1")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.RedShift.SnapshotCopy("example", new()
{
ClusterIdentifier = exampleAwsRedshiftCluster.Id,
DestinationRegion = "us-east-1",
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/redshift"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := redshift.NewSnapshotCopy(ctx, "example", &redshift.SnapshotCopyArgs{
ClusterIdentifier: pulumi.Any(exampleAwsRedshiftCluster.Id),
DestinationRegion: pulumi.String("us-east-1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.redshift.SnapshotCopy;
import com.pulumi.aws.redshift.SnapshotCopyArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new SnapshotCopy("example", SnapshotCopyArgs.builder()
.clusterIdentifier(exampleAwsRedshiftCluster.id())
.destinationRegion("us-east-1")
.build());
}
}
resources:
example:
type: aws:redshift:SnapshotCopy
properties:
clusterIdentifier: ${exampleAwsRedshiftCluster.id}
destinationRegion: us-east-1

Import

Using pulumi import, import Redshift Snapshot Copy using the id. For example:

$ pulumi import aws:redshift/snapshotCopy:SnapshotCopy example cluster-id-12345678

Constructors

Link copied to clipboard
constructor(clusterIdentifier: Output<String>? = null, destinationRegion: Output<String>? = null, manualSnapshotRetentionPeriod: Output<Int>? = null, retentionPeriod: Output<Int>? = null, snapshotCopyGrantName: Output<String>? = null)

Properties

Link copied to clipboard
val clusterIdentifier: Output<String>? = null

Identifier of the source cluster.

Link copied to clipboard
val destinationRegion: Output<String>? = null

AWS Region to copy snapshots to. The following arguments are optional:

Link copied to clipboard
val manualSnapshotRetentionPeriod: Output<Int>? = null

Number of days to retain newly copied snapshots in the destination AWS Region after they are copied from the source AWS Region. If the value is -1, the manual snapshot is retained indefinitely.

Link copied to clipboard
val retentionPeriod: Output<Int>? = null

Number of days to retain automated snapshots in the destination region after they are copied from the source region.

Link copied to clipboard
val snapshotCopyGrantName: Output<String>? = null

Name of the snapshot copy grant to use when snapshots of an AWS KMS-encrypted cluster are copied to the destination region.

Functions

Link copied to clipboard
open override fun toJava(): SnapshotCopyArgs