ReplicationTimeValue

class aws_cdk.aws_s3.ReplicationTimeValue(*args: Any, **kwargs)

Bases: object

The replication time value used for S3 Replication Time Control (S3 RTC).

ExampleMetadata:

infused

Example:

# destination_bucket1: s3.IBucket
# destination_bucket2: s3.IBucket
# kms_key: kms.IKey


source_bucket = s3.Bucket(self, "SourceBucket",
    # Versioning must be enabled on both the source and destination bucket
    versioned=True,
    replication_rules=[s3.ReplicationRule(
        # The destination bucket for the replication rule.
        destination=destination_bucket1,
        # The priority of the rule.
        # Amazon S3 will attempt to replicate objects according to all replication rules.
        # However, if there are two or more rules with the same destination bucket, then objects will be replicated according to the rule with the highest priority.
        # The higher the number, the higher the priority.
        # It is essential to specify priority explicitly when the replication configuration has multiple rules.
        priority=1
    ), s3.ReplicationRule(
        destination=destination_bucket2,
        priority=2,
        # Whether to specify S3 Replication Time Control (S3 RTC).
        # S3 RTC replicates most objects that you upload to Amazon S3 in seconds,
        # and 99.99 percent of those objects within specified time.
        replication_time_control=s3.ReplicationTimeValue.FIFTEEN_MINUTES,
        # Whether to enable replication metrics about S3 RTC.
        # If set, metrics will be output to indicate whether replication by S3 RTC took longer than the configured time.
        metrics=s3.ReplicationTimeValue.FIFTEEN_MINUTES,
        # The kms key to use for the destination bucket.
        kms_key=kms_key,
        # The storage class to use for the destination bucket.
        storage_class=s3.StorageClass.INFREQUENT_ACCESS,
        # Whether to replicate objects with SSE-KMS encryption.
        sse_kms_encrypted_objects=False,
        # Whether to replicate modifications on replicas.
        replica_modifications=True,
        # Whether to replicate delete markers.
        # This property cannot be enabled if the replication rule has a tag filter.
        delete_marker_replication=False,
        # The ID of the rule.
        id="full-settings-rule",
        # The object filter for the rule.
        filter=s3.Filter(
            # The prefix filter for the rule.
            prefix="prefix",
            # The tag filter for the rule.
            tags=[s3.Tag(
                key="tagKey",
                value="tagValue"
            )
            ]
        )
    )
    ]
)

Attributes

FIFTEEN_MINUTES = <aws_cdk.aws_s3.ReplicationTimeValue object>
minutes

the time in minutes.