alicloud.oss.BucketReplication
Explore with Pulumi AI
Provides an independent replication configuration resource for OSS bucket.
For information about OSS replication and how to use it, see What is cross-region replication and What is same-region replication.
NOTE: Available in v1.161.0+.
Example Usage
Set bucket replication configuration
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
using Random = Pulumi.Random;
return await Deployment.RunAsync(() =>
{
var @default = new Random.RandomInteger("default", new()
{
Max = 99999,
Min = 10000,
});
var bucketSrc = new AliCloud.Oss.Bucket("bucketSrc", new()
{
BucketName = @default.Result.Apply(result => $"example-src-{result}"),
});
var bucketDest = new AliCloud.Oss.Bucket("bucketDest", new()
{
BucketName = @default.Result.Apply(result => $"example-dest-{result}"),
});
var role = new AliCloud.Ram.Role("role", new()
{
Document = @" {
""Statement"": [
{
""Action"": ""sts:AssumeRole"",
""Effect"": ""Allow"",
""Principal"": {
""Service"": [
""oss.aliyuncs.com""
]
}
}
],
""Version"": ""1""
}
",
Description = "this is a test",
Force = true,
});
var policy = new AliCloud.Ram.Policy("policy", new()
{
PolicyName = @default.Result.Apply(result => $"example-policy-{result}"),
PolicyDocument = @" {
""Statement"": [
{
""Action"": [
""*""
],
""Effect"": ""Allow"",
""Resource"": [
""*""
]
}
],
""Version"": ""1""
}
",
Description = "this is a policy test",
Force = true,
});
var attach = new AliCloud.Ram.RolePolicyAttachment("attach", new()
{
PolicyName = policy.Name,
PolicyType = policy.Type,
RoleName = role.Name,
});
var key = new AliCloud.Kms.Key("key", new()
{
Description = "Hello KMS",
PendingWindowInDays = 7,
Status = "Enabled",
});
var cross_region_replication = new AliCloud.Oss.BucketReplication("cross-region-replication", new()
{
Bucket = bucketSrc.Id,
Action = "PUT,DELETE",
HistoricalObjectReplication = "enabled",
PrefixSet = new AliCloud.Oss.Inputs.BucketReplicationPrefixSetArgs
{
Prefixes = new[]
{
"prefix1/",
"prefix2/",
},
},
Destination = new AliCloud.Oss.Inputs.BucketReplicationDestinationArgs
{
Bucket = bucketDest.Id,
Location = bucketDest.Location,
},
SyncRole = role.Name,
EncryptionConfiguration = new AliCloud.Oss.Inputs.BucketReplicationEncryptionConfigurationArgs
{
ReplicaKmsKeyId = key.Id,
},
SourceSelectionCriteria = new AliCloud.Oss.Inputs.BucketReplicationSourceSelectionCriteriaArgs
{
SseKmsEncryptedObjects = new AliCloud.Oss.Inputs.BucketReplicationSourceSelectionCriteriaSseKmsEncryptedObjectsArgs
{
Status = "Enabled",
},
},
});
});
package main
import (
"fmt"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/kms"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/oss"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ram"
"github.com/pulumi/pulumi-random/sdk/v4/go/random"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := random.NewRandomInteger(ctx, "default", &random.RandomIntegerArgs{
Max: pulumi.Int(99999),
Min: pulumi.Int(10000),
})
if err != nil {
return err
}
bucketSrc, err := oss.NewBucket(ctx, "bucketSrc", &oss.BucketArgs{
Bucket: _default.Result.ApplyT(func(result int) (string, error) {
return fmt.Sprintf("example-src-%v", result), nil
}).(pulumi.StringOutput),
})
if err != nil {
return err
}
bucketDest, err := oss.NewBucket(ctx, "bucketDest", &oss.BucketArgs{
Bucket: _default.Result.ApplyT(func(result int) (string, error) {
return fmt.Sprintf("example-dest-%v", result), nil
}).(pulumi.StringOutput),
})
if err != nil {
return err
}
role, err := ram.NewRole(ctx, "role", &ram.RoleArgs{
Document: pulumi.String(` {
"Statement": [
{
"Action": "sts:AssumeRole",
"Effect": "Allow",
"Principal": {
"Service": [
"oss.aliyuncs.com"
]
}
}
],
"Version": "1"
}
`),
Description: pulumi.String("this is a test"),
Force: pulumi.Bool(true),
})
if err != nil {
return err
}
policy, err := ram.NewPolicy(ctx, "policy", &ram.PolicyArgs{
PolicyName: _default.Result.ApplyT(func(result int) (string, error) {
return fmt.Sprintf("example-policy-%v", result), nil
}).(pulumi.StringOutput),
PolicyDocument: pulumi.String(` {
"Statement": [
{
"Action": [
"*"
],
"Effect": "Allow",
"Resource": [
"*"
]
}
],
"Version": "1"
}
`),
Description: pulumi.String("this is a policy test"),
Force: pulumi.Bool(true),
})
if err != nil {
return err
}
_, err = ram.NewRolePolicyAttachment(ctx, "attach", &ram.RolePolicyAttachmentArgs{
PolicyName: policy.Name,
PolicyType: policy.Type,
RoleName: role.Name,
})
if err != nil {
return err
}
key, err := kms.NewKey(ctx, "key", &kms.KeyArgs{
Description: pulumi.String("Hello KMS"),
PendingWindowInDays: pulumi.Int(7),
Status: pulumi.String("Enabled"),
})
if err != nil {
return err
}
_, err = oss.NewBucketReplication(ctx, "cross-region-replication", &oss.BucketReplicationArgs{
Bucket: bucketSrc.ID(),
Action: pulumi.String("PUT,DELETE"),
HistoricalObjectReplication: pulumi.String("enabled"),
PrefixSet: &oss.BucketReplicationPrefixSetArgs{
Prefixes: pulumi.StringArray{
pulumi.String("prefix1/"),
pulumi.String("prefix2/"),
},
},
Destination: &oss.BucketReplicationDestinationArgs{
Bucket: bucketDest.ID(),
Location: bucketDest.Location,
},
SyncRole: role.Name,
EncryptionConfiguration: &oss.BucketReplicationEncryptionConfigurationArgs{
ReplicaKmsKeyId: key.ID(),
},
SourceSelectionCriteria: &oss.BucketReplicationSourceSelectionCriteriaArgs{
SseKmsEncryptedObjects: &oss.BucketReplicationSourceSelectionCriteriaSseKmsEncryptedObjectsArgs{
Status: pulumi.String("Enabled"),
},
},
})
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.random.RandomInteger;
import com.pulumi.random.RandomIntegerArgs;
import com.pulumi.alicloud.oss.Bucket;
import com.pulumi.alicloud.oss.BucketArgs;
import com.pulumi.alicloud.ram.Role;
import com.pulumi.alicloud.ram.RoleArgs;
import com.pulumi.alicloud.ram.Policy;
import com.pulumi.alicloud.ram.PolicyArgs;
import com.pulumi.alicloud.ram.RolePolicyAttachment;
import com.pulumi.alicloud.ram.RolePolicyAttachmentArgs;
import com.pulumi.alicloud.kms.Key;
import com.pulumi.alicloud.kms.KeyArgs;
import com.pulumi.alicloud.oss.BucketReplication;
import com.pulumi.alicloud.oss.BucketReplicationArgs;
import com.pulumi.alicloud.oss.inputs.BucketReplicationPrefixSetArgs;
import com.pulumi.alicloud.oss.inputs.BucketReplicationDestinationArgs;
import com.pulumi.alicloud.oss.inputs.BucketReplicationEncryptionConfigurationArgs;
import com.pulumi.alicloud.oss.inputs.BucketReplicationSourceSelectionCriteriaArgs;
import com.pulumi.alicloud.oss.inputs.BucketReplicationSourceSelectionCriteriaSseKmsEncryptedObjectsArgs;
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 default_ = new RandomInteger("default", RandomIntegerArgs.builder()
.max(99999)
.min(10000)
.build());
var bucketSrc = new Bucket("bucketSrc", BucketArgs.builder()
.bucket(default_.result().applyValue(result -> String.format("example-src-%s", result)))
.build());
var bucketDest = new Bucket("bucketDest", BucketArgs.builder()
.bucket(default_.result().applyValue(result -> String.format("example-dest-%s", result)))
.build());
var role = new Role("role", RoleArgs.builder()
.document("""
{
"Statement": [
{
"Action": "sts:AssumeRole",
"Effect": "Allow",
"Principal": {
"Service": [
"oss.aliyuncs.com"
]
}
}
],
"Version": "1"
}
""")
.description("this is a test")
.force(true)
.build());
var policy = new Policy("policy", PolicyArgs.builder()
.policyName(default_.result().applyValue(result -> String.format("example-policy-%s", result)))
.policyDocument("""
{
"Statement": [
{
"Action": [
"*"
],
"Effect": "Allow",
"Resource": [
"*"
]
}
],
"Version": "1"
}
""")
.description("this is a policy test")
.force(true)
.build());
var attach = new RolePolicyAttachment("attach", RolePolicyAttachmentArgs.builder()
.policyName(policy.name())
.policyType(policy.type())
.roleName(role.name())
.build());
var key = new Key("key", KeyArgs.builder()
.description("Hello KMS")
.pendingWindowInDays("7")
.status("Enabled")
.build());
var cross_region_replication = new BucketReplication("cross-region-replication", BucketReplicationArgs.builder()
.bucket(bucketSrc.id())
.action("PUT,DELETE")
.historicalObjectReplication("enabled")
.prefixSet(BucketReplicationPrefixSetArgs.builder()
.prefixes(
"prefix1/",
"prefix2/")
.build())
.destination(BucketReplicationDestinationArgs.builder()
.bucket(bucketDest.id())
.location(bucketDest.location())
.build())
.syncRole(role.name())
.encryptionConfiguration(BucketReplicationEncryptionConfigurationArgs.builder()
.replicaKmsKeyId(key.id())
.build())
.sourceSelectionCriteria(BucketReplicationSourceSelectionCriteriaArgs.builder()
.sseKmsEncryptedObjects(BucketReplicationSourceSelectionCriteriaSseKmsEncryptedObjectsArgs.builder()
.status("Enabled")
.build())
.build())
.build());
}
}
import pulumi
import pulumi_alicloud as alicloud
import pulumi_random as random
default = random.RandomInteger("default",
max=99999,
min=10000)
bucket_src = alicloud.oss.Bucket("bucketSrc", bucket=default.result.apply(lambda result: f"example-src-{result}"))
bucket_dest = alicloud.oss.Bucket("bucketDest", bucket=default.result.apply(lambda result: f"example-dest-{result}"))
role = alicloud.ram.Role("role",
document=""" {
"Statement": [
{
"Action": "sts:AssumeRole",
"Effect": "Allow",
"Principal": {
"Service": [
"oss.aliyuncs.com"
]
}
}
],
"Version": "1"
}
""",
description="this is a test",
force=True)
policy = alicloud.ram.Policy("policy",
policy_name=default.result.apply(lambda result: f"example-policy-{result}"),
policy_document=""" {
"Statement": [
{
"Action": [
"*"
],
"Effect": "Allow",
"Resource": [
"*"
]
}
],
"Version": "1"
}
""",
description="this is a policy test",
force=True)
attach = alicloud.ram.RolePolicyAttachment("attach",
policy_name=policy.name,
policy_type=policy.type,
role_name=role.name)
key = alicloud.kms.Key("key",
description="Hello KMS",
pending_window_in_days=7,
status="Enabled")
cross_region_replication = alicloud.oss.BucketReplication("cross-region-replication",
bucket=bucket_src.id,
action="PUT,DELETE",
historical_object_replication="enabled",
prefix_set=alicloud.oss.BucketReplicationPrefixSetArgs(
prefixes=[
"prefix1/",
"prefix2/",
],
),
destination=alicloud.oss.BucketReplicationDestinationArgs(
bucket=bucket_dest.id,
location=bucket_dest.location,
),
sync_role=role.name,
encryption_configuration=alicloud.oss.BucketReplicationEncryptionConfigurationArgs(
replica_kms_key_id=key.id,
),
source_selection_criteria=alicloud.oss.BucketReplicationSourceSelectionCriteriaArgs(
sse_kms_encrypted_objects=alicloud.oss.BucketReplicationSourceSelectionCriteriaSseKmsEncryptedObjectsArgs(
status="Enabled",
),
))
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
import * as random from "@pulumi/random";
const _default = new random.RandomInteger("default", {
max: 99999,
min: 10000,
});
const bucketSrc = new alicloud.oss.Bucket("bucketSrc", {bucket: pulumi.interpolate`example-src-${_default.result}`});
const bucketDest = new alicloud.oss.Bucket("bucketDest", {bucket: pulumi.interpolate`example-dest-${_default.result}`});
const role = new alicloud.ram.Role("role", {
document: ` {
"Statement": [
{
"Action": "sts:AssumeRole",
"Effect": "Allow",
"Principal": {
"Service": [
"oss.aliyuncs.com"
]
}
}
],
"Version": "1"
}
`,
description: "this is a test",
force: true,
});
const policy = new alicloud.ram.Policy("policy", {
policyName: pulumi.interpolate`example-policy-${_default.result}`,
policyDocument: ` {
"Statement": [
{
"Action": [
"*"
],
"Effect": "Allow",
"Resource": [
"*"
]
}
],
"Version": "1"
}
`,
description: "this is a policy test",
force: true,
});
const attach = new alicloud.ram.RolePolicyAttachment("attach", {
policyName: policy.name,
policyType: policy.type,
roleName: role.name,
});
const key = new alicloud.kms.Key("key", {
description: "Hello KMS",
pendingWindowInDays: 7,
status: "Enabled",
});
const cross_region_replication = new alicloud.oss.BucketReplication("cross-region-replication", {
bucket: bucketSrc.id,
action: "PUT,DELETE",
historicalObjectReplication: "enabled",
prefixSet: {
prefixes: [
"prefix1/",
"prefix2/",
],
},
destination: {
bucket: bucketDest.id,
location: bucketDest.location,
},
syncRole: role.name,
encryptionConfiguration: {
replicaKmsKeyId: key.id,
},
sourceSelectionCriteria: {
sseKmsEncryptedObjects: {
status: "Enabled",
},
},
});
resources:
default:
type: random:RandomInteger
properties:
max: 99999
min: 10000
bucketSrc:
type: alicloud:oss:Bucket
properties:
bucket: example-src-${default.result}
bucketDest:
type: alicloud:oss:Bucket
properties:
bucket: example-dest-${default.result}
role:
type: alicloud:ram:Role
properties:
document: |
{
"Statement": [
{
"Action": "sts:AssumeRole",
"Effect": "Allow",
"Principal": {
"Service": [
"oss.aliyuncs.com"
]
}
}
],
"Version": "1"
}
description: this is a test
force: true
policy:
type: alicloud:ram:Policy
properties:
policyName: example-policy-${default.result}
policyDocument: |
{
"Statement": [
{
"Action": [
"*"
],
"Effect": "Allow",
"Resource": [
"*"
]
}
],
"Version": "1"
}
description: this is a policy test
force: true
attach:
type: alicloud:ram:RolePolicyAttachment
properties:
policyName: ${policy.name}
policyType: ${policy.type}
roleName: ${role.name}
key:
type: alicloud:kms:Key
properties:
description: Hello KMS
pendingWindowInDays: '7'
status: Enabled
cross-region-replication:
type: alicloud:oss:BucketReplication
properties:
bucket: ${bucketSrc.id}
action: PUT,DELETE
historicalObjectReplication: enabled
prefixSet:
prefixes:
- prefix1/
- prefix2/
destination:
bucket: ${bucketDest.id}
location: ${bucketDest.location}
syncRole: ${role.name}
encryptionConfiguration:
replicaKmsKeyId: ${key.id}
sourceSelectionCriteria:
sseKmsEncryptedObjects:
status: Enabled
Create BucketReplication Resource
new BucketReplication(name: string, args: BucketReplicationArgs, opts?: CustomResourceOptions);
@overload
def BucketReplication(resource_name: str,
opts: Optional[ResourceOptions] = None,
action: Optional[str] = None,
bucket: Optional[str] = None,
destination: Optional[BucketReplicationDestinationArgs] = None,
encryption_configuration: Optional[BucketReplicationEncryptionConfigurationArgs] = None,
historical_object_replication: Optional[str] = None,
prefix_set: Optional[BucketReplicationPrefixSetArgs] = None,
progress: Optional[BucketReplicationProgressArgs] = None,
source_selection_criteria: Optional[BucketReplicationSourceSelectionCriteriaArgs] = None,
sync_role: Optional[str] = None)
@overload
def BucketReplication(resource_name: str,
args: BucketReplicationArgs,
opts: Optional[ResourceOptions] = None)
func NewBucketReplication(ctx *Context, name string, args BucketReplicationArgs, opts ...ResourceOption) (*BucketReplication, error)
public BucketReplication(string name, BucketReplicationArgs args, CustomResourceOptions? opts = null)
public BucketReplication(String name, BucketReplicationArgs args)
public BucketReplication(String name, BucketReplicationArgs args, CustomResourceOptions options)
type: alicloud:oss:BucketReplication
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args BucketReplicationArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args BucketReplicationArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args BucketReplicationArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args BucketReplicationArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args BucketReplicationArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
BucketReplication Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The BucketReplication resource accepts the following input properties:
- Bucket string
The name of the bucket.
- Destination
Pulumi.
Ali Cloud. Oss. Inputs. Bucket Replication Destination Specifies the destination for the rule(See the following block
destination
).- Action string
The operations that can be synchronized to the destination bucket. You can set action to one or more of the following operation types. Valid values:
ALL
(contains PUT, DELETE, and ABORT),PUT
,DELETE
andABORT
. Defaults toALL
.- Encryption
Configuration Pulumi.Ali Cloud. Oss. Inputs. Bucket Replication Encryption Configuration Specifies the encryption configuration for the objects replicated to the destination bucket(See the following block
encryption_configuration
).- Historical
Object stringReplication Specifies whether to replicate historical data from the source bucket to the destination bucket before data replication is enabled. Can be
enabled
ordisabled
. Defaults toenabled
.- Prefix
Set Pulumi.Ali Cloud. Oss. Inputs. Bucket Replication Prefix Set The prefixes used to specify the object to replicate. Only objects that match the prefix are replicated to the destination bucket(See the following block
prefix_set
).- Progress
Pulumi.
Ali Cloud. Oss. Inputs. Bucket Replication Progress Retrieves the progress of the data replication task. This status is returned only when the data replication task is in the doing state.
- Source
Selection Pulumi.Criteria Ali Cloud. Oss. Inputs. Bucket Replication Source Selection Criteria Specifies other conditions used to filter the source objects to replicate(See the following block
source_selection_criteria
).- Sync
Role string Specifies the role that you authorize OSS to use to replicate data. If SSE-KMS is specified to encrypt the objects replicated to the destination bucket, it must be specified.
- Bucket string
The name of the bucket.
- Destination
Bucket
Replication Destination Args Specifies the destination for the rule(See the following block
destination
).- Action string
The operations that can be synchronized to the destination bucket. You can set action to one or more of the following operation types. Valid values:
ALL
(contains PUT, DELETE, and ABORT),PUT
,DELETE
andABORT
. Defaults toALL
.- Encryption
Configuration BucketReplication Encryption Configuration Args Specifies the encryption configuration for the objects replicated to the destination bucket(See the following block
encryption_configuration
).- Historical
Object stringReplication Specifies whether to replicate historical data from the source bucket to the destination bucket before data replication is enabled. Can be
enabled
ordisabled
. Defaults toenabled
.- Prefix
Set BucketReplication Prefix Set Args The prefixes used to specify the object to replicate. Only objects that match the prefix are replicated to the destination bucket(See the following block
prefix_set
).- Progress
Bucket
Replication Progress Args Retrieves the progress of the data replication task. This status is returned only when the data replication task is in the doing state.
- Source
Selection BucketCriteria Replication Source Selection Criteria Args Specifies other conditions used to filter the source objects to replicate(See the following block
source_selection_criteria
).- Sync
Role string Specifies the role that you authorize OSS to use to replicate data. If SSE-KMS is specified to encrypt the objects replicated to the destination bucket, it must be specified.
- bucket String
The name of the bucket.
- destination
Bucket
Replication Destination Specifies the destination for the rule(See the following block
destination
).- action String
The operations that can be synchronized to the destination bucket. You can set action to one or more of the following operation types. Valid values:
ALL
(contains PUT, DELETE, and ABORT),PUT
,DELETE
andABORT
. Defaults toALL
.- encryption
Configuration BucketReplication Encryption Configuration Specifies the encryption configuration for the objects replicated to the destination bucket(See the following block
encryption_configuration
).- historical
Object StringReplication Specifies whether to replicate historical data from the source bucket to the destination bucket before data replication is enabled. Can be
enabled
ordisabled
. Defaults toenabled
.- prefix
Set BucketReplication Prefix Set The prefixes used to specify the object to replicate. Only objects that match the prefix are replicated to the destination bucket(See the following block
prefix_set
).- progress
Bucket
Replication Progress Retrieves the progress of the data replication task. This status is returned only when the data replication task is in the doing state.
- source
Selection BucketCriteria Replication Source Selection Criteria Specifies other conditions used to filter the source objects to replicate(See the following block
source_selection_criteria
).- sync
Role String Specifies the role that you authorize OSS to use to replicate data. If SSE-KMS is specified to encrypt the objects replicated to the destination bucket, it must be specified.
- bucket string
The name of the bucket.
- destination
Bucket
Replication Destination Specifies the destination for the rule(See the following block
destination
).- action string
The operations that can be synchronized to the destination bucket. You can set action to one or more of the following operation types. Valid values:
ALL
(contains PUT, DELETE, and ABORT),PUT
,DELETE
andABORT
. Defaults toALL
.- encryption
Configuration BucketReplication Encryption Configuration Specifies the encryption configuration for the objects replicated to the destination bucket(See the following block
encryption_configuration
).- historical
Object stringReplication Specifies whether to replicate historical data from the source bucket to the destination bucket before data replication is enabled. Can be
enabled
ordisabled
. Defaults toenabled
.- prefix
Set BucketReplication Prefix Set The prefixes used to specify the object to replicate. Only objects that match the prefix are replicated to the destination bucket(See the following block
prefix_set
).- progress
Bucket
Replication Progress Retrieves the progress of the data replication task. This status is returned only when the data replication task is in the doing state.
- source
Selection BucketCriteria Replication Source Selection Criteria Specifies other conditions used to filter the source objects to replicate(See the following block
source_selection_criteria
).- sync
Role string Specifies the role that you authorize OSS to use to replicate data. If SSE-KMS is specified to encrypt the objects replicated to the destination bucket, it must be specified.
- bucket str
The name of the bucket.
- destination
Bucket
Replication Destination Args Specifies the destination for the rule(See the following block
destination
).- action str
The operations that can be synchronized to the destination bucket. You can set action to one or more of the following operation types. Valid values:
ALL
(contains PUT, DELETE, and ABORT),PUT
,DELETE
andABORT
. Defaults toALL
.- encryption_
configuration BucketReplication Encryption Configuration Args Specifies the encryption configuration for the objects replicated to the destination bucket(See the following block
encryption_configuration
).- historical_
object_ strreplication Specifies whether to replicate historical data from the source bucket to the destination bucket before data replication is enabled. Can be
enabled
ordisabled
. Defaults toenabled
.- prefix_
set BucketReplication Prefix Set Args The prefixes used to specify the object to replicate. Only objects that match the prefix are replicated to the destination bucket(See the following block
prefix_set
).- progress
Bucket
Replication Progress Args Retrieves the progress of the data replication task. This status is returned only when the data replication task is in the doing state.
- source_
selection_ Bucketcriteria Replication Source Selection Criteria Args Specifies other conditions used to filter the source objects to replicate(See the following block
source_selection_criteria
).- sync_
role str Specifies the role that you authorize OSS to use to replicate data. If SSE-KMS is specified to encrypt the objects replicated to the destination bucket, it must be specified.
- bucket String
The name of the bucket.
- destination Property Map
Specifies the destination for the rule(See the following block
destination
).- action String
The operations that can be synchronized to the destination bucket. You can set action to one or more of the following operation types. Valid values:
ALL
(contains PUT, DELETE, and ABORT),PUT
,DELETE
andABORT
. Defaults toALL
.- encryption
Configuration Property Map Specifies the encryption configuration for the objects replicated to the destination bucket(See the following block
encryption_configuration
).- historical
Object StringReplication Specifies whether to replicate historical data from the source bucket to the destination bucket before data replication is enabled. Can be
enabled
ordisabled
. Defaults toenabled
.- prefix
Set Property Map The prefixes used to specify the object to replicate. Only objects that match the prefix are replicated to the destination bucket(See the following block
prefix_set
).- progress Property Map
Retrieves the progress of the data replication task. This status is returned only when the data replication task is in the doing state.
- source
Selection Property MapCriteria Specifies other conditions used to filter the source objects to replicate(See the following block
source_selection_criteria
).- sync
Role String Specifies the role that you authorize OSS to use to replicate data. If SSE-KMS is specified to encrypt the objects replicated to the destination bucket, it must be specified.
Outputs
All input properties are implicitly available as output properties. Additionally, the BucketReplication resource produces the following output properties:
Look up Existing BucketReplication Resource
Get an existing BucketReplication resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: BucketReplicationState, opts?: CustomResourceOptions): BucketReplication
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
action: Optional[str] = None,
bucket: Optional[str] = None,
destination: Optional[BucketReplicationDestinationArgs] = None,
encryption_configuration: Optional[BucketReplicationEncryptionConfigurationArgs] = None,
historical_object_replication: Optional[str] = None,
prefix_set: Optional[BucketReplicationPrefixSetArgs] = None,
progress: Optional[BucketReplicationProgressArgs] = None,
rule_id: Optional[str] = None,
source_selection_criteria: Optional[BucketReplicationSourceSelectionCriteriaArgs] = None,
status: Optional[str] = None,
sync_role: Optional[str] = None) -> BucketReplication
func GetBucketReplication(ctx *Context, name string, id IDInput, state *BucketReplicationState, opts ...ResourceOption) (*BucketReplication, error)
public static BucketReplication Get(string name, Input<string> id, BucketReplicationState? state, CustomResourceOptions? opts = null)
public static BucketReplication get(String name, Output<String> id, BucketReplicationState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Action string
The operations that can be synchronized to the destination bucket. You can set action to one or more of the following operation types. Valid values:
ALL
(contains PUT, DELETE, and ABORT),PUT
,DELETE
andABORT
. Defaults toALL
.- Bucket string
The name of the bucket.
- Destination
Pulumi.
Ali Cloud. Oss. Inputs. Bucket Replication Destination Specifies the destination for the rule(See the following block
destination
).- Encryption
Configuration Pulumi.Ali Cloud. Oss. Inputs. Bucket Replication Encryption Configuration Specifies the encryption configuration for the objects replicated to the destination bucket(See the following block
encryption_configuration
).- Historical
Object stringReplication Specifies whether to replicate historical data from the source bucket to the destination bucket before data replication is enabled. Can be
enabled
ordisabled
. Defaults toenabled
.- Prefix
Set Pulumi.Ali Cloud. Oss. Inputs. Bucket Replication Prefix Set The prefixes used to specify the object to replicate. Only objects that match the prefix are replicated to the destination bucket(See the following block
prefix_set
).- Progress
Pulumi.
Ali Cloud. Oss. Inputs. Bucket Replication Progress Retrieves the progress of the data replication task. This status is returned only when the data replication task is in the doing state.
- Rule
Id string The ID of the data replication rule.
- Source
Selection Pulumi.Criteria Ali Cloud. Oss. Inputs. Bucket Replication Source Selection Criteria Specifies other conditions used to filter the source objects to replicate(See the following block
source_selection_criteria
).- Status string
Specifies whether to replicate objects encrypted by using SSE-KMS. Can be
Enabled
orDisabled
.- Sync
Role string Specifies the role that you authorize OSS to use to replicate data. If SSE-KMS is specified to encrypt the objects replicated to the destination bucket, it must be specified.
- Action string
The operations that can be synchronized to the destination bucket. You can set action to one or more of the following operation types. Valid values:
ALL
(contains PUT, DELETE, and ABORT),PUT
,DELETE
andABORT
. Defaults toALL
.- Bucket string
The name of the bucket.
- Destination
Bucket
Replication Destination Args Specifies the destination for the rule(See the following block
destination
).- Encryption
Configuration BucketReplication Encryption Configuration Args Specifies the encryption configuration for the objects replicated to the destination bucket(See the following block
encryption_configuration
).- Historical
Object stringReplication Specifies whether to replicate historical data from the source bucket to the destination bucket before data replication is enabled. Can be
enabled
ordisabled
. Defaults toenabled
.- Prefix
Set BucketReplication Prefix Set Args The prefixes used to specify the object to replicate. Only objects that match the prefix are replicated to the destination bucket(See the following block
prefix_set
).- Progress
Bucket
Replication Progress Args Retrieves the progress of the data replication task. This status is returned only when the data replication task is in the doing state.
- Rule
Id string The ID of the data replication rule.
- Source
Selection BucketCriteria Replication Source Selection Criteria Args Specifies other conditions used to filter the source objects to replicate(See the following block
source_selection_criteria
).- Status string
Specifies whether to replicate objects encrypted by using SSE-KMS. Can be
Enabled
orDisabled
.- Sync
Role string Specifies the role that you authorize OSS to use to replicate data. If SSE-KMS is specified to encrypt the objects replicated to the destination bucket, it must be specified.
- action String
The operations that can be synchronized to the destination bucket. You can set action to one or more of the following operation types. Valid values:
ALL
(contains PUT, DELETE, and ABORT),PUT
,DELETE
andABORT
. Defaults toALL
.- bucket String
The name of the bucket.
- destination
Bucket
Replication Destination Specifies the destination for the rule(See the following block
destination
).- encryption
Configuration BucketReplication Encryption Configuration Specifies the encryption configuration for the objects replicated to the destination bucket(See the following block
encryption_configuration
).- historical
Object StringReplication Specifies whether to replicate historical data from the source bucket to the destination bucket before data replication is enabled. Can be
enabled
ordisabled
. Defaults toenabled
.- prefix
Set BucketReplication Prefix Set The prefixes used to specify the object to replicate. Only objects that match the prefix are replicated to the destination bucket(See the following block
prefix_set
).- progress
Bucket
Replication Progress Retrieves the progress of the data replication task. This status is returned only when the data replication task is in the doing state.
- rule
Id String The ID of the data replication rule.
- source
Selection BucketCriteria Replication Source Selection Criteria Specifies other conditions used to filter the source objects to replicate(See the following block
source_selection_criteria
).- status String
Specifies whether to replicate objects encrypted by using SSE-KMS. Can be
Enabled
orDisabled
.- sync
Role String Specifies the role that you authorize OSS to use to replicate data. If SSE-KMS is specified to encrypt the objects replicated to the destination bucket, it must be specified.
- action string
The operations that can be synchronized to the destination bucket. You can set action to one or more of the following operation types. Valid values:
ALL
(contains PUT, DELETE, and ABORT),PUT
,DELETE
andABORT
. Defaults toALL
.- bucket string
The name of the bucket.
- destination
Bucket
Replication Destination Specifies the destination for the rule(See the following block
destination
).- encryption
Configuration BucketReplication Encryption Configuration Specifies the encryption configuration for the objects replicated to the destination bucket(See the following block
encryption_configuration
).- historical
Object stringReplication Specifies whether to replicate historical data from the source bucket to the destination bucket before data replication is enabled. Can be
enabled
ordisabled
. Defaults toenabled
.- prefix
Set BucketReplication Prefix Set The prefixes used to specify the object to replicate. Only objects that match the prefix are replicated to the destination bucket(See the following block
prefix_set
).- progress
Bucket
Replication Progress Retrieves the progress of the data replication task. This status is returned only when the data replication task is in the doing state.
- rule
Id string The ID of the data replication rule.
- source
Selection BucketCriteria Replication Source Selection Criteria Specifies other conditions used to filter the source objects to replicate(See the following block
source_selection_criteria
).- status string
Specifies whether to replicate objects encrypted by using SSE-KMS. Can be
Enabled
orDisabled
.- sync
Role string Specifies the role that you authorize OSS to use to replicate data. If SSE-KMS is specified to encrypt the objects replicated to the destination bucket, it must be specified.
- action str
The operations that can be synchronized to the destination bucket. You can set action to one or more of the following operation types. Valid values:
ALL
(contains PUT, DELETE, and ABORT),PUT
,DELETE
andABORT
. Defaults toALL
.- bucket str
The name of the bucket.
- destination
Bucket
Replication Destination Args Specifies the destination for the rule(See the following block
destination
).- encryption_
configuration BucketReplication Encryption Configuration Args Specifies the encryption configuration for the objects replicated to the destination bucket(See the following block
encryption_configuration
).- historical_
object_ strreplication Specifies whether to replicate historical data from the source bucket to the destination bucket before data replication is enabled. Can be
enabled
ordisabled
. Defaults toenabled
.- prefix_
set BucketReplication Prefix Set Args The prefixes used to specify the object to replicate. Only objects that match the prefix are replicated to the destination bucket(See the following block
prefix_set
).- progress
Bucket
Replication Progress Args Retrieves the progress of the data replication task. This status is returned only when the data replication task is in the doing state.
- rule_
id str The ID of the data replication rule.
- source_
selection_ Bucketcriteria Replication Source Selection Criteria Args Specifies other conditions used to filter the source objects to replicate(See the following block
source_selection_criteria
).- status str
Specifies whether to replicate objects encrypted by using SSE-KMS. Can be
Enabled
orDisabled
.- sync_
role str Specifies the role that you authorize OSS to use to replicate data. If SSE-KMS is specified to encrypt the objects replicated to the destination bucket, it must be specified.
- action String
The operations that can be synchronized to the destination bucket. You can set action to one or more of the following operation types. Valid values:
ALL
(contains PUT, DELETE, and ABORT),PUT
,DELETE
andABORT
. Defaults toALL
.- bucket String
The name of the bucket.
- destination Property Map
Specifies the destination for the rule(See the following block
destination
).- encryption
Configuration Property Map Specifies the encryption configuration for the objects replicated to the destination bucket(See the following block
encryption_configuration
).- historical
Object StringReplication Specifies whether to replicate historical data from the source bucket to the destination bucket before data replication is enabled. Can be
enabled
ordisabled
. Defaults toenabled
.- prefix
Set Property Map The prefixes used to specify the object to replicate. Only objects that match the prefix are replicated to the destination bucket(See the following block
prefix_set
).- progress Property Map
Retrieves the progress of the data replication task. This status is returned only when the data replication task is in the doing state.
- rule
Id String The ID of the data replication rule.
- source
Selection Property MapCriteria Specifies other conditions used to filter the source objects to replicate(See the following block
source_selection_criteria
).- status String
Specifies whether to replicate objects encrypted by using SSE-KMS. Can be
Enabled
orDisabled
.- sync
Role String Specifies the role that you authorize OSS to use to replicate data. If SSE-KMS is specified to encrypt the objects replicated to the destination bucket, it must be specified.
Supporting Types
BucketReplicationDestination, BucketReplicationDestinationArgs
- Bucket string
The destination bucket to which the data is replicated.
- Location string
- Transfer
Type string The link used to transfer data in data replication.. Can be
internal
oross_acc
. Defaults tointernal
.NOTE
: You can set transfer_type to oss_acc only when you create cross-region replication (CRR) rules.
- Bucket string
The destination bucket to which the data is replicated.
- Location string
- Transfer
Type string The link used to transfer data in data replication.. Can be
internal
oross_acc
. Defaults tointernal
.NOTE
: You can set transfer_type to oss_acc only when you create cross-region replication (CRR) rules.
- bucket String
The destination bucket to which the data is replicated.
- location String
- transfer
Type String The link used to transfer data in data replication.. Can be
internal
oross_acc
. Defaults tointernal
.NOTE
: You can set transfer_type to oss_acc only when you create cross-region replication (CRR) rules.
- bucket string
The destination bucket to which the data is replicated.
- location string
- transfer
Type string The link used to transfer data in data replication.. Can be
internal
oross_acc
. Defaults tointernal
.NOTE
: You can set transfer_type to oss_acc only when you create cross-region replication (CRR) rules.
- bucket str
The destination bucket to which the data is replicated.
- location str
- transfer_
type str The link used to transfer data in data replication.. Can be
internal
oross_acc
. Defaults tointernal
.NOTE
: You can set transfer_type to oss_acc only when you create cross-region replication (CRR) rules.
- bucket String
The destination bucket to which the data is replicated.
- location String
- transfer
Type String The link used to transfer data in data replication.. Can be
internal
oross_acc
. Defaults tointernal
.NOTE
: You can set transfer_type to oss_acc only when you create cross-region replication (CRR) rules.
BucketReplicationEncryptionConfiguration, BucketReplicationEncryptionConfigurationArgs
- Replica
Kms stringKey Id The CMK ID used in SSE-KMS.
NOTE
: If the status of sse_kms_encrypted_objects is set to Enabled, you must specify the replica_kms_key_id.
- Replica
Kms stringKey Id The CMK ID used in SSE-KMS.
NOTE
: If the status of sse_kms_encrypted_objects is set to Enabled, you must specify the replica_kms_key_id.
- replica
Kms StringKey Id The CMK ID used in SSE-KMS.
NOTE
: If the status of sse_kms_encrypted_objects is set to Enabled, you must specify the replica_kms_key_id.
- replica
Kms stringKey Id The CMK ID used in SSE-KMS.
NOTE
: If the status of sse_kms_encrypted_objects is set to Enabled, you must specify the replica_kms_key_id.
- replica_
kms_ strkey_ id The CMK ID used in SSE-KMS.
NOTE
: If the status of sse_kms_encrypted_objects is set to Enabled, you must specify the replica_kms_key_id.
- replica
Kms StringKey Id The CMK ID used in SSE-KMS.
NOTE
: If the status of sse_kms_encrypted_objects is set to Enabled, you must specify the replica_kms_key_id.
BucketReplicationPrefixSet, BucketReplicationPrefixSetArgs
- Prefixes List<string>
The list of object key name prefix identifying one or more objects to which the rule applies.
NOTE
: The prefix must be less than or equal to 1024 characters in length.
- Prefixes []string
The list of object key name prefix identifying one or more objects to which the rule applies.
NOTE
: The prefix must be less than or equal to 1024 characters in length.
- prefixes List<String>
The list of object key name prefix identifying one or more objects to which the rule applies.
NOTE
: The prefix must be less than or equal to 1024 characters in length.
- prefixes string[]
The list of object key name prefix identifying one or more objects to which the rule applies.
NOTE
: The prefix must be less than or equal to 1024 characters in length.
- prefixes Sequence[str]
The list of object key name prefix identifying one or more objects to which the rule applies.
NOTE
: The prefix must be less than or equal to 1024 characters in length.
- prefixes List<String>
The list of object key name prefix identifying one or more objects to which the rule applies.
NOTE
: The prefix must be less than or equal to 1024 characters in length.
BucketReplicationProgress, BucketReplicationProgressArgs
- Historical
Object string The percentage of the replicated historical data. This element is valid only when historical_object_replication is set to enabled.
- New
Object string The time used to distinguish new data from historical data. Data that is written to the source bucket before the time is replicated to the destination bucket as new data. The value of this element is in GMT.
- Historical
Object string The percentage of the replicated historical data. This element is valid only when historical_object_replication is set to enabled.
- New
Object string The time used to distinguish new data from historical data. Data that is written to the source bucket before the time is replicated to the destination bucket as new data. The value of this element is in GMT.
- historical
Object String The percentage of the replicated historical data. This element is valid only when historical_object_replication is set to enabled.
- new
Object String The time used to distinguish new data from historical data. Data that is written to the source bucket before the time is replicated to the destination bucket as new data. The value of this element is in GMT.
- historical
Object string The percentage of the replicated historical data. This element is valid only when historical_object_replication is set to enabled.
- new
Object string The time used to distinguish new data from historical data. Data that is written to the source bucket before the time is replicated to the destination bucket as new data. The value of this element is in GMT.
- historical_
object str The percentage of the replicated historical data. This element is valid only when historical_object_replication is set to enabled.
- new_
object str The time used to distinguish new data from historical data. Data that is written to the source bucket before the time is replicated to the destination bucket as new data. The value of this element is in GMT.
- historical
Object String The percentage of the replicated historical data. This element is valid only when historical_object_replication is set to enabled.
- new
Object String The time used to distinguish new data from historical data. Data that is written to the source bucket before the time is replicated to the destination bucket as new data. The value of this element is in GMT.
BucketReplicationSourceSelectionCriteria, BucketReplicationSourceSelectionCriteriaArgs
- Sse
Kms Pulumi.Encrypted Objects Ali Cloud. Oss. Inputs. Bucket Replication Source Selection Criteria Sse Kms Encrypted Objects Filter source objects encrypted by using SSE-KMS(See the following block
sse_kms_encrypted_objects
).
- Sse
Kms BucketEncrypted Objects Replication Source Selection Criteria Sse Kms Encrypted Objects Filter source objects encrypted by using SSE-KMS(See the following block
sse_kms_encrypted_objects
).
- sse
Kms BucketEncrypted Objects Replication Source Selection Criteria Sse Kms Encrypted Objects Filter source objects encrypted by using SSE-KMS(See the following block
sse_kms_encrypted_objects
).
- sse
Kms BucketEncrypted Objects Replication Source Selection Criteria Sse Kms Encrypted Objects Filter source objects encrypted by using SSE-KMS(See the following block
sse_kms_encrypted_objects
).
- sse_
kms_ Bucketencrypted_ objects Replication Source Selection Criteria Sse Kms Encrypted Objects Filter source objects encrypted by using SSE-KMS(See the following block
sse_kms_encrypted_objects
).
- sse
Kms Property MapEncrypted Objects Filter source objects encrypted by using SSE-KMS(See the following block
sse_kms_encrypted_objects
).
BucketReplicationSourceSelectionCriteriaSseKmsEncryptedObjects, BucketReplicationSourceSelectionCriteriaSseKmsEncryptedObjectsArgs
- Status string
Specifies whether to replicate objects encrypted by using SSE-KMS. Can be
Enabled
orDisabled
.
- Status string
Specifies whether to replicate objects encrypted by using SSE-KMS. Can be
Enabled
orDisabled
.
- status String
Specifies whether to replicate objects encrypted by using SSE-KMS. Can be
Enabled
orDisabled
.
- status string
Specifies whether to replicate objects encrypted by using SSE-KMS. Can be
Enabled
orDisabled
.
- status str
Specifies whether to replicate objects encrypted by using SSE-KMS. Can be
Enabled
orDisabled
.
- status String
Specifies whether to replicate objects encrypted by using SSE-KMS. Can be
Enabled
orDisabled
.
Import
Timeouts The timeouts
block allows you to specify timeouts for certain actions* delete
- (Defaults to 30 mins) Used when delete a data replication rule (until the data replication task is cleared).
Package Details
- Repository
- Alibaba Cloud pulumi/pulumi-alicloud
- License
- Apache-2.0
- Notes
This Pulumi package is based on the
alicloud
Terraform Provider.