Documentation ¶
Overview ¶
Package v1beta1 contains managed resources for AWS S3. +kubebuilder:object:generate=true +groupName=s3.aws.crossplane.io +versionName=v1beta1
Index ¶
- Constants
- Variables
- func BucketARN() reference.ExtractValueFn
- type AbortIncompleteMultipartUpload
- type AccelerateConfiguration
- type AccessControlTranslation
- type Bucket
- func (in *Bucket) DeepCopy() *Bucket
- func (in *Bucket) DeepCopyInto(out *Bucket)
- func (in *Bucket) DeepCopyObject() runtime.Object
- func (mg *Bucket) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (mg *Bucket) GetDeletionPolicy() xpv1.DeletionPolicy
- func (mg *Bucket) GetManagementPolicies() xpv1.ManagementPolicies
- func (mg *Bucket) GetProviderConfigReference() *xpv1.Reference
- func (mg *Bucket) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
- func (mg *Bucket) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (mg *Bucket) ResolveReferences(ctx context.Context, c client.Reader) error
- func (mg *Bucket) SetConditions(c ...xpv1.Condition)
- func (mg *Bucket) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (mg *Bucket) SetManagementPolicies(r xpv1.ManagementPolicies)
- func (mg *Bucket) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *Bucket) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
- func (mg *Bucket) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type BucketExternalStatus
- type BucketLifecycleConfiguration
- type BucketList
- type BucketParameters
- type BucketPolicyDeletionPolicy
- type BucketPolicyUpdatePolicy
- type BucketSpec
- type BucketStatus
- type CORSConfiguration
- type CORSRule
- type Condition
- type DeleteMarkerReplication
- type Destination
- type EncryptionConfiguration
- type ErrorDocument
- type ExistingObjectReplication
- type FilterRule
- type IndexDocument
- type LambdaFunctionConfiguration
- type LifecycleExpiration
- type LifecycleRule
- type LifecycleRuleAndOperator
- type LifecycleRuleFilter
- type LoggingConfiguration
- type Metrics
- type NoncurrentVersionExpiration
- type NoncurrentVersionTransition
- type NotificationConfiguration
- type NotificationConfigurationFilter
- type PaymentConfiguration
- type PublicAccessBlockConfiguration
- type QueueConfiguration
- type Redirect
- type RedirectAllRequestsTo
- type ReplicationConfiguration
- type ReplicationRule
- type ReplicationRuleAndOperator
- type ReplicationRuleFilter
- type ReplicationTime
- type ReplicationTimeValue
- type RoutingRule
- type S3KeyFilter
- type ServerSideEncryptionByDefault
- type ServerSideEncryptionConfiguration
- type ServerSideEncryptionRule
- type SourceSelectionCriteria
- type SseKmsEncryptedObjects
- type Tag
- type Tagging
- type TargetGrant
- type TargetGrantee
- type TopicConfiguration
- type Transition
- type VersioningConfiguration
- type WebsiteConfiguration
Constants ¶
const ( Group = "s3.aws.crossplane.io" Version = "v1beta1" )
Package type metadata.
const (
// ResourceCredentialsSecretRegionKey is the key for region that the S3 bucket is located
ResourceCredentialsSecretRegionKey = "region"
)
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: Group, Version: Version} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} )
var ( BucketKind = reflect.TypeOf(Bucket{}).Name() BucketGroupKind = schema.GroupKind{Group: Group, Kind: BucketKind}.String() BucketKindAPIVersion = BucketKind + "." + SchemeGroupVersion.String() BucketGroupVersionKind = SchemeGroupVersion.WithKind(BucketKind) )
Bucket type metadata.
Functions ¶
func BucketARN ¶
func BucketARN() reference.ExtractValueFn
BucketARN returns a function that returns the ARN of the given S3 Bucket
Types ¶
type AbortIncompleteMultipartUpload ¶
type AbortIncompleteMultipartUpload struct { // Specifies the number of days after which Amazon S3 aborts an incomplete multipart // upload. DaysAfterInitiation int32 `json:"daysAfterInitiation"` }
AbortIncompleteMultipartUpload 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.
func (*AbortIncompleteMultipartUpload) DeepCopy ¶
func (in *AbortIncompleteMultipartUpload) DeepCopy() *AbortIncompleteMultipartUpload
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AbortIncompleteMultipartUpload.
func (*AbortIncompleteMultipartUpload) DeepCopyInto ¶
func (in *AbortIncompleteMultipartUpload) DeepCopyInto(out *AbortIncompleteMultipartUpload)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AccelerateConfiguration ¶
type AccelerateConfiguration struct { // Status specifies the transfer acceleration status of the bucket. // +kubebuilder:validation:Enum=Enabled;Suspended Status string `json:"status"` }
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.
func (*AccelerateConfiguration) DeepCopy ¶
func (in *AccelerateConfiguration) DeepCopy() *AccelerateConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccelerateConfiguration.
func (*AccelerateConfiguration) DeepCopyInto ¶
func (in *AccelerateConfiguration) DeepCopyInto(out *AccelerateConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AccessControlTranslation ¶
type AccessControlTranslation struct { // Specifies the replica ownership. For default and valid values, see PUT bucket // replication (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html) // in the Amazon Simple Storage Service API Reference. // Owner is a required field Owner string `json:"ownerOverride"` }
AccessControlTranslation contains information about access control for replicas.
func (*AccessControlTranslation) DeepCopy ¶
func (in *AccessControlTranslation) DeepCopy() *AccessControlTranslation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessControlTranslation.
func (*AccessControlTranslation) DeepCopyInto ¶
func (in *AccessControlTranslation) DeepCopyInto(out *AccessControlTranslation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Bucket ¶
type Bucket struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec BucketSpec `json:"spec"` Status BucketStatus `json:"status,omitempty"` }
An Bucket is a managed resource that represents an AWS S3 Bucket. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,aws}
func (*Bucket) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Bucket.
func (*Bucket) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Bucket) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Bucket) GetCondition ¶
func (mg *Bucket) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this Bucket.
func (*Bucket) GetDeletionPolicy ¶
func (mg *Bucket) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this Bucket.
func (*Bucket) GetManagementPolicies ¶ added in v0.43.0
func (mg *Bucket) GetManagementPolicies() xpv1.ManagementPolicies
GetManagementPolicies of this Bucket.
func (*Bucket) GetProviderConfigReference ¶
GetProviderConfigReference of this Bucket.
func (*Bucket) GetPublishConnectionDetailsTo ¶
func (mg *Bucket) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
GetPublishConnectionDetailsTo of this Bucket.
func (*Bucket) GetWriteConnectionSecretToReference ¶
func (mg *Bucket) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this Bucket.
func (*Bucket) ResolveReferences ¶
ResolveReferences of this Bucket.
func (*Bucket) SetConditions ¶
SetConditions of this Bucket.
func (*Bucket) SetDeletionPolicy ¶
func (mg *Bucket) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this Bucket.
func (*Bucket) SetManagementPolicies ¶ added in v0.43.0
func (mg *Bucket) SetManagementPolicies(r xpv1.ManagementPolicies)
SetManagementPolicies of this Bucket.
func (*Bucket) SetProviderConfigReference ¶
SetProviderConfigReference of this Bucket.
func (*Bucket) SetPublishConnectionDetailsTo ¶
func (mg *Bucket) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
SetPublishConnectionDetailsTo of this Bucket.
func (*Bucket) SetWriteConnectionSecretToReference ¶
func (mg *Bucket) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this Bucket.
type BucketExternalStatus ¶
type BucketExternalStatus struct { // ARN is the Amazon Resource Name (ARN) specifying the S3 Bucket. For more information // about ARNs and how to use them, see S3 Resources (https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-arn-format.html) // in the Amazon Simple Storage Service guide. ARN string `json:"arn"` }
BucketExternalStatus keeps the state for the external resource
func (*BucketExternalStatus) DeepCopy ¶
func (in *BucketExternalStatus) DeepCopy() *BucketExternalStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketExternalStatus.
func (*BucketExternalStatus) DeepCopyInto ¶
func (in *BucketExternalStatus) DeepCopyInto(out *BucketExternalStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketLifecycleConfiguration ¶
type BucketLifecycleConfiguration struct { // A lifecycle rule for individual objects in an Amazon S3 bucket. // // Rules is a required field Rules []LifecycleRule `json:"rules"` }
BucketLifecycleConfiguration specifies the lifecycle configuration for objects in an Amazon S3 bucket. For more information, see Object Lifecycle Management (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html) in the Amazon Simple Storage Service Developer Guide.
func (*BucketLifecycleConfiguration) DeepCopy ¶
func (in *BucketLifecycleConfiguration) DeepCopy() *BucketLifecycleConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketLifecycleConfiguration.
func (*BucketLifecycleConfiguration) DeepCopyInto ¶
func (in *BucketLifecycleConfiguration) DeepCopyInto(out *BucketLifecycleConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketList ¶
type BucketList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Bucket `json:"items"` }
BucketList contains a list of Buckets
func (*BucketList) DeepCopy ¶
func (in *BucketList) DeepCopy() *BucketList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketList.
func (*BucketList) DeepCopyInto ¶
func (in *BucketList) DeepCopyInto(out *BucketList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BucketList) DeepCopyObject ¶
func (in *BucketList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*BucketList) GetItems ¶
func (l *BucketList) GetItems() []resource.Managed
GetItems of this BucketList.
type BucketParameters ¶
type BucketParameters struct { // The canned ACL to apply to the bucket. // +kubebuilder:validation:Enum=private;public-read;public-read-write;authenticated-read;aws-exec-read;bucket-owner-read;bucket-owner-full-control;log-delivery-write // +optional ACL *string `json:"acl,omitempty"` // LocationConstraint specifies the Region where the bucket will be created. // It is a required field. // Due to AWS API limitations lacking on a proper response, when this field is set to a wrong value, // or to non-existent region on bucket creation, it's impossible forwarding a meaningful status message to the user // about the problem, producing connection errors instead. LocationConstraint string `json:"locationConstraint"` // Allows grantee the read, write, read ACP, and write ACP permissions on the // bucket. // +optional GrantFullControl *string `json:"grantFullControl,omitempty"` // Allows grantee to list the objects in the bucket. // +optional GrantRead *string `json:"grantRead,omitempty"` // Allows grantee to read the bucket ACL. // +optional GrantReadACP *string `json:"grantReadAcp,omitempty"` // Allows grantee to create, overwrite, and delete any object in the bucket. // +optional GrantWrite *string `json:"grantWrite,omitempty"` // Allows grantee to write the ACL for the applicable bucket. // +optional GrantWriteACP *string `json:"grantWriteAcp,omitempty"` // Specifies whether you want S3 Object Lock to be enabled for the new bucket. // +optional ObjectLockEnabledForBucket *bool `json:"objectLockEnabledForBucket,omitempty"` // The container element for object ownership for a bucket's ownership controls. // BucketOwnerPreferred - Objects uploaded to the bucket change ownership to the // bucket owner if the objects are uploaded with the bucket-owner-full-control // canned ACL. ObjectWriter - The uploading account will own the object if the // object is uploaded with the bucket-owner-full-control canned ACL. // BucketOwnerEnforced - Access control lists (ACLs) are disabled and no longer // affect permissions. The bucket owner automatically owns and has full control // over every object in the bucket. The bucket only accepts PUT requests that don't // specify an ACL or bucket owner full control ACLs, such as the // bucket-owner-full-control canned ACL or an equivalent form of this ACL expressed // in the XML format. // +kubebuilder:validation:Enum=BucketOwnerPreferred;ObjectWriter;BucketOwnerEnforced // +optional ObjectOwnership *string `json:"objectOwnership,omitempty"` // 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. // +optional ServerSideEncryptionConfiguration *ServerSideEncryptionConfiguration `json:"serverSideEncryptionConfiguration,omitempty"` // 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 // +optional VersioningConfiguration *VersioningConfiguration `json:"versioningConfiguration,omitempty"` // 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. // +optional AccelerateConfiguration *AccelerateConfiguration `json:"accelerateConfiguration,omitempty"` // 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. // +optional CORSConfiguration *CORSConfiguration `json:"corsConfiguration,omitempty"` // 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 // +optional WebsiteConfiguration *WebsiteConfiguration `json:"websiteConfiguration,omitempty"` // 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 // +optional LoggingConfiguration *LoggingConfiguration `json:"loggingConfiguration,omitempty"` // 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. // +optional PayerConfiguration *PaymentConfiguration `json:"paymentConfiguration,omitempty"` // Sets the tags for a bucket. // Use tags to organize your AWS bill to reflect your own cost structure. // For more information, see Billing and usage reporting for S3 buckets. // (https://docs.aws.amazon.com/AmazonS3/latest/dev/BucketBilling.html) in the Amazon // Simple Storage Service Developer Guide. // +optional BucketTagging *Tagging `json:"tagging,omitempty"` // 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. // +optional ReplicationConfiguration *ReplicationConfiguration `json:"replicationConfiguration,omitempty"` // 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). // +optional LifecycleConfiguration *BucketLifecycleConfiguration `json:"lifecycleConfiguration,omitempty"` // 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). // +optional NotificationConfiguration *NotificationConfiguration `json:"notificationConfiguration,omitempty"` // PublicAccessBlockConfiguration that you want to apply to this Amazon // S3 bucket. PublicAccessBlockConfiguration *PublicAccessBlockConfiguration `json:"publicAccessBlockConfiguration,omitempty"` // Policy is a well defined type which can be parsed into an JSON S3 Bucket // Policy. // // By default, to ensure compatibility with previous APIs, a bucket policy // is never deleted from a bucket if this field is set to null. // To change this behaviour, see `policyUpdatePolicy`. // // +optional Policy *common.BucketPolicyBody `json:"policy,omitempty"` // PolicyUpdatePolicy specifies the update behaviour of `policy`. PolicyUpdatePolicy *BucketPolicyUpdatePolicy `json:"policyUpdatePolicy,omitempty"` }
BucketParameters are parameters for configuring the calls made to AWS Bucket API.
func (*BucketParameters) DeepCopy ¶
func (in *BucketParameters) DeepCopy() *BucketParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketParameters.
func (*BucketParameters) DeepCopyInto ¶
func (in *BucketParameters) DeepCopyInto(out *BucketParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketPolicyDeletionPolicy ¶ added in v0.38.0
type BucketPolicyDeletionPolicy string
BucketPolicyDeletionPolicy determines how a bucket policy should be deleted from a bucket.
const ( // BucketPolicyDeletionPolicyNever specifies that a bucket policy is never // deleted but only overwritten. BucketPolicyDeletionPolicyNever BucketPolicyDeletionPolicy = "Never" // BucketPolicyDeletionPolicyIfNull specifies that a bucket policy is // deleted if the corresponding spec field is null. BucketPolicyDeletionPolicyIfNull BucketPolicyDeletionPolicy = "IfNull" )
type BucketPolicyUpdatePolicy ¶ added in v0.38.0
type BucketPolicyUpdatePolicy struct { // DeletionPolicy specifies how and if the bucket policy should be deleted // from the bucket. // // * `Never`: The bucket policy is never deleted, but only overwritten. If a // change is detected. // // * `IfNull`: The bucket policy is deleted if the `policy` field is set to // null. // // The default is `Never`. // // +kubebuilder:default="Never" // +kubebuilder:Enum=Never;IfNull DeletionPolicy BucketPolicyDeletionPolicy `json:"deletionPolicy,omitempty"` }
BucketPolicyUpdatePolicy specifies the update behaviour of a bucket policy.
func (*BucketPolicyUpdatePolicy) DeepCopy ¶ added in v0.38.0
func (in *BucketPolicyUpdatePolicy) DeepCopy() *BucketPolicyUpdatePolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketPolicyUpdatePolicy.
func (*BucketPolicyUpdatePolicy) DeepCopyInto ¶ added in v0.38.0
func (in *BucketPolicyUpdatePolicy) DeepCopyInto(out *BucketPolicyUpdatePolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketSpec ¶
type BucketSpec struct { xpv1.ResourceSpec `json:",inline"` ForProvider BucketParameters `json:"forProvider"` }
BucketSpec represents the desired state of the Bucket.
func (*BucketSpec) DeepCopy ¶
func (in *BucketSpec) DeepCopy() *BucketSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketSpec.
func (*BucketSpec) DeepCopyInto ¶
func (in *BucketSpec) DeepCopyInto(out *BucketSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketStatus ¶
type BucketStatus struct { xpv1.ResourceStatus `json:",inline"` AtProvider BucketExternalStatus `json:"atProvider,omitempty"` }
BucketStatus represents the observed state of the Bucket.
func (*BucketStatus) DeepCopy ¶
func (in *BucketStatus) DeepCopy() *BucketStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketStatus.
func (*BucketStatus) DeepCopyInto ¶
func (in *BucketStatus) DeepCopyInto(out *BucketStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CORSConfiguration ¶
type CORSConfiguration struct { // A set of origins and methods (cross-origin access that you want to allow). // You can add up to 100 rules to the configuration. CORSRules []CORSRule `json:"corsRules"` }
CORSConfiguration 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.
func (*CORSConfiguration) DeepCopy ¶
func (in *CORSConfiguration) DeepCopy() *CORSConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CORSConfiguration.
func (*CORSConfiguration) DeepCopyInto ¶
func (in *CORSConfiguration) DeepCopyInto(out *CORSConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CORSRule ¶
type CORSRule struct { // 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. // +optional AllowedHeaders []string `json:"allowedHeaders,omitempty"` // An HTTP method that you allow the origin to execute. Valid values are GET, // PUT, HEAD, POST, and DELETE. AllowedMethods []string `json:"allowedMethods"` // One or more origins you want customers to be able to access the bucket from. AllowedOrigins []string `json:"allowedOrigins"` // 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). // +optional ExposeHeaders []string `json:"exposeHeaders,omitempty"` // The time in seconds that your browser is to cache the preflight response // for the specified resource. // +optional MaxAgeSeconds int32 `json:"maxAgeSeconds,omitempty"` }
CORSRule specifies a cross-origin access rule for an Amazon S3 bucket.
func (*CORSRule) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CORSRule.
func (*CORSRule) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Condition ¶
type Condition struct { // The HTTP error code when the redirect is applied. In the event of an error, // if the error code equals this value, then the specified redirect is applied. // Required when parent element Condition is specified and sibling KeyPrefixEquals // is not specified. If both are specified, then both must be true for the redirect // to be applied. HTTPErrorCodeReturnedEquals *string `json:"httpErrorCodeReturnedEquals,omitempty"` // The object key name prefix when the redirect is applied. For example, to // redirect requests for ExamplePage.html, the key prefix will be ExamplePage.html. // To redirect request for all pages with the prefix docs/, the key prefix will // be /docs, which identifies all objects in the docs/ folder. Required when // the parent element Condition is specified and sibling HttpErrorCodeReturnedEquals // is not specified. If both conditions are specified, both must be true for // the redirect to be applied. KeyPrefixEquals *string `json:"keyPrefixEquals,omitempty"` }
Condition is 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.
func (*Condition) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Condition.
func (*Condition) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeleteMarkerReplication ¶
type DeleteMarkerReplication struct { // Indicates whether to replicate delete markers. // Valid values are "Enabled" or "Disabled" // +kubebuilder:validation:Enum=Enabled;Disabled Status string `json:"status"` }
DeleteMarkerReplication 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 <Status>Disabled</Status>. 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).
func (*DeleteMarkerReplication) DeepCopy ¶
func (in *DeleteMarkerReplication) DeepCopy() *DeleteMarkerReplication
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeleteMarkerReplication.
func (*DeleteMarkerReplication) DeepCopyInto ¶
func (in *DeleteMarkerReplication) DeepCopyInto(out *DeleteMarkerReplication)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Destination ¶
type Destination struct { // 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. // +optional AccessControlTranslation *AccessControlTranslation `json:"accessControlTranslation,omitempty"` // Destination bucket owner account ID. In a cross-account scenario, if you // direct Amazon S3 to change replica ownership to the AWS account that owns // the destination bucket by specifying the AccessControlTranslation property, // this is the account ID of the destination bucket owner. For more information, // see Replication Additional Configuration: Changing the Replica Owner (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-change-owner.html) // in the Amazon Simple Storage Service Developer Guide. Account *string `json:"account,omitempty"` // The Amazon Resource Name (ARN) of the bucket where you want Amazon S3 to // store the results. // At least one of bucket, bucketRef or bucketSelector is required. // +optional // +crossplane:generate:reference:type=Bucket // +crossplane:generate:reference:extractor=BucketARN() Bucket *string `json:"bucket,omitempty"` // BucketRef references a Bucket to retrieve its Name // +optional BucketRef *xpv1.Reference `json:"bucketRef,omitempty"` // BucketSelector selects a reference to a Bucket to retrieve its Name // +optional BucketSelector *xpv1.Selector `json:"bucketSelector,omitempty"` // A container that provides information about encryption. If SourceSelectionCriteria // is specified, you must specify this element. // +optional EncryptionConfiguration *EncryptionConfiguration `json:"encryptionConfiguration,omitempty"` // 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. Metrics *Metrics `json:"metrics,omitempty"` // 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. ReplicationTime *ReplicationTime `json:"replicationTime,omitempty"` // The storage class to use when replicating objects, such as S3 Standard or // reduced redundancy. By default, Amazon S3 uses the storage class of the source // object to create the object replica. // For valid values, see the StorageClass element of the PUT Bucket replication // (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html) // action in the Amazon Simple Storage Service API Reference. // +kubebuilder:validation:Enum=STANDARD;GLACIER;STANDARD_IA;ONEZONE_IA;INTELLIGENT_TIERING;DEEP_ARCHIVE // +optional StorageClass *string `json:"storageClass"` }
Destination specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC).
func (*Destination) DeepCopy ¶
func (in *Destination) DeepCopy() *Destination
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Destination.
func (*Destination) DeepCopyInto ¶
func (in *Destination) DeepCopyInto(out *Destination)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EncryptionConfiguration ¶
type EncryptionConfiguration struct { // Specifies the ID (Key ARN or Alias ARN) of the customer managed customer // master key (CMK) stored in AWS Key Management Service (KMS) for the destination // bucket. Amazon S3 uses this key to encrypt replica objects. Amazon S3 only // supports symmetric customer managed CMKs. For more information, see Using // Symmetric and Asymmetric Keys (https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) // in the AWS Key Management Service Developer Guide. // +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-aws/apis/kms/v1alpha1.Key ReplicaKmsKeyID *string `json:"replicaKmsKeyId"` // ReplicaKmsKeyIDRef references an KMSKey to retrieve its ID // +optional ReplicaKmsKeyIDRef *xpv1.Reference `json:"replicaKmsKeyIdRef,omitempty"` // ReplicaKmsKeyIDSelector selects a reference to an KMSKey to retrieve its ID // +optional ReplicaKmsKeyIDSelector *xpv1.Selector `json:"replicaKmsKeyIdSelector,omitempty"` }
EncryptionConfiguration specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects.
func (*EncryptionConfiguration) DeepCopy ¶
func (in *EncryptionConfiguration) DeepCopy() *EncryptionConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionConfiguration.
func (*EncryptionConfiguration) DeepCopyInto ¶
func (in *EncryptionConfiguration) DeepCopyInto(out *EncryptionConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ErrorDocument ¶
type ErrorDocument struct { // The object key name to use when a 4XX class error occurs. Key string `json:"key"` }
ErrorDocument is the error information.
func (*ErrorDocument) DeepCopy ¶
func (in *ErrorDocument) DeepCopy() *ErrorDocument
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ErrorDocument.
func (*ErrorDocument) DeepCopyInto ¶
func (in *ErrorDocument) DeepCopyInto(out *ErrorDocument)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExistingObjectReplication ¶
type ExistingObjectReplication struct { // Status is a required field // Valid values are "Enabled" and "Disabled" // +kubebuilder:validation:Enum=Enabled;Disabled Status string `json:"status"` }
ExistingObjectReplication 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.
func (*ExistingObjectReplication) DeepCopy ¶
func (in *ExistingObjectReplication) DeepCopy() *ExistingObjectReplication
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExistingObjectReplication.
func (*ExistingObjectReplication) DeepCopyInto ¶
func (in *ExistingObjectReplication) DeepCopyInto(out *ExistingObjectReplication)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FilterRule ¶
type FilterRule struct { // The object key name prefix or suffix identifying one or more objects to which // the filtering rule applies. The maximum length is 1,024 characters. Overlapping // prefixes and suffixes are not supported. For more information, see Configuring // Event Notifications (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) // in the Amazon Simple Storage Service Developer Guide. // Valid values are "prefix" or "suffix" // +kubebuilder:validation:Enum=prefix;suffix Name string `json:"name"` // The value that the filter searches for in object key names. Value *string `json:"value,omitempty"` }
FilterRule specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name.
func (*FilterRule) DeepCopy ¶
func (in *FilterRule) DeepCopy() *FilterRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilterRule.
func (*FilterRule) DeepCopyInto ¶
func (in *FilterRule) DeepCopyInto(out *FilterRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IndexDocument ¶
type IndexDocument struct { // A suffix that is appended to a request that is for a directory on the website // endpoint (for example,if the suffix is index.html and you make a request // to samplebucket/images/ the data that is returned will be for the object // with the key name images/index.html) The suffix must not be empty and must // not include a slash character. Suffix string `json:"suffix"` }
IndexDocument is container for the Suffix element.
func (*IndexDocument) DeepCopy ¶
func (in *IndexDocument) DeepCopy() *IndexDocument
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IndexDocument.
func (*IndexDocument) DeepCopyInto ¶
func (in *IndexDocument) DeepCopyInto(out *IndexDocument)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LambdaFunctionConfiguration ¶
type LambdaFunctionConfiguration struct { // 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 Events []string `json:"events"` // 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. Filter *NotificationConfigurationFilter `json:"filter,omitempty"` // An optional unique identifier for configurations in a notification configuration. // If you don't provide one, Amazon S3 will assign an ID. // +optional ID *string `json:"ID,omitempty"` // The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 // invokes when the specified event type occurs. // // LambdaFunctionArn is a required field LambdaFunctionArn string `json:"lambdaFunctionArn"` }
LambdaFunctionConfiguration contains the configuration for AWS Lambda notifications.
func (*LambdaFunctionConfiguration) DeepCopy ¶
func (in *LambdaFunctionConfiguration) DeepCopy() *LambdaFunctionConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LambdaFunctionConfiguration.
func (*LambdaFunctionConfiguration) DeepCopyInto ¶
func (in *LambdaFunctionConfiguration) DeepCopyInto(out *LambdaFunctionConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LifecycleExpiration ¶
type LifecycleExpiration struct { // Indicates at what date the object is to be moved or deleted. Date *metav1.Time `json:"date,omitempty"` // Indicates the lifetime, in days, of the objects that are subject to the rule. // The value must be a non-zero positive integer. // +kubebuilder:validation:Minimum=1 Days int32 `json:"days,omitempty"` // Indicates whether Amazon S3 will remove a delete marker with no noncurrent // versions. If set to true, the delete marker will be expired; if set to false // the policy takes no action. This cannot be specified with Days or Date in // a Lifecycle Expiration Policy. ExpiredObjectDeleteMarker bool `json:"expiredObjectDeleteMarker,omitempty"` }
LifecycleExpiration contains for the expiration for the lifecycle of the object.
func (*LifecycleExpiration) DeepCopy ¶
func (in *LifecycleExpiration) DeepCopy() *LifecycleExpiration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LifecycleExpiration.
func (*LifecycleExpiration) DeepCopyInto ¶
func (in *LifecycleExpiration) DeepCopyInto(out *LifecycleExpiration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LifecycleRule ¶
type LifecycleRule struct { // 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. // +optional AbortIncompleteMultipartUpload *AbortIncompleteMultipartUpload `json:"abortIncompleteMultipartUpload,omitempty"` // Specifies the expiration for the lifecycle of the object in the form of date, // days and, whether the object has a delete marker. // +optional Expiration *LifecycleExpiration `json:"expiration,omitempty"` // 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. // +optional Filter *LifecycleRuleFilter `json:"filter,omitempty"` // Unique identifier for the rule. The value cannot be longer than 255 characters. ID *string `json:"id,omitempty"` // 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. // +optional NoncurrentVersionExpiration *NoncurrentVersionExpiration `json:"noncurrentVersionExpiration,omitempty"` // 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. // +optional NoncurrentVersionTransitions []NoncurrentVersionTransition `json:"noncurrentVersionTransitions,omitempty"` // If 'Enabled', the rule is currently being applied. If 'Disabled', the rule // is not currently being applied. // // Status is a required field, valid values are Enabled or Disabled // +kubebuilder:validation:Enum=Enabled;Disabled Status string `json:"status"` // Specifies when an Amazon S3 object transitions to a specified storage class. // +optional Transitions []Transition `json:"transitions,omitempty"` }
LifecycleRule for individual objects in an Amazon S3 bucket.
func (*LifecycleRule) DeepCopy ¶
func (in *LifecycleRule) DeepCopy() *LifecycleRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LifecycleRule.
func (*LifecycleRule) DeepCopyInto ¶
func (in *LifecycleRule) DeepCopyInto(out *LifecycleRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LifecycleRuleAndOperator ¶
type LifecycleRuleAndOperator struct { // Prefix identifying one or more objects to which the rule applies. Prefix *string `json:"prefix,omitempty"` // All of these tags must exist in the object's tag set in order for the rule // to apply. Tags []Tag `json:"tags"` }
LifecycleRuleAndOperator 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.
func (*LifecycleRuleAndOperator) DeepCopy ¶
func (in *LifecycleRuleAndOperator) DeepCopy() *LifecycleRuleAndOperator
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LifecycleRuleAndOperator.
func (*LifecycleRuleAndOperator) DeepCopyInto ¶
func (in *LifecycleRuleAndOperator) DeepCopyInto(out *LifecycleRuleAndOperator)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LifecycleRuleFilter ¶
type LifecycleRuleFilter struct { // 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. And *LifecycleRuleAndOperator `json:"and,omitempty"` // Prefix identifying one or more objects to which the rule applies. Prefix *string `json:"prefix,omitempty"` // This tag must exist in the object's tag set in order for the rule to apply. Tag *Tag `json:"tag,omitempty"` }
LifecycleRuleFilter is used to identify objects that a Lifecycle Rule applies to. A Filter must have exactly one of Prefix, Tag, or And specified.
func (*LifecycleRuleFilter) DeepCopy ¶
func (in *LifecycleRuleFilter) DeepCopy() *LifecycleRuleFilter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LifecycleRuleFilter.
func (*LifecycleRuleFilter) DeepCopyInto ¶
func (in *LifecycleRuleFilter) DeepCopyInto(out *LifecycleRuleFilter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LoggingConfiguration ¶
type LoggingConfiguration struct { // TargetBucket where logs will be stored, it can be the same bucket. // At least one of targetBucket, targetBucketRef or targetBucketSelector is // required. // +optional // +crossplane:generate:reference:type=Bucket TargetBucket *string `json:"targetBucket,omitempty"` // TargetBucketRef references an S3Bucket to retrieve its name // +optional TargetBucketRef *xpv1.Reference `json:"targetBucketRef,omitempty"` // TargetBucketSelector selects a reference to an S3Bucket to retrieve its name // +optional TargetBucketSelector *xpv1.Selector `json:"targetBucketSelector,omitempty"` // A prefix for all log object keys. TargetPrefix string `json:"targetPrefix"` // Container for granting information. TargetGrants []TargetGrant `json:"targetGrants,omitempty"` }
LoggingConfiguration describes where logs are stored and the prefix that Amazon S3 assigns to all log object keys for a bucket. For more information, see PUT Bucket logging (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTlogging.html)
func (*LoggingConfiguration) DeepCopy ¶
func (in *LoggingConfiguration) DeepCopy() *LoggingConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoggingConfiguration.
func (*LoggingConfiguration) DeepCopyInto ¶
func (in *LoggingConfiguration) DeepCopyInto(out *LoggingConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Metrics ¶
type Metrics struct { // A container specifying the time threshold for emitting the s3:Replication:OperationMissedThreshold // event. // +optional EventThreshold *ReplicationTimeValue `json:"eventThreshold,omitempty"` // Specifies whether the replication metrics are enabled. // // Status is a required field, valid values are "Enabled" and "Disabled" // +kubebuilder:validation:Enum=Enabled;Disabled Status string `json:"status"` }
Metrics specifies 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.
func (*Metrics) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Metrics.
func (*Metrics) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NoncurrentVersionExpiration ¶
type NoncurrentVersionExpiration struct { // Specifies the number of days an object is noncurrent before Amazon S3 can // perform the associated action. For information about the noncurrent days // calculations, see How Amazon S3 Calculates When an Object Became Noncurrent // (https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#non-current-days-calculations) // in the Amazon Simple Storage Service Developer Guide. NoncurrentDays int32 `json:"noncurrentDays,omitempty"` }
NoncurrentVersionExpiration 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.
func (*NoncurrentVersionExpiration) DeepCopy ¶
func (in *NoncurrentVersionExpiration) DeepCopy() *NoncurrentVersionExpiration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NoncurrentVersionExpiration.
func (*NoncurrentVersionExpiration) DeepCopyInto ¶
func (in *NoncurrentVersionExpiration) DeepCopyInto(out *NoncurrentVersionExpiration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NoncurrentVersionTransition ¶
type NoncurrentVersionTransition struct { // Specifies the number of days an object is noncurrent before Amazon S3 can // perform the associated action. For information about the noncurrent days // calculations, see How Amazon S3 Calculates How Long an Object Has Been Noncurrent // (https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#non-current-days-calculations) // in the Amazon Simple Storage Service Developer Guide. NoncurrentDays int32 `json:"noncurrentDays,omitempty"` // The class of storage used to store the object. // Valid values are: GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE // +kubebuilder:validation:Enum=GLACIER;STANDARD_IA;ONEZONE_IA;INTELLIGENT_TIERING;DEEP_ARCHIVE StorageClass string `json:"storageClass"` }
NoncurrentVersionTransition contains the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, or DEEP_ARCHIVE 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 the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime.
func (*NoncurrentVersionTransition) DeepCopy ¶
func (in *NoncurrentVersionTransition) DeepCopy() *NoncurrentVersionTransition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NoncurrentVersionTransition.
func (*NoncurrentVersionTransition) DeepCopyInto ¶
func (in *NoncurrentVersionTransition) DeepCopyInto(out *NoncurrentVersionTransition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NotificationConfiguration ¶
type NotificationConfiguration struct { // Describes the AWS Lambda functions to invoke and the events for which to // invoke them. // +optional LambdaFunctionConfigurations []LambdaFunctionConfiguration `json:"lambdaFunctionConfigurations,omitempty"` // The Amazon Simple Queue Service queues to publish messages to and the events // for which to publish messages. // +optional QueueConfigurations []QueueConfiguration `json:"queueConfigurations,omitempty"` // The topic to which notifications are sent and the events for which notifications // are generated. // +optional TopicConfigurations []TopicConfiguration `json:"topicConfigurations,omitempty"` }
NotificationConfiguration specifies the notification configuration of the bucket. If this element is empty, notifications are turned off for the bucket.
func (*NotificationConfiguration) DeepCopy ¶
func (in *NotificationConfiguration) DeepCopy() *NotificationConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationConfiguration.
func (*NotificationConfiguration) DeepCopyInto ¶
func (in *NotificationConfiguration) DeepCopyInto(out *NotificationConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NotificationConfigurationFilter ¶
type NotificationConfigurationFilter struct { // A container for object key name prefix and suffix filtering rules. Key *S3KeyFilter `json:"key,omitempty"` }
NotificationConfigurationFilter 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.
func (*NotificationConfigurationFilter) DeepCopy ¶
func (in *NotificationConfigurationFilter) DeepCopy() *NotificationConfigurationFilter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationConfigurationFilter.
func (*NotificationConfigurationFilter) DeepCopyInto ¶
func (in *NotificationConfigurationFilter) DeepCopyInto(out *NotificationConfigurationFilter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PaymentConfiguration ¶
type PaymentConfiguration struct { // Payer is a required field, detailing who pays // Valid values are "Requester" and "BucketOwner" // +kubebuilder:validation:Enum=Requester;BucketOwner Payer string `json:"payer"` }
PaymentConfiguration specifies who pays for the download and request fees.
func (*PaymentConfiguration) DeepCopy ¶
func (in *PaymentConfiguration) DeepCopy() *PaymentConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PaymentConfiguration.
func (*PaymentConfiguration) DeepCopyInto ¶
func (in *PaymentConfiguration) DeepCopyInto(out *PaymentConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PublicAccessBlockConfiguration ¶
type PublicAccessBlockConfiguration struct { // Specifies whether Amazon S3 should block public access control lists (ACLs) // for this bucket and objects in this bucket. Setting this element to TRUE // causes the following behavior: // // * PUT Bucket acl and PUT Object acl calls fail if the specified ACL is // public. // // * PUT Object calls fail if the request includes a public ACL. // // * PUT Bucket calls fail if the request includes a public ACL. // // Enabling this setting doesn't affect existing policies or ACLs. BlockPublicAcls *bool `json:"blockPublicAcls,omitempty"` // Specifies whether Amazon S3 should block public bucket policies for this // bucket. Setting this element to TRUE causes Amazon S3 to reject calls to // PUT Bucket policy if the specified bucket policy allows public access. // // Enabling this setting doesn't affect existing bucket policies. BlockPublicPolicy *bool `json:"blockPublicPolicy,omitempty"` // Specifies whether Amazon S3 should ignore public ACLs for this bucket and // objects in this bucket. Setting this element to TRUE causes Amazon S3 to // ignore all public ACLs on this bucket and objects in this bucket. // // Enabling this setting doesn't affect the persistence of any existing ACLs // and doesn't prevent new public ACLs from being set. IgnorePublicAcls *bool `json:"ignorePublicAcls,omitempty"` // Specifies whether Amazon S3 should restrict public bucket policies for this // bucket. Setting this element to TRUE restricts access to this bucket to only // AWS services and authorized users within this account if the bucket has a // public policy. // // Enabling this setting doesn't affect previously stored bucket policies, except // that public and cross-account access within any public bucket policy, including // non-public delegation to specific accounts, is blocked. RestrictPublicBuckets *bool `json:"restrictPublicBuckets,omitempty"` }
PublicAccessBlockConfiguration that you want to apply to this Amazon S3 bucket. You can enable the configuration options in any combination. For more information about when Amazon S3 considers a bucket or object public, see The Meaning of "Public" (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status) in the Amazon Simple Storage Service Developer Guide.
func (*PublicAccessBlockConfiguration) DeepCopy ¶
func (in *PublicAccessBlockConfiguration) DeepCopy() *PublicAccessBlockConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicAccessBlockConfiguration.
func (*PublicAccessBlockConfiguration) DeepCopyInto ¶
func (in *PublicAccessBlockConfiguration) DeepCopyInto(out *PublicAccessBlockConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QueueConfiguration ¶
type QueueConfiguration struct { // 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 Events []string `json:"events"` // 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. Filter *NotificationConfigurationFilter `json:"filter,omitempty"` // An optional unique identifier for configurations in a notification configuration. // If you don't provide one, Amazon S3 will assign an ID. // +optional ID *string `json:"ID,omitempty"` // The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 // publishes a message when it detects events of the specified type. // // QueueArn is a required field // +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-aws/apis/sqs/v1beta1.Queue // +crossplane:generate:reference:extractor=github.com/crossplane-contrib/provider-aws/apis/sqs/v1beta1.QueueARN() QueueArn *string `json:"queueArn,omitempty"` // QueueArnRef references an Queue to retrieve its ARN // +optional QueueArnRef *xpv1.Reference `json:"queueArnRef,omitempty"` // QueueArnSelector selects a reference to an Queue to retrieve its ARN // +optional QueueArnSelector *xpv1.Selector `json:"queueArnSelector,omitempty"` }
QueueConfiguration specifies the configuration for publishing messages to an Amazon Simple Queue Service (Amazon SQS) queue when Amazon S3 detects specified events.
func (*QueueConfiguration) DeepCopy ¶
func (in *QueueConfiguration) DeepCopy() *QueueConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueConfiguration.
func (*QueueConfiguration) DeepCopyInto ¶
func (in *QueueConfiguration) DeepCopyInto(out *QueueConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Redirect ¶
type Redirect struct { // The host name to use in the redirect request. // +optional HostName *string `json:"keyPrefixEquals,omitempty"` // The HTTP redirect code to use on the response. Not required if one of the // siblings is present. HTTPRedirectCode *string `json:"httpRedirectCode,omitempty"` // Protocol to use when redirecting requests. The default is the protocol that // is used in the original request. Protocol string `json:"protocol,omitempty"` // The object key prefix to use in the redirect request. For example, to redirect // requests for all pages with prefix docs/ (objects in the docs/ folder) to // documents/, you can set a condition block with KeyPrefixEquals set to docs/ // and in the Redirect set ReplaceKeyPrefixWith to /documents. Not required // if one of the siblings is present. Can be present only if ReplaceKeyWith // is not provided. ReplaceKeyPrefixWith *string `json:"replaceKeyPrefixWith,omitempty"` // The specific object key to use in the redirect request. For example, redirect // request to error.html. Not required if one of the siblings is present. Can // be present only if ReplaceKeyPrefixWith is not provided. ReplaceKeyWith *string `json:"replaceKeyWith,omitempty"` }
Redirect specifies how requests are redirected. In the event of an error, you can specify a different error code to return.
func (*Redirect) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Redirect.
func (*Redirect) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RedirectAllRequestsTo ¶
type RedirectAllRequestsTo struct { // Name of the host where requests are redirected. HostName string `json:"hostName"` // Protocol to use when redirecting requests. The default is the protocol that // is used in the original request. // +kubebuilder:validation:Enum=http;https Protocol string `json:"protocol,omitempty"` }
RedirectAllRequestsTo specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.
func (*RedirectAllRequestsTo) DeepCopy ¶
func (in *RedirectAllRequestsTo) DeepCopy() *RedirectAllRequestsTo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedirectAllRequestsTo.
func (*RedirectAllRequestsTo) DeepCopyInto ¶
func (in *RedirectAllRequestsTo) DeepCopyInto(out *RedirectAllRequestsTo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReplicationConfiguration ¶
type ReplicationConfiguration struct { // The Amazon Resource Name (ARN) of the AWS Identity and Access Management // (IAM) role that Amazon S3 assumes when replicating objects. For more information, // see How to Set Up Replication (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html) // in the Amazon Simple Storage Service Developer Guide. // // At least one of role, roleRef or roleSelector fields is required. // +optional // +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-aws/apis/iam/v1beta1.Role // +crossplane:generate:reference:extractor=github.com/crossplane-contrib/provider-aws/apis/iam/v1beta1.RoleARN() Role *string `json:"role,omitempty"` // RoleRef references an IAMRole to retrieve its Name // +optional RoleRef *xpv1.Reference `json:"roleRef,omitempty"` // RoleSelector selects a reference to an IAMRole to retrieve its Name // +optional RoleSelector *xpv1.Selector `json:"roleSelector,omitempty"` // 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 Rules []ReplicationRule `json:"rules"` }
ReplicationConfiguration contains replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB.
func (*ReplicationConfiguration) DeepCopy ¶
func (in *ReplicationConfiguration) DeepCopy() *ReplicationConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationConfiguration.
func (*ReplicationConfiguration) DeepCopyInto ¶
func (in *ReplicationConfiguration) DeepCopyInto(out *ReplicationConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReplicationRule ¶
type ReplicationRule struct { // 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 <Status>Disabled</Status>. 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). DeleteMarkerReplication *DeleteMarkerReplication `json:"deleteMarkerReplication,omitempty"` // 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 Destination Destination `json:"destination"` // 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. ExistingObjectReplication *ExistingObjectReplication `json:"existingObjectReplication,omitempty"` // 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. Filter *ReplicationRuleFilter `json:"filter,omitempty"` // A unique identifier for the rule. The maximum value is 255 characters. ID *string `json:"id,omitempty"` // The priority associated with the rule. If you specify multiple rules in a // replication configuration, Amazon S3 prioritizes the rules to prevent conflicts // when filtering. If two or more rules identify the same object based on a // specified filter, the rule with higher priority takes precedence. For example: // // * Same object quality prefix-based filter criteria if prefixes you specified // in multiple rules overlap // // * Same object qualify tag-based filter criteria specified in multiple // rules // // For more information, see Replication (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html) // in the Amazon Simple Storage Service Developer Guide. Priority int32 `json:"priority,omitempty"` // 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). SourceSelectionCriteria *SourceSelectionCriteria `json:"sourceSelectionCriteria,omitempty"` // Specifies whether the rule is enabled. // // Status is a required field // Valid values are "Enabled" or "Disabled" // +kubebuilder:validation:Enum=Enabled;Disabled Status string `json:"status"` }
ReplicationRule specifies which Amazon S3 objects to replicate and where to store the replicas.
func (*ReplicationRule) DeepCopy ¶
func (in *ReplicationRule) DeepCopy() *ReplicationRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationRule.
func (*ReplicationRule) DeepCopyInto ¶
func (in *ReplicationRule) DeepCopyInto(out *ReplicationRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReplicationRuleAndOperator ¶
type ReplicationRuleAndOperator struct { // An object key name prefix that identifies the subset of objects to which // the rule applies. Prefix *string `json:"prefix,omitempty"` // An array of tags containing key and value pairs. Tags []Tag `json:"tag,omitempty"` }
ReplicationRuleAndOperator specifies 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
func (*ReplicationRuleAndOperator) DeepCopy ¶
func (in *ReplicationRuleAndOperator) DeepCopy() *ReplicationRuleAndOperator
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationRuleAndOperator.
func (*ReplicationRuleAndOperator) DeepCopyInto ¶
func (in *ReplicationRuleAndOperator) DeepCopyInto(out *ReplicationRuleAndOperator)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReplicationRuleFilter ¶
type ReplicationRuleFilter struct { // 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. And *ReplicationRuleAndOperator `json:"and,omitempty"` // An object key name prefix that identifies the subset of objects to which // the rule applies. Prefix *string `json:"prefix,omitempty"` // A container for specifying a tag key and value. // The rule applies only to objects that have the tag in their tag set. Tag *Tag `json:"tag,omitempty"` }
ReplicationRuleFilter identifies the subset of objects to which the replication rule applies. A Filter must specify exactly one Prefix, Tag, or an And child element.
func (*ReplicationRuleFilter) DeepCopy ¶
func (in *ReplicationRuleFilter) DeepCopy() *ReplicationRuleFilter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationRuleFilter.
func (*ReplicationRuleFilter) DeepCopyInto ¶
func (in *ReplicationRuleFilter) DeepCopyInto(out *ReplicationRuleFilter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReplicationTime ¶
type ReplicationTime struct { // Specifies whether the replication time is enabled // Status is a required field // Valid values are "Enabled" and "Disabled" // +kubebuilder:validation:Enum=Enabled;Disabled Status string `json:"status"` // A container specifying the time by which replication should be complete for // all objects and operations on objects. // Time is a required field Time ReplicationTimeValue `json:"time"` }
ReplicationTime specifies S3 Replication Time Control (S3 RTC) related information, 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.
func (*ReplicationTime) DeepCopy ¶
func (in *ReplicationTime) DeepCopy() *ReplicationTime
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationTime.
func (*ReplicationTime) DeepCopyInto ¶
func (in *ReplicationTime) DeepCopyInto(out *ReplicationTime)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReplicationTimeValue ¶
type ReplicationTimeValue struct { // Contains an integer specifying time in minutes. // // Valid values: 15 minutes. Minutes int32 `json:"minutes"` }
ReplicationTimeValue specifies the time value for S3 Replication Time Control (S3 RTC) and replication metrics EventThreshold.
func (*ReplicationTimeValue) DeepCopy ¶
func (in *ReplicationTimeValue) DeepCopy() *ReplicationTimeValue
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationTimeValue.
func (*ReplicationTimeValue) DeepCopyInto ¶
func (in *ReplicationTimeValue) DeepCopyInto(out *ReplicationTimeValue)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RoutingRule ¶
type RoutingRule struct { // 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. // +optional Condition *Condition `json:"condition,omitempty"` // 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. Redirect Redirect `json:"redirect"` }
RoutingRule specifies the redirect behavior and when a redirect is applied.
func (*RoutingRule) DeepCopy ¶
func (in *RoutingRule) DeepCopy() *RoutingRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingRule.
func (*RoutingRule) DeepCopyInto ¶
func (in *RoutingRule) DeepCopyInto(out *RoutingRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type S3KeyFilter ¶
type S3KeyFilter struct { // A list of containers for the key-value pair that defines the criteria for // the filter rule. FilterRules []FilterRule `json:"filterRules"` }
S3KeyFilter contains the object key name prefix and suffix filtering rules.
func (*S3KeyFilter) DeepCopy ¶
func (in *S3KeyFilter) DeepCopy() *S3KeyFilter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3KeyFilter.
func (*S3KeyFilter) DeepCopyInto ¶
func (in *S3KeyFilter) DeepCopyInto(out *S3KeyFilter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServerSideEncryptionByDefault ¶
type ServerSideEncryptionByDefault struct { // AWS Key Management Service (KMS) customer master key ID to use for the default // encryption. This parameter is allowed if and only if SSEAlgorithm is set // to aws:kms. // // You can specify the key ID or the Amazon Resource Name (ARN) of the CMK. // However, if you are using encryption with cross-account operations, you must // use a fully qualified CMK ARN. For more information, see Using encryption // for cross-account operations (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy). // // For example: // // * Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab // // * Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab // // Amazon S3 only supports symmetric CMKs and not asymmetric CMKs. For more // information, see Using Symmetric and Asymmetric Keys (https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) // in the AWS Key Management Service Developer Guide. // +optional // +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-aws/apis/kms/v1alpha1.Key KMSMasterKeyID *string `json:"kmsMasterKeyId,omitempty"` // KMSMasterKeyIDRef references an KMSKey to retrieve its ID // +optional KMSMasterKeyIDRef *xpv1.Reference `json:"kmsMasterKeyIdRef,omitempty"` // KMSMasterKeyIDSelector selects a reference to an KMSKey to retrieve its ID // +optional KMSMasterKeyIDSelector *xpv1.Selector `json:"kmsMasterKeyIdSelector,omitempty"` // Server-side encryption algorithm to use for the default encryption. // Options are AES256 or aws:kms SSEAlgorithm string `json:"sseAlgorithm"` }
ServerSideEncryptionByDefault describes 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.
func (*ServerSideEncryptionByDefault) DeepCopy ¶
func (in *ServerSideEncryptionByDefault) DeepCopy() *ServerSideEncryptionByDefault
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerSideEncryptionByDefault.
func (*ServerSideEncryptionByDefault) DeepCopyInto ¶
func (in *ServerSideEncryptionByDefault) DeepCopyInto(out *ServerSideEncryptionByDefault)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServerSideEncryptionConfiguration ¶
type ServerSideEncryptionConfiguration struct { // Container for information about a particular server-side encryption configuration // rule. Rules []ServerSideEncryptionRule `json:"rules"` }
ServerSideEncryptionConfiguration specifies the default server-side-encryption configuration.
func (*ServerSideEncryptionConfiguration) DeepCopy ¶
func (in *ServerSideEncryptionConfiguration) DeepCopy() *ServerSideEncryptionConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerSideEncryptionConfiguration.
func (*ServerSideEncryptionConfiguration) DeepCopyInto ¶
func (in *ServerSideEncryptionConfiguration) DeepCopyInto(out *ServerSideEncryptionConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServerSideEncryptionRule ¶
type ServerSideEncryptionRule struct { // 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. ApplyServerSideEncryptionByDefault ServerSideEncryptionByDefault `json:"applyServerSideEncryptionByDefault"` // Specifies whether Amazon S3 should use an S3 Bucket Key with server-side // encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects // are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 // to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled. For more // information, see Amazon S3 Bucket Keys // (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) in the Amazon // S3 User Guide. BucketKeyEnabled bool `json:"bucketKeyEnabled,omitempty"` }
ServerSideEncryptionRule Specifies the default server-side encryption configuration.
func (*ServerSideEncryptionRule) DeepCopy ¶
func (in *ServerSideEncryptionRule) DeepCopy() *ServerSideEncryptionRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerSideEncryptionRule.
func (*ServerSideEncryptionRule) DeepCopyInto ¶
func (in *ServerSideEncryptionRule) DeepCopyInto(out *ServerSideEncryptionRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SourceSelectionCriteria ¶
type SourceSelectionCriteria struct { // 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. SseKmsEncryptedObjects SseKmsEncryptedObjects `json:"sseKmsEncryptedObjects"` }
SourceSelectionCriteria 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).
func (*SourceSelectionCriteria) DeepCopy ¶
func (in *SourceSelectionCriteria) DeepCopy() *SourceSelectionCriteria
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceSelectionCriteria.
func (*SourceSelectionCriteria) DeepCopyInto ¶
func (in *SourceSelectionCriteria) DeepCopyInto(out *SourceSelectionCriteria)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SseKmsEncryptedObjects ¶
type SseKmsEncryptedObjects struct { // Specifies whether Amazon S3 replicates objects created with server-side encryption // using a customer master key (CMK) stored in AWS Key Management Service. // // Status is a required field // Valid values are "Enabled" or "Disabled" // +kubebuilder:validation:Enum=Enabled;Disabled Status string `json:"status"` }
SseKmsEncryptedObjects is the container for filter information for the selection of S3 objects encrypted with AWS KMS.
func (*SseKmsEncryptedObjects) DeepCopy ¶
func (in *SseKmsEncryptedObjects) DeepCopy() *SseKmsEncryptedObjects
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SseKmsEncryptedObjects.
func (*SseKmsEncryptedObjects) DeepCopyInto ¶
func (in *SseKmsEncryptedObjects) DeepCopyInto(out *SseKmsEncryptedObjects)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Tag ¶
type Tag struct { // Name of the tag. // Key is a required field Key string `json:"key"` // Value of the tag. // Value is a required field Value string `json:"value"` }
Tag is a container for a key value name pair.
func (*Tag) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tag.
func (*Tag) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Tagging ¶
type Tagging struct { // A collection for a set of tags // TagSet is a required field TagSet []Tag `json:"tagSet"` }
Tagging is the container for TagSet elements.
func (*Tagging) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tagging.
func (*Tagging) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetGrant ¶
type TargetGrant struct { // Container for the person being granted permissions. Grantee TargetGrantee `json:"targetGrantee"` // Logging permissions assigned to the Grantee for the bucket. // Valid values are "FULL_CONTROL", "READ", "WRITE" // +kubebuilder:validation:Enum=FULL_CONTROL;READ;WRITE Permission string `json:"bucketLogsPermission"` }
TargetGrant is the container for granting information.
func (*TargetGrant) DeepCopy ¶
func (in *TargetGrant) DeepCopy() *TargetGrant
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGrant.
func (*TargetGrant) DeepCopyInto ¶
func (in *TargetGrant) DeepCopyInto(out *TargetGrant)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetGrantee ¶
type TargetGrantee struct { // Screen name of the grantee. DisplayName *string `json:"displayName,omitempty"` // Email address of the grantee. // For a list of all the Amazon S3 supported Regions and endpoints, see Regions // and Endpoints (https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) // in the AWS General Reference. EmailAddress *string `json:"emailAddress,omitempty"` // The canonical user ID of the grantee. ID *string `json:"ID,omitempty"` // Type of grantee // Type is a required field // +kubebuilder:validation:Enum=CanonicalUser;AmazonCustomerByEmail;Group Type string `json:"type"` // URI of the grantee group. URI *string `json:"URI,omitempty"` }
TargetGrantee is the container for the person being granted permissions.
func (*TargetGrantee) DeepCopy ¶
func (in *TargetGrantee) DeepCopy() *TargetGrantee
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGrantee.
func (*TargetGrantee) DeepCopyInto ¶
func (in *TargetGrantee) DeepCopyInto(out *TargetGrantee)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TopicConfiguration ¶
type TopicConfiguration struct { // 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 Events []string `json:"events"` // 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. Filter *NotificationConfigurationFilter `json:"filter,omitempty"` // An optional unique identifier for configurations in a notification configuration. // If you don't provide one, Amazon S3 will assign an ID. // +optional ID *string `json:"ID,omitempty"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 // publishes a message when it detects events of the specified type. // At least one of topicArn, topicArnRef or topicSelector is required. // +optional // +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-aws/apis/sns/v1beta1.Topic // +crossplane:generate:reference:extractor=github.com/crossplane-contrib/provider-aws/apis/sns/v1beta1.SNSTopicARN() TopicArn *string `json:"topicArn,omitempty"` // TopicArnRef references an SNS Topic to retrieve its Arn // +optional TopicArnRef *xpv1.Reference `json:"topicRef,omitempty"` // TopicArnSelector selects a reference to an SNS Topic to retrieve its Arn // +optional TopicArnSelector *xpv1.Selector `json:"topicSelector,omitempty"` }
TopicConfiguration specifies the configuration for publication of messages to an Amazon Simple Notification Service (Amazon SNS) topic when Amazon S3 detects specified events.
func (*TopicConfiguration) DeepCopy ¶
func (in *TopicConfiguration) DeepCopy() *TopicConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopicConfiguration.
func (*TopicConfiguration) DeepCopyInto ¶
func (in *TopicConfiguration) DeepCopyInto(out *TopicConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Transition ¶
type Transition struct { // Indicates when objects are transitioned to the specified storage class. The // date value must be in ISO 8601 format. The time is always midnight UTC. Date *metav1.Time `json:"date,omitempty"` // Indicates the number of days after creation when objects are transitioned // to the specified storage class. The value must be a positive integer. // +kubebuilder:validation:Minimum=1 Days int32 `json:"days,omitempty"` // The storage class to which you want the object to transition. // Valid values are: GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE // +kubebuilder:validation:Enum=GLACIER;STANDARD_IA;ONEZONE_IA;INTELLIGENT_TIERING;DEEP_ARCHIVE StorageClass string `json:"storageClass"` }
Transition specifies when an object transitions to a specified storage class. For more information about Amazon S3 lifecycle configuration rules, see Transitioning Objects Using Amazon S3 Lifecycle (https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-transition-general-considerations.html) in the Amazon Simple Storage Service Developer Guide.
func (*Transition) DeepCopy ¶
func (in *Transition) DeepCopy() *Transition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Transition.
func (*Transition) DeepCopyInto ¶
func (in *Transition) DeepCopyInto(out *Transition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VersioningConfiguration ¶
type VersioningConfiguration struct { // MFADelete specifies whether MFA delete is enabled in the bucket versioning configuration. // This element is only returned if the bucket has been configured with MFA // delete. If the bucket has never been so configured, this element is not returned. // +kubebuilder:validation:Enum=Enabled;Disabled MFADelete *string `json:"mfaDelete,omitempty"` // Status is the desired versioning state of the bucket. // +kubebuilder:validation:Enum=Enabled;Suspended Status *string `json:"status,omitempty"` }
VersioningConfiguration describes the versioning state of an Amazon S3 bucket.
func (*VersioningConfiguration) DeepCopy ¶
func (in *VersioningConfiguration) DeepCopy() *VersioningConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VersioningConfiguration.
func (*VersioningConfiguration) DeepCopyInto ¶
func (in *VersioningConfiguration) DeepCopyInto(out *VersioningConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WebsiteConfiguration ¶
type WebsiteConfiguration struct { // The name of the error document for the website. // +optional ErrorDocument *ErrorDocument `json:"errorDocument,omitempty"` // The name of the index document for the website. // +optional IndexDocument *IndexDocument `json:"indexDocument,omitempty"` // The redirect behavior for every request to this bucket's website endpoint. // If you specify this property, you can't specify any other property. // +optional RedirectAllRequestsTo *RedirectAllRequestsTo `json:"redirectAllRequestsTo,omitempty"` // Rules that define when a redirect is applied and the redirect behavior. // +optional RoutingRules []RoutingRule `json:"routingRules,omitempty"` }
WebsiteConfiguration specifies website configuration parameters for an Amazon S3 bucket.
func (*WebsiteConfiguration) DeepCopy ¶
func (in *WebsiteConfiguration) DeepCopy() *WebsiteConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebsiteConfiguration.
func (*WebsiteConfiguration) DeepCopyInto ¶
func (in *WebsiteConfiguration) DeepCopyInto(out *WebsiteConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
Source Files ¶
- CORSConfiguration_types.go
- accelerateConfiguration_types.go
- bucket_types.go
- doc.go
- lifecycleConfiguration_types.go
- loggingConfiguration_types.go
- notificationConfiguration_types.go
- referencers.go
- register.go
- replicationConfiguration_types.go
- requestPaymentConfiguration_types.go
- serverSideEncryption_types.go
- tagging_types.go
- versioningConfiguration_types.go
- websiteConfiguration_types.go
- zz_generated.deepcopy.go
- zz_generated.managed.go
- zz_generated.managedlist.go
- zz_generated.resolvers.go