diff --git a/go.mod b/go.mod index 5897b252f..0a5915de1 100644 --- a/go.mod +++ b/go.mod @@ -5,7 +5,7 @@ go 1.24.0 require ( github.com/aws/aws-sdk-go-v2 v1.36.5 github.com/aws/aws-sdk-go-v2/config v1.29.17 - github.com/aws/aws-sdk-go-v2/service/s3 v1.82.0 + github.com/aws/aws-sdk-go-v2/service/s3 v1.83.0 github.com/aws/smithy-go v1.22.4 github.com/eggsampler/acme/v3 v3.6.2-0.20250208073118-0466a0230941 github.com/go-jose/go-jose/v4 v4.1.0 diff --git a/go.sum b/go.sum index 1c063ccf0..4b5fcb66c 100644 --- a/go.sum +++ b/go.sum @@ -33,8 +33,8 @@ github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.17 h1:t0E6FzRE github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.17/go.mod h1:ygpklyoaypuyDvOM5ujWGrYWpAK3h7ugnmKCU/76Ys4= github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.17 h1:qcLWgdhq45sDM9na4cvXax9dyLitn8EYBRl8Ak4XtG4= github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.17/go.mod h1:M+jkjBFZ2J6DJrjMv2+vkBbuht6kxJYtJiwoVgX4p4U= -github.com/aws/aws-sdk-go-v2/service/s3 v1.82.0 h1:JubM8CGDDFaAOmBrd8CRYNr49ZNgEAiLwGwgNMdS0nw= -github.com/aws/aws-sdk-go-v2/service/s3 v1.82.0/go.mod h1:kUklwasNoCn5YpyAqC/97r6dzTA1SRKJfKq16SXeoDU= +github.com/aws/aws-sdk-go-v2/service/s3 v1.83.0 h1:5Y75q0RPQoAbieyOuGLhjV9P3txvYgXv2lg0UwJOfmE= +github.com/aws/aws-sdk-go-v2/service/s3 v1.83.0/go.mod h1:kUklwasNoCn5YpyAqC/97r6dzTA1SRKJfKq16SXeoDU= github.com/aws/aws-sdk-go-v2/service/sso v1.25.5 h1:AIRJ3lfb2w/1/8wOOSqYb9fUKGwQbtysJ2H1MofRUPg= github.com/aws/aws-sdk-go-v2/service/sso v1.25.5/go.mod h1:b7SiVprpU+iGazDUqvRSLf5XmCdn+JtT1on7uNL6Ipc= github.com/aws/aws-sdk-go-v2/service/ssooidc v1.30.3 h1:BpOxT3yhLwSJ77qIY3DoHAQjZsc4HEGfMCE4NGy3uFg= diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/CHANGELOG.md b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/CHANGELOG.md index 7ac24db0f..0d52aba42 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/CHANGELOG.md +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/CHANGELOG.md @@ -1,3 +1,7 @@ +# v1.83.0 (2025-07-02) + +* **Feature**: Added support for directory bucket creation with tags and bucket ARN retrieval in CreateBucket, ListDirectoryBuckets, and HeadBucket operations + # v1.82.0 (2025-06-25) * **Feature**: Adds support for additional server-side encryption mode and storage class values for accessing Amazon FSx data from Amazon S3 using S3 Access Points diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CreateBucket.go b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CreateBucket.go index 45e1c762c..32177cc48 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CreateBucket.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CreateBucket.go @@ -268,6 +268,15 @@ func (in *CreateBucketInput) bindEndpointParams(p *EndpointParameters) { type CreateBucketOutput struct { + // The Amazon Resource Name (ARN) of the S3 bucket. ARNs uniquely identify Amazon + // Web Services resources across all of Amazon Web Services. + // + // This parameter is only supported for S3 directory buckets. For more + // information, see [Using tags with directory buckets]. + // + // [Using tags with directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-tagging.html + BucketArn *string + // A forward slash followed by the name of the bucket. Location *string diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_HeadBucket.go b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_HeadBucket.go index a76f0313e..662e90b9a 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_HeadBucket.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_HeadBucket.go @@ -155,6 +155,15 @@ type HeadBucketOutput struct { // For directory buckets, the value of this field is false . AccessPointAlias *bool + // The Amazon Resource Name (ARN) of the S3 bucket. ARNs uniquely identify Amazon + // Web Services resources across all of Amazon Web Services. + // + // This parameter is only supported for S3 directory buckets. For more + // information, see [Using tags with directory buckets]. + // + // [Using tags with directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-tagging.html + BucketArn *string + // The name of the location where the bucket will be created. // // For directory buckets, the Zone ID of the Availability Zone or the Local Zone diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListMultipartUploads.go b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListMultipartUploads.go index db5bfd78f..169bcf43e 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListMultipartUploads.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListMultipartUploads.go @@ -183,6 +183,9 @@ type ListMultipartUploadsInput struct { // the substring starts at the beginning of the key. The keys that are grouped // under CommonPrefixes result element are not returned elsewhere in the response. // + // CommonPrefixes is filtered out from results if it is not lexicographically + // greater than the key-marker. + // // Directory buckets - For directory buckets, / is the only supported delimiter. Delimiter *string diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjectVersions.go b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjectVersions.go index 61aff05cf..8542eebab 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjectVersions.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjectVersions.go @@ -79,6 +79,9 @@ type ListObjectVersionsInput struct { // delimiter are grouped under a single result element in CommonPrefixes . These // groups are counted as one result against the max-keys limitation. These keys // are not returned elsewhere in the response. + // + // CommonPrefixes is filtered out from results if it is not lexicographically + // greater than the key-marker. Delimiter *string // Encoding type used by Amazon S3 to encode the [object keys] in the response. Responses are diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjects.go b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjects.go index 1edfd68ab..15e946451 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjects.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjects.go @@ -109,6 +109,9 @@ type ListObjectsInput struct { Bucket *string // A delimiter is a character that you use to group keys. + // + // CommonPrefixes is filtered out from results if it is not lexicographically + // greater than the key-marker. Delimiter *string // Encoding type used by Amazon S3 to encode the [object keys] in the response. Responses are diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjectsV2.go b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjectsV2.go index ed1bdf930..af1917005 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjectsV2.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjectsV2.go @@ -149,6 +149,9 @@ type ListObjectsV2Input struct { // A delimiter is a character that you use to group keys. // + // CommonPrefixes is filtered out from results if it is not lexicographically + // greater than the StartAfter value. + // // - Directory buckets - For directory buckets, / is the only supported delimiter. // // - Directory buckets - When you query ListObjectsV2 with a delimiter during diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/deserializers.go b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/deserializers.go index d03a1df03..ab842b0b6 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/deserializers.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/deserializers.go @@ -749,6 +749,11 @@ func awsRestxml_deserializeOpHttpBindingsCreateBucketOutput(v *CreateBucketOutpu return fmt.Errorf("unsupported deserialization for nil %T", v) } + if headerValues := response.Header.Values("x-amz-bucket-arn"); len(headerValues) != 0 { + headerValues[0] = strings.TrimSpace(headerValues[0]) + v.BucketArn = ptr.String(headerValues[0]) + } + if headerValues := response.Header.Values("Location"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) v.Location = ptr.String(headerValues[0]) @@ -7613,6 +7618,11 @@ func awsRestxml_deserializeOpHttpBindingsHeadBucketOutput(v *HeadBucketOutput, r v.AccessPointAlias = ptr.Bool(vv) } + if headerValues := response.Header.Values("x-amz-bucket-arn"); len(headerValues) != 0 { + headerValues[0] = strings.TrimSpace(headerValues[0]) + v.BucketArn = ptr.String(headerValues[0]) + } + if headerValues := response.Header.Values("x-amz-bucket-location-name"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) v.BucketLocationName = ptr.String(headerValues[0]) @@ -14783,6 +14793,19 @@ func awsRestxml_deserializeDocumentBucket(v **types.Bucket, decoder smithyxml.No originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { + case strings.EqualFold("BucketArn", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.BucketArn = ptr.String(xtv) + } + case strings.EqualFold("BucketRegion", t.Name.Local): val, err := decoder.Value() if err != nil { diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/go_module_metadata.go b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/go_module_metadata.go index eedcaec36..4d65b35c5 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/go_module_metadata.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/go_module_metadata.go @@ -3,4 +3,4 @@ package s3 // goModuleVersion is the tagged release for this module -const goModuleVersion = "1.82.0" +const goModuleVersion = "1.83.0" diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/serializers.go b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/serializers.go index 9a8896e25..e4869c990 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/serializers.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/serializers.go @@ -10351,6 +10351,19 @@ func awsRestxml_serializeDocumentCreateBucketConfiguration(v *types.CreateBucket el := value.MemberElement(root) el.String(string(v.LocationConstraint)) } + if v.Tags != nil { + rootAttr := []smithyxml.Attr{} + root := smithyxml.StartElement{ + Name: smithyxml.Name{ + Local: "Tags", + }, + Attr: rootAttr, + } + el := value.MemberElement(root) + if err := awsRestxml_serializeDocumentTagSet(v.Tags, el); err != nil { + return err + } + } return nil } diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/types/types.go b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/types/types.go index 99a523500..702e8877f 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/types/types.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/types/types.go @@ -179,6 +179,15 @@ type AnalyticsS3BucketDestination struct { // In terms of implementation, a Bucket is a resource. type Bucket struct { + // The Amazon Resource Name (ARN) of the S3 bucket. ARNs uniquely identify Amazon + // Web Services resources across all of Amazon Web Services. + // + // This parameter is only supported for S3 directory buckets. For more + // information, see [Using tags with directory buckets]. + // + // [Using tags with directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-tagging.html + BucketArn *string + // BucketRegion indicates the Amazon Web Services region where the bucket is // located. If the request contains at least one valid parameter, it is included in // the response. @@ -615,6 +624,16 @@ type CreateBucketConfiguration struct { // [Regions and Endpoints]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region LocationConstraint BucketLocationConstraint + // An array of tags that you can apply to the bucket that you're creating. Tags + // are key-value pairs of metadata used to categorize and organize your buckets, + // track costs, and control access. + // + // This parameter is only supported for S3 directory buckets. For more + // information, see [Using tags with directory buckets]. + // + // [Using tags with directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-tagging.html + Tags []Tag + noSmithyDocumentSerde } @@ -871,6 +890,8 @@ type Destination struct { // For valid values, see the StorageClass element of the [PUT Bucket replication] action in the Amazon S3 // API Reference. // + // FSX_OPENZFS is not an accepted value when replicating objects. + // // [PUT Bucket replication]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html StorageClass StorageClass diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/validators.go b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/validators.go index e1008c25c..c52c0bf1d 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/validators.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/validators.go @@ -2565,6 +2565,23 @@ func validateCORSRules(v []types.CORSRule) error { } } +func validateCreateBucketConfiguration(v *types.CreateBucketConfiguration) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "CreateBucketConfiguration"} + if v.Tags != nil { + if err := validateTagSet(v.Tags); err != nil { + invalidParams.AddNested("Tags", err.(smithy.InvalidParamsError)) + } + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateDelete(v *types.Delete) error { if v == nil { return nil @@ -4059,6 +4076,11 @@ func validateOpCreateBucketInput(v *CreateBucketInput) error { if v.Bucket == nil { invalidParams.Add(smithy.NewErrParamRequired("Bucket")) } + if v.CreateBucketConfiguration != nil { + if err := validateCreateBucketConfiguration(v.CreateBucketConfiguration); err != nil { + invalidParams.AddNested("CreateBucketConfiguration", err.(smithy.InvalidParamsError)) + } + } if invalidParams.Len() > 0 { return invalidParams } else { diff --git a/vendor/modules.txt b/vendor/modules.txt index dee37af99..a7c271855 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -77,7 +77,7 @@ github.com/aws/aws-sdk-go-v2/service/internal/presigned-url github.com/aws/aws-sdk-go-v2/service/internal/s3shared github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn github.com/aws/aws-sdk-go-v2/service/internal/s3shared/config -# github.com/aws/aws-sdk-go-v2/service/s3 v1.82.0 +# github.com/aws/aws-sdk-go-v2/service/s3 v1.83.0 ## explicit; go 1.22 github.com/aws/aws-sdk-go-v2/service/s3 github.com/aws/aws-sdk-go-v2/service/s3/internal/arn