CompositeBucket
TypeXRD
Providerx-generation
Groups3.aws.example.cloud
Versionv1alpha1

1apiVersion: s3.aws.example.cloud/v1alpha1

2kind: CompositeBucket

spec
object

BucketSpec represents the desired state of the Bucket.

forProvider
required
object

BucketParameters are parameters for configuring the calls made to AWS Bucket API.

object

AccelerateConfiguration configures the transfer acceleration state for an Amazon S3 bucket. For more information, see Amazon S3 Transfer Acceleration (https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html) in the Amazon Simple Storage Service Developer Guide.

status
required
string
acl
string
object

Describes the cross-origin access configuration for objects in an Amazon S3 bucket. For more information, see Enabling Cross-Origin Resource Sharing (https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html) in the Amazon Simple Storage Service Developer Guide.

corsRules
required
array

A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration.

array

Headers that are specified in the Access-Control-Request-Headers header. These headers are allowed in a preflight OPTIONS request. In response to any preflight OPTIONS request, Amazon S3 returns any requested headers that are allowed.

allowedMethods
required
array

An HTTP method that you allow the origin to execute. Valid values are GET, PUT, HEAD, POST, and DELETE.

allowedOrigins
required
array

One or more origins you want customers to be able to access the bucket from.

array

One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object).

grantRead
string
object

Creates a new lifecycle configuration for the bucket or replaces an existing lifecycle configuration. For information about lifecycle configuration, see Managing Access Permissions to Your Amazon S3 Resources (https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html).

rules
required
array

A lifecycle rule for individual objects in an Amazon S3 bucket. Rules is a required field

object

Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload. For more information, see Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Policy (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config) in the Amazon Simple Storage Service Developer Guide.

daysAfterInitiation
required
integer
object

Specifies the expiration for the lifecycle of the object in the form of date, days and, whether the object has a delete marker.

filter
object

The Filter is used to identify objects that a Lifecycle Rule applies to. A Filter must have exactly one of Prefix, Tag, or And specified.

and
object

This is used in a Lifecycle Rule Filter to apply a logical AND to two or more predicates. The Lifecycle Rule will apply to any object matching all of the predicates configured inside the And operator.

prefix
string
tags
required
array

All of these tags must exist in the object's tag set in order for the rule to apply.

key
required
string
value
required
string
prefix
string
tag
object

This tag must exist in the object's tag set in order for the rule to apply.

key
required
string
value
required
string
id
string
object

Specifies when noncurrent object versions expire. Upon expiration, Amazon S3 permanently deletes the noncurrent object versions. You set this lifecycle configuration action on a bucket that has versioning enabled (or suspended) to request that Amazon S3 delete noncurrent object versions at a specific period in the object's lifetime.

array

Specifies the transition rule for the lifecycle rule that describes when noncurrent objects transition to a specific storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to a specific storage class at a set period in the object's lifetime.

storageClass
required
string
status
required
string
array

Specifies when an Amazon S3 object transitions to a specified storage class.

date
string
days
integer
storageClass
required
string
locationConstraint
required
string
object

Specifies logging parameters for an Amazon S3 bucket. Set the logging parameters for a bucket and to specify permissions for who can view and modify the logging parameters. See the AWS API reference guide for Amazon Simple Storage Service's API operation PutBucketLogging for usage and error information. See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLogging

object

TargetBucketRef references an S3Bucket to retrieve its name

name
required
string
policy
object

Policies for referencing.

resolve
string
object

TargetBucketSelector selects a reference to an S3Bucket to retrieve its name

policy
object

Policies for selection.

resolve
string
array

Container for granting information.

bucketLogsPermission
required
string
targetGrantee
required
object

Container for the person being granted permissions.

ID
string
URI
string
type
required
string
targetPrefix
required
string
object

Enables notifications of specified events for a bucket. For more information about event notifications, see Configuring Event Notifications (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html).

array

Describes the AWS Lambda functions to invoke and the events for which to invoke them.

ID
string
events
required
array

The Amazon S3 bucket event for which to invoke the AWS Lambda function. For more information, see Supported Event Types (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the Amazon Simple Storage Service Developer Guide. Events is a required field A full list of valid events can be found in the Amazon S3 Developer guide https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html#notification-how-to-event-types-and-destinations

filter
object

Specifies object key name filtering rules. For information about key name filtering, see Configuring Event Notifications (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the Amazon Simple Storage Service Developer Guide.

key
object

A container for object key name prefix and suffix filtering rules.

filterRules
required
array

A list of containers for the key-value pair that defines the criteria for the filter rule.

name
required
string
value
string
lambdaFunctionArn
required
string
array

The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages.

ID
string
events
required
array

A collection of bucket events for which to send notifications Events is a required field A full list of valid events can be found in the Amazon S3 Developer guide https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html#notification-how-to-event-types-and-destinations

filter
object

Specifies object key name filtering rules. For information about key name filtering, see Configuring Event Notifications (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the Amazon Simple Storage Service Developer Guide.

key
object

A container for object key name prefix and suffix filtering rules.

filterRules
required
array

A list of containers for the key-value pair that defines the criteria for the filter rule.

name
required
string
value
string
queueArn
string
object

QueueArnRef references an Queue to retrieve its ARN

name
required
string
policy
object

Policies for referencing.

resolve
string
object

QueueArnSelector selects a reference to an Queue to retrieve its ARN

policy
object

Policies for selection.

resolve
string
array

The topic to which notifications are sent and the events for which notifications are generated.

ID
string
events
required
array

The Amazon S3 bucket event about which to send notifications. For more information, see Supported Event Types (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the Amazon Simple Storage Service Developer Guide. Events is a required field A full list of valid events can be found in the Amazon S3 Developer guide https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html#notification-how-to-event-types-and-destinations

filter
object

Specifies object key name filtering rules. For information about key name filtering, see Configuring Event Notifications (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the Amazon Simple Storage Service Developer Guide.

key
object

A container for object key name prefix and suffix filtering rules.

filterRules
required
array

A list of containers for the key-value pair that defines the criteria for the filter rule.

name
required
string
value
string
topicArn
string
topicRef
object

TopicArnRef references an SNS Topic to retrieve its Arn

name
required
string
policy
object

Policies for referencing.

resolve
string
object

TopicArnSelector selects a reference to an SNS Topic to retrieve its Arn

policy
object

Policies for selection.

resolve
string
object

Specifies payer parameters for an Amazon S3 bucket. For more information, see Request Pays buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html) in the Amazon Simple Storage Service Developer Guide.

payer
required
string
object

PublicAccessBlockConfiguration that you want to apply to this Amazon S3 bucket.

object

Creates a replication configuration or replaces an existing one. For more information, see Replication (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html) in the Amazon S3 Developer Guide.

role
string
roleRef
object

RoleRef references an IAMRole to retrieve its Name

name
required
string
policy
object

Policies for referencing.

resolve
string
object

RoleSelector selects a reference to an IAMRole to retrieve its Name

policy
object

Policies for selection.

resolve
string
rules
required
array

A container for one or more replication rules. A replication configuration must have at least one rule and can contain a maximum of 1,000 rules. Rules is a required field

object

Specifies whether Amazon S3 replicates the delete markers. If you specify a Filter, you must specify this element. However, in the latest version of replication configuration (when Filter is specified), Amazon S3 doesn't replicate delete markers. Therefore, the DeleteMarkerReplication element can contain only Disabled. For an example configuration, see Basic Rule Configuration (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-config-min-rule-config). If you don't specify the Filter element, Amazon S3 assumes that the replication configuration is the earlier version, V1. In the earlier version, Amazon S3 handled replication of delete markers differently. For more information, see Backward Compatibility (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations).

status
required
string
destination
required
object

A container for information about the replication destination and its configurations including enabling the S3 Replication Time Control (S3 RTC). Destination is a required field

object

Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object.

ownerOverride
required
string
account
string
bucket
string
bucketRef
object

BucketRef references a Bucket to retrieve its Name

name
required
string
policy
object

Policies for referencing.

resolve
string
object

BucketSelector selects a reference to a Bucket to retrieve its Name

policy
object

Policies for selection.

resolve
string
object

A container that provides information about encryption. If SourceSelectionCriteria is specified, you must specify this element.

replicaKmsKeyId
required
string
object

ReplicaKmsKeyIDRef references an KMSKey to retrieve its ID

name
required
string
policy
object

Policies for referencing.

resolve
string
object

ReplicaKmsKeyIDSelector selects a reference to an KMSKey to retrieve its ID

policy
object

Policies for selection.

resolve
string
metrics
object

A container specifying replication metrics-related settings enabling metrics and Amazon S3 events for S3 Replication Time Control (S3 RTC). Must be specified together with a ReplicationTime block.

object

A container specifying the time threshold for emitting the s3:Replication:OperationMissedThreshold event.

minutes
required
integer
status
required
string
object

A container specifying S3 Replication Time Control (S3 RTC), including whether S3 RTC is enabled and the time when all objects and operations on objects must be replicated. Must be specified together with a Metrics block.

status
required
string
time
required
object

A container specifying the time by which replication should be complete for all objects and operations on objects. Time is a required field

minutes
required
integer
object

Optional configuration to replicate existing source bucket objects. For more information, see Replicating Existing Objects (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-what-is-isnot-replicated.html#existing-object-replication) in the Amazon S3 Developer Guide.

status
required
string
filter
object

A filter that identifies the subset of objects to which the replication rule applies. A Filter must specify exactly one Prefix, Tag, or an And child element.

and
object

A container for specifying rule filters. The filters determine the subset of objects to which the rule applies. This element is required only if you specify more than one filter. For example:

  • If you specify both a Prefix and a Tag filter, wrap these filters in an And tag.
  • If you specify a filter based on multiple tags, wrap the Tag elements in an And tag.
prefix
string
tag
array

An array of tags containing key and value pairs.

key
required
string
value
required
string
prefix
string
tag
object

A container for specifying a tag key and value. The rule applies only to objects that have the tag in their tag set.

key
required
string
value
required
string
id
string
priority
integer
object

A container that describes additional filters for identifying the source objects that you want to replicate. You can choose to enable or disable the replication of these objects. Currently, Amazon S3 supports only the filter that you can specify for objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service (SSE-KMS).

required
object

A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS. If you include SourceSelectionCriteria in the replication configuration, this element is required.

status
required
string
status
required
string
object

Specifies default encryption for a bucket using server-side encryption with Amazon S3-managed keys (SSE-S3) or customer master keys stored in AWS KMS (SSE-KMS). For information about the Amazon S3 default encryption feature, see Amazon S3 Default Bucket Encryption (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html) in the Amazon Simple Storage Service Developer Guide.

rules
required
array

Container for information about a particular server-side encryption configuration rule.

required
object

Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied.

object

KMSMasterKeyIDRef references an KMSKey to retrieve its ID

name
required
string
policy
object

Policies for referencing.

resolve
string
object

KMSMasterKeyIDSelector selects a reference to an KMSKey to retrieve its ID

policy
object

Policies for selection.

resolve
string
sseAlgorithm
required
string
object

VersioningConfiguration describes the versioning state of an Amazon S3 bucket. See the AWS API reference guide for Amazon Simple Storage Service's API operation PutBucketVersioning for usage and error information. See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketVersioning

mfaDelete
string
status
string
object

Specifies website configuration parameters for an Amazon S3 bucket. See the AWS API reference guide for Amazon Simple Storage Service's API operation PutBucketWebsite for usage and error information. See also, https://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketWebsite

object

The name of the error document for the website.

key
required
string
object

The name of the index document for the website.

suffix
required
string
object

The redirect behavior for every request to this bucket's website endpoint. If you specify this property, you can't specify any other property.

hostName
required
string
protocol
string
array

Rules that define when a redirect is applied and the redirect behavior.

condition
object

A container for describing a condition that must be met for the specified redirect to apply. For example, 1. If request is for pages in the /docs folder, redirect to the /documents folder. 2. If request results in HTTP error 4xx, redirect request to another host where you might process the error.

redirect
required
object

Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return.

object

ProviderConfigReference specifies how the provider that will be used to create, observe, update, and delete this managed resource should be configured.

name
required
string
policy
object

Policies for referencing.

resolve
string
object

PublishConnectionDetailsTo specifies the connection secret config which contains a name, metadata and a reference to secret store config to which any connection details for this managed resource should be written. Connection details frequently include the endpoint, username, and password required to connect to the managed resource.

configRef
object

SecretStoreConfigRef specifies which secret store config should be used for this ConnectionSecret.

name
required
string
policy
object

Policies for referencing.

resolve
string
metadata
object

Metadata is the metadata for connection secret.

labels
object
type
string
name
required
string
status
object

BucketStatus represents the observed state of the Bucket.

object

BucketExternalStatus keeps the state for the external resource

arn
required
string
observed
object
uid
string