Documentation
¶
Index ¶
- type AccessControlList
- type AccessControlPolicy
- type AmzDate
- type Bucket
- type CanonicalUser
- type Checksum
- type CommonPrefix
- type CompleteMultipartUploadRequestBody
- type CompleteMultipartUploadResult
- type CopyObjectInput
- type CopyObjectOutput
- type CopyObjectResult
- type CopyPartResult
- type CreateBucketConfiguration
- type CreateMultipartUploadInput
- type DeleteMarkerEntry
- type DeleteObjects
- type DeleteResult
- type ErrorDocument
- type GetBucketVersioningOutput
- type GetObjectAttributesResponse
- type GetObjectLegalHoldResult
- type GetObjectRetentionResult
- type Grant
- type Grantee
- type IndexDocument
- type InitiateMultipartUploadResult
- type Initiator
- type ListAllMyBucketsEntry
- type ListAllMyBucketsList
- type ListAllMyBucketsResult
- type ListBucketsInput
- type ListBucketsResult
- type ListMultipartUploadsResult
- type ListObjectsResult
- type ListObjectsV2Result
- type ListPartsResult
- type ListVersionsResult
- type LocationConstraint
- type Object
- type ObjectAttributes
- type ObjectParts
- type ObjectVersion
- type Owner
- type OwnershipControls
- type Part
- type PostResponse
- type PutObjectInput
- type PutObjectOutput
- type PutObjectRetentionInput
- type Redirect
- type RedirectAllRequestsTo
- type RoutingRule
- type RoutingRuleCondition
- type SelectObjectContentPayload
- type SelectObjectContentResult
- type Tag
- type TagSet
- type Tagging
- type Upload
- type WebsiteConfiguration
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AccessControlList ¶
type AccessControlList struct {
Grant []Grant
}
type AccessControlPolicy ¶
type AccessControlPolicy struct {
XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ AccessControlPolicy" json:"-"`
Owner CanonicalUser
AccessControlList AccessControlList
}
type AmzDate ¶ added in v1.0.8
func (AmzDate) ISO8601Parse ¶ added in v1.0.8
Parses ISO8601 date string to time.Time by validating different time layouts
func (AmzDate) MarshalXML ¶ added in v1.0.8
Encodes expiration date if it is non-zero Encodes empty string if it's zero
func (*AmzDate) UnmarshalXML ¶ added in v1.0.8
Parses the date from xml string and validates for predefined date formats
type CanonicalUser ¶
type Checksum ¶ added in v1.0.11
type CommonPrefix ¶
type CommonPrefix struct {
Prefix string
}
CommonPrefix ListObjectsResponse common prefixes (directory abstraction)
type CompleteMultipartUploadRequestBody ¶ added in v1.0.17
type CompleteMultipartUploadRequestBody struct {
XMLName xml.Name `xml:"CompleteMultipartUpload" json:"-"`
Parts []types.CompletedPart `xml:"Part"`
}
type CompleteMultipartUploadResult ¶ added in v1.0.14
type CompleteMultipartUploadResult struct {
XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ CompleteMultipartUploadResult" json:"-"`
Location *string
Bucket *string
Key *string
ETag *string
ChecksumCRC32 *string
ChecksumCRC32C *string
ChecksumSHA1 *string
ChecksumSHA256 *string
ChecksumCRC64NVME *string
ChecksumSHA512 *string
ChecksumMD5 *string
ChecksumXXHASH64 *string
ChecksumXXHASH3 *string
ChecksumXXHASH128 *string
ChecksumType *types.ChecksumType
}
type CopyObjectInput ¶ added in v1.0.12
type CopyObjectInput struct {
Metadata map[string]string
Bucket *string
CopySource *string
Key *string
CacheControl *string
ContentDisposition *string
ContentEncoding *string
ContentLanguage *string
ContentType *string
CopySourceIfMatch *string
CopySourceIfNoneMatch *string
CopySourceSSECustomerAlgorithm *string
CopySourceSSECustomerKey *string
CopySourceSSECustomerKeyMD5 *string
ExpectedBucketOwner *string
ExpectedSourceBucketOwner *string
Expires *string
GrantFullControl *string
GrantRead *string
GrantReadACP *string
GrantWriteACP *string
IfMatch *string
IfNoneMatch *string
SSECustomerAlgorithm *string
SSECustomerKey *string
SSECustomerKeyMD5 *string
SSEKMSEncryptionContext *string
SSEKMSKeyId *string
Tagging *string
WebsiteRedirectLocation *string
CopySourceIfModifiedSince *time.Time
CopySourceIfUnmodifiedSince *time.Time
ObjectLockRetainUntilDate *time.Time
BucketKeyEnabled *bool
ACL types.ObjectCannedACL
ChecksumAlgorithm types.ChecksumAlgorithm
MetadataDirective types.MetadataDirective
ObjectLockLegalHoldStatus types.ObjectLockLegalHoldStatus
ObjectLockMode types.ObjectLockMode
RequestPayer types.RequestPayer
ServerSideEncryption types.ServerSideEncryption
StorageClass types.StorageClass
TaggingDirective types.TaggingDirective
}
type CopyObjectOutput ¶ added in v1.0.14
type CopyObjectOutput struct {
BucketKeyEnabled *bool
CopyObjectResult *CopyObjectResult
CopySourceVersionId *string
Expiration *string
SSECustomerAlgorithm *string
SSECustomerKeyMD5 *string
SSEKMSEncryptionContext *string
SSEKMSKeyId *string
ServerSideEncryption types.ServerSideEncryption
VersionId *string
}
type CopyObjectResult ¶
type CopyObjectResult struct {
XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ CopyObjectResult" json:"-"`
ChecksumCRC32 *string
ChecksumCRC32C *string
ChecksumCRC64NVME *string
ChecksumSHA1 *string
ChecksumSHA256 *string
ChecksumSHA512 *string
ChecksumMD5 *string
ChecksumXXHASH64 *string
ChecksumXXHASH3 *string
ChecksumXXHASH128 *string
ChecksumType types.ChecksumType
ETag *string
LastModified *time.Time
}
func (CopyObjectResult) MarshalXML ¶ added in v1.0.7
func (r CopyObjectResult) MarshalXML(e *xml.Encoder, start xml.StartElement) error
type CopyPartResult ¶ added in v1.0.11
type CopyPartResult struct {
XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ CopyPartResult" json:"-"`
LastModified time.Time
ETag *string
ChecksumCRC32 *string
ChecksumCRC32C *string
ChecksumSHA1 *string
ChecksumSHA256 *string
ChecksumCRC64NVME *string
ChecksumSHA512 *string
ChecksumMD5 *string
ChecksumXXHASH64 *string
ChecksumXXHASH3 *string
ChecksumXXHASH128 *string
// not included in the body
CopySourceVersionId string `xml:"-"`
SSECustomerAlgorithm *string `xml:"-"`
SSECustomerKeyMD5 *string `xml:"-"`
}
func (CopyPartResult) MarshalXML ¶ added in v1.0.14
func (r CopyPartResult) MarshalXML(e *xml.Encoder, start xml.StartElement) error
type CreateBucketConfiguration ¶ added in v1.0.19
type CreateMultipartUploadInput ¶ added in v1.0.12
type CreateMultipartUploadInput struct {
Bucket *string
Key *string
ExpectedBucketOwner *string
CacheControl *string
ContentDisposition *string
ContentEncoding *string
ContentLanguage *string
ContentType *string
Expires *string
SSECustomerAlgorithm *string
SSECustomerKey *string
SSECustomerKeyMD5 *string
SSEKMSEncryptionContext *string
SSEKMSKeyId *string
GrantFullControl *string
GrantRead *string
GrantReadACP *string
GrantWriteACP *string
Tagging *string
WebsiteRedirectLocation *string
BucketKeyEnabled *bool
ObjectLockRetainUntilDate *time.Time
Metadata map[string]string
ACL types.ObjectCannedACL
ChecksumAlgorithm types.ChecksumAlgorithm
ChecksumType types.ChecksumType
ObjectLockLegalHoldStatus types.ObjectLockLegalHoldStatus
ObjectLockMode types.ObjectLockMode
RequestPayer types.RequestPayer
ServerSideEncryption types.ServerSideEncryption
StorageClass types.StorageClass
}
type DeleteMarkerEntry ¶ added in v1.9.0
type DeleteMarkerEntry struct {
IsLatest *bool
Key *string
LastModified *time.Time
Owner *types.Owner
VersionId *string
}
func (DeleteMarkerEntry) MarshalXML ¶ added in v1.9.0
func (d DeleteMarkerEntry) MarshalXML(e *xml.Encoder, start xml.StartElement) error
type DeleteObjects ¶
type DeleteObjects struct {
Objects []types.ObjectIdentifier `xml:"Object"`
Quiet bool `xml:"Quiet,omitempty"`
}
func (*DeleteObjects) UnmarshalXML ¶ added in v1.10.0
func (d *DeleteObjects) UnmarshalXML(dec *xml.Decoder, start xml.StartElement) error
UnmarshalXML decodes LastModifiedTime as an HTTP date, the form the SDKs send. The SDK type alone decodes it as RFC 3339, which S3 rejects.
type DeleteResult ¶
type DeleteResult struct {
Deleted []types.DeletedObject
Error []types.Error
}
type ErrorDocument ¶ added in v1.6.0
type ErrorDocument struct {
Key string `xml:"Key"`
}
ErrorDocument specifies the object served when an error occurs.
type GetBucketVersioningOutput ¶ added in v1.0.8
type GetBucketVersioningOutput struct {
XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ VersioningConfiguration" json:"-"`
MFADelete *types.MFADeleteStatus
Status *types.BucketVersioningStatus
}
type GetObjectAttributesResponse ¶ added in v1.0.9
type GetObjectLegalHoldResult ¶ added in v1.0.13
type GetObjectLegalHoldResult struct {
XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ LegalHold"`
Status types.ObjectLockLegalHoldStatus
}
type GetObjectRetentionResult ¶ added in v1.9.0
type GetObjectRetentionResult struct {
XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ Retention"`
Mode types.ObjectLockRetentionMode
RetainUntilDate AmzDate
}
type Grantee ¶
type Grantee struct {
XMLName xml.Name `xml:"Grantee"`
Xsi string `xml:"xmlns:xsi,attr,omitempty"`
Type string `xml:"xsi:type,attr,omitempty"`
ID string
DisplayName string
}
Set the following to encode correctly:
Grantee: s3response.Grantee{
Xsi: "http://www.w3.org/2001/XMLSchema-instance",
Type: "CanonicalUser",
},
type IndexDocument ¶ added in v1.6.0
type IndexDocument struct {
Suffix string `xml:"Suffix"`
}
IndexDocument specifies the default object served for directory-like requests.
type InitiateMultipartUploadResult ¶ added in v1.0.6
type ListAllMyBucketsEntry ¶
func (ListAllMyBucketsEntry) MarshalXML ¶ added in v1.0.7
func (r ListAllMyBucketsEntry) MarshalXML(e *xml.Encoder, start xml.StartElement) error
type ListAllMyBucketsList ¶
type ListAllMyBucketsList struct {
Bucket []ListAllMyBucketsEntry
}
type ListAllMyBucketsResult ¶
type ListAllMyBucketsResult struct {
XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ ListAllMyBucketsResult" json:"-"`
Owner CanonicalUser
Buckets ListAllMyBucketsList
ContinuationToken string `xml:"ContinuationToken,omitempty"`
Prefix string `xml:"Prefix,omitempty"`
}
type ListBucketsInput ¶ added in v1.0.9
type ListBucketsResult ¶ added in v1.0.8
type ListBucketsResult struct {
Buckets []Bucket
}
Admin api response types
type ListMultipartUploadsResult ¶
type ListMultipartUploadsResult struct {
XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ ListMultipartUploadsResult" json:"-"`
Bucket string
KeyMarker string
UploadIDMarker string `xml:"UploadIdMarker"`
NextKeyMarker string
NextUploadIDMarker string `xml:"NextUploadIdMarker"`
Delimiter string
Prefix string
EncodingType string `xml:"EncodingType,omitempty"`
MaxUploads int
IsTruncated bool
// List of pending uploads.
Uploads []Upload `xml:"Upload"`
// Delimed common prefixes.
CommonPrefixes []CommonPrefix
}
ListMultipartUploadsResponse - s3 api list multipart uploads response.
type ListObjectsResult ¶ added in v1.0.6
type ListObjectsResult struct {
XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ ListBucketResult" json:"-"`
Name *string
Prefix *string
Marker *string
NextMarker *string
MaxKeys *int32
Delimiter *string
IsTruncated *bool
Contents []Object
CommonPrefixes []types.CommonPrefix
EncodingType types.EncodingType `xml:",omitempty"`
}
type ListObjectsV2Result ¶ added in v1.0.6
type ListObjectsV2Result struct {
XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ ListBucketResult" json:"-"`
Name *string
Prefix *string
StartAfter *string
ContinuationToken *string `xml:"ContinuationToken,omitempty"`
NextContinuationToken *string
KeyCount *int32
MaxKeys *int32
Delimiter *string
IsTruncated *bool
Contents []Object
CommonPrefixes []types.CommonPrefix
EncodingType types.EncodingType `xml:",omitempty"`
}
type ListPartsResult ¶
type ListPartsResult struct {
XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ ListPartsResult" json:"-"`
Bucket string
Key string
UploadID string `xml:"UploadId"`
ChecksumAlgorithm types.ChecksumAlgorithm
ChecksumType types.ChecksumType
Initiator Initiator
Owner Owner
// The class of storage used to store the object.
StorageClass types.StorageClass
PartNumberMarker int
NextPartNumberMarker int
MaxParts int
IsTruncated bool
// List of parts.
Parts []Part `xml:"Part"`
}
ListPartsResponse - s3 api list parts response.
type ListVersionsResult ¶ added in v1.0.8
type ListVersionsResult struct {
XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ ListVersionsResult" json:"-"`
CommonPrefixes []types.CommonPrefix
DeleteMarkers []DeleteMarkerEntry `xml:"DeleteMarker"`
Delimiter *string
EncodingType types.EncodingType
IsTruncated *bool
KeyMarker *string
MaxKeys *int32
Name *string
NextKeyMarker *string
NextVersionIdMarker *string
Prefix *string
VersionIdMarker *string
Versions []ObjectVersion `xml:"Version"`
}
type LocationConstraint ¶ added in v1.0.18
type LocationConstraint struct {
XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ LocationConstraint"`
Value *string `xml:",chardata"`
}
LocationConstraint represents the GetBucketLocation response
type Object ¶ added in v1.0.6
type Object struct {
ChecksumAlgorithm []types.ChecksumAlgorithm
ChecksumType types.ChecksumType
ETag *string
Key *string
LastModified *time.Time
Owner *types.Owner
RestoreStatus *types.RestoreStatus
Size *int64
StorageClass types.ObjectStorageClass
}
func (Object) MarshalXML ¶ added in v1.0.6
type ObjectAttributes ¶ added in v1.0.9
type ObjectAttributes string
const ( ObjectAttributesEtag ObjectAttributes = "ETag" ObjectAttributesChecksum ObjectAttributes = "Checksum" ObjectAttributesObjectParts ObjectAttributes = "ObjectParts" ObjectAttributesStorageClass ObjectAttributes = "StorageClass" ObjectAttributesObjectSize ObjectAttributes = "ObjectSize" )
func (ObjectAttributes) IsValid ¶ added in v1.0.9
func (o ObjectAttributes) IsValid() bool
type ObjectParts ¶
type ObjectVersion ¶ added in v1.0.14
type ObjectVersion struct {
ChecksumAlgorithm []types.ChecksumAlgorithm
ChecksumType types.ChecksumType
ETag *string
IsLatest *bool
Key *string
LastModified *time.Time
Owner *types.Owner
RestoreStatus *types.RestoreStatus
Size *int64
StorageClass types.ObjectVersionStorageClass
VersionId *string
}
func (ObjectVersion) MarshalXML ¶ added in v1.0.14
func (o ObjectVersion) MarshalXML(e *xml.Encoder, start xml.StartElement) error
type OwnershipControls ¶ added in v1.0.3
type OwnershipControls struct {
Rules []types.OwnershipControlsRule `xml:"Rule"`
}
type Part ¶
type Part struct {
PartNumber int
LastModified time.Time
ETag string
Size int64
ChecksumCRC32 *string
ChecksumCRC32C *string
ChecksumSHA1 *string
ChecksumSHA256 *string
ChecksumCRC64NVME *string
ChecksumSHA512 *string
ChecksumMD5 *string
ChecksumXXHASH64 *string
ChecksumXXHASH3 *string
ChecksumXXHASH128 *string
}
Part describes part metadata.
func (Part) MarshalXML ¶ added in v1.0.6
type PostResponse ¶ added in v1.4.0
type PutObjectInput ¶ added in v1.0.12
type PutObjectInput struct {
ContentLength *int64
ObjectLockRetainUntilDate *time.Time
Bucket *string
Key *string
ContentType *string
ContentEncoding *string
ContentDisposition *string
ContentLanguage *string
CacheControl *string
Expires *string
Tagging *string
ChecksumCRC32 *string
ChecksumCRC32C *string
ChecksumSHA1 *string
ChecksumSHA256 *string
ChecksumCRC64NVME *string
ChecksumSHA512 *string
ChecksumMD5 *string
ChecksumXXHASH64 *string
ChecksumXXHASH3 *string
ChecksumXXHASH128 *string
ContentMD5 *string
ExpectedBucketOwner *string
GrantFullControl *string
GrantRead *string
GrantReadACP *string
GrantWriteACP *string
IfMatch *string
IfNoneMatch *string
SSECustomerAlgorithm *string
SSECustomerKey *string
SSECustomerKeyMD5 *string
SSEKMSEncryptionContext *string
SSEKMSKeyId *string
WebsiteRedirectLocation *string
ObjectLockMode types.ObjectLockMode
ObjectLockLegalHoldStatus types.ObjectLockLegalHoldStatus
ChecksumAlgorithm types.ChecksumAlgorithm
StorageClass types.StorageClass
Metadata map[string]string
Body io.Reader
}
type PutObjectOutput ¶ added in v1.0.8
type PutObjectOutput struct {
ETag string
VersionID string
ChecksumCRC32 *string
ChecksumCRC32C *string
ChecksumSHA1 *string
ChecksumSHA256 *string
ChecksumCRC64NVME *string
ChecksumSHA512 *string
ChecksumMD5 *string
ChecksumXXHASH64 *string
ChecksumXXHASH3 *string
ChecksumXXHASH128 *string
Size *int64
ChecksumType types.ChecksumType
SSECustomerAlgorithm *string
SSECustomerKeyMD5 *string
}
type PutObjectRetentionInput ¶ added in v1.0.8
type PutObjectRetentionInput struct {
XMLName xml.Name `xml:"Retention"`
Mode types.ObjectLockRetentionMode
RetainUntilDate AmzDate
}
type Redirect ¶ added in v1.6.0
type Redirect struct {
HostName string `xml:"HostName,omitempty"`
HttpRedirectCode string `xml:"HttpRedirectCode,omitempty"`
Protocol string `xml:"Protocol,omitempty"`
ReplaceKeyPrefixWith string `xml:"ReplaceKeyPrefixWith,omitempty"`
ReplaceKeyWith string `xml:"ReplaceKeyWith,omitempty"`
}
Redirect specifies where to redirect matching requests.
type RedirectAllRequestsTo ¶ added in v1.6.0
type RedirectAllRequestsTo struct {
HostName string `xml:"HostName"`
Protocol string `xml:"Protocol,omitempty"`
}
RedirectAllRequestsTo redirects all requests to another host.
type RoutingRule ¶ added in v1.6.0
type RoutingRule struct {
Condition *RoutingRuleCondition `xml:"Condition,omitempty"`
Redirect *Redirect `xml:"Redirect"`
}
RoutingRule specifies a redirect rule with an optional condition.
func (*RoutingRule) Validate ¶ added in v1.6.0
func (r *RoutingRule) Validate() error
Validate checks a single routing rule for validity.
type RoutingRuleCondition ¶ added in v1.6.0
type RoutingRuleCondition struct {
HttpErrorCodeReturnedEquals string `xml:"HttpErrorCodeReturnedEquals,omitempty"`
KeyPrefixEquals string `xml:"KeyPrefixEquals,omitempty"`
}
RoutingRuleCondition specifies when a routing rule applies.
func (*RoutingRuleCondition) Matches ¶ added in v1.6.0
func (c *RoutingRuleCondition) Matches(key string, statusCode int) bool
Matches reports whether all configured condition fields match.
func (*RoutingRuleCondition) Validate ¶ added in v1.6.0
func (c *RoutingRuleCondition) Validate() error
type SelectObjectContentPayload ¶
type SelectObjectContentPayload struct {
Expression *string
ExpressionType types.ExpressionType
RequestProgress *types.RequestProgress
InputSerialization *types.InputSerialization
OutputSerialization *types.OutputSerialization
ScanRange *types.ScanRange
}
type SelectObjectContentResult ¶
type SelectObjectContentResult struct {
Records *types.RecordsEvent
Stats *types.StatsEvent
Progress *types.ProgressEvent
Cont *types.ContinuationEvent
End *types.EndEvent
}
type Tagging ¶
type Tagging struct {
XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ Tagging" json:"-"`
TagSet TagSet `xml:"TagSet"`
}
func (*Tagging) UnmarshalXML ¶ added in v1.4.0
UnmarshalXML accepts Tagging documents both with and without the S3 XML namespace, while xml.Marshal continues to emit the namespace via XMLName.
type Upload ¶
type Upload struct {
Key string
UploadID string `xml:"UploadId"`
Initiator Initiator
Owner Owner
StorageClass types.StorageClass
Initiated time.Time
ChecksumAlgorithm types.ChecksumAlgorithm
ChecksumType types.ChecksumType
}
Upload describes in progress multipart upload
func (Upload) MarshalXML ¶ added in v1.0.6
type WebsiteConfiguration ¶ added in v1.6.0
type WebsiteConfiguration struct {
XMLName xml.Name `xml:"WebsiteConfiguration"`
IndexDocument *IndexDocument `xml:"IndexDocument,omitempty"`
ErrorDocument *ErrorDocument `xml:"ErrorDocument,omitempty"`
RedirectAllRequestsTo *RedirectAllRequestsTo `xml:"RedirectAllRequestsTo,omitempty"`
RoutingRules []RoutingRule `xml:"RoutingRules>RoutingRule,omitempty"`
}
WebsiteConfiguration represents the S3 bucket website configuration.
func ParseWebsiteConfigOutput ¶ added in v1.6.0
func ParseWebsiteConfigOutput(data []byte) (*WebsiteConfiguration, error)
ParseWebsiteConfigOutput parses raw bytes into a WebsiteConfiguration.
func (*WebsiteConfiguration) MatchPostErrorRoutingRule ¶ added in v1.6.0
func (c *WebsiteConfiguration) MatchPostErrorRoutingRule(key string, statusCode int) *RoutingRule
MatchPostErrorRoutingRule returns the first rule that matches after a 4xx object-read error. Prefix-only rules are skipped because they have already been evaluated in the pre-fetch phase.
func (*WebsiteConfiguration) MatchPrefetchRoutingRule ¶ added in v1.6.0
func (c *WebsiteConfiguration) MatchPrefetchRoutingRule(key string) *RoutingRule
MatchPrefetchRoutingRule returns the first rule that can be evaluated before attempting an object read. Only prefix-only conditions participate in this phase.
func (*WebsiteConfiguration) Validate ¶ added in v1.6.0
func (c *WebsiteConfiguration) Validate() error
Validate checks the website configuration for S3-compatible validity.