aws-sdk-s3 1.106.0 → 1.111.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -158,6 +158,7 @@ module Aws::S3
158
158
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
159
159
  Errors = Shapes::ListShape.new(name: 'Errors', flattened: true)
160
160
  Event = Shapes::StringShape.new(name: 'Event')
161
+ EventBridgeConfiguration = Shapes::StructureShape.new(name: 'EventBridgeConfiguration')
161
162
  EventList = Shapes::ListShape.new(name: 'EventList', flattened: true)
162
163
  ExistingObjectReplication = Shapes::StructureShape.new(name: 'ExistingObjectReplication')
163
164
  ExistingObjectReplicationStatus = Shapes::StringShape.new(name: 'ExistingObjectReplicationStatus')
@@ -386,6 +387,8 @@ module Aws::S3
386
387
  ObjectLockToken = Shapes::StringShape.new(name: 'ObjectLockToken')
387
388
  ObjectNotInActiveTierError = Shapes::StructureShape.new(name: 'ObjectNotInActiveTierError')
388
389
  ObjectOwnership = Shapes::StringShape.new(name: 'ObjectOwnership')
390
+ ObjectSizeGreaterThanBytes = Shapes::IntegerShape.new(name: 'ObjectSizeGreaterThanBytes')
391
+ ObjectSizeLessThanBytes = Shapes::IntegerShape.new(name: 'ObjectSizeLessThanBytes')
389
392
  ObjectStorageClass = Shapes::StringShape.new(name: 'ObjectStorageClass')
390
393
  ObjectVersion = Shapes::StructureShape.new(name: 'ObjectVersion')
391
394
  ObjectVersionId = Shapes::StringShape.new(name: 'ObjectVersionId')
@@ -519,6 +522,7 @@ module Aws::S3
519
522
  ServerSideEncryptionRules = Shapes::ListShape.new(name: 'ServerSideEncryptionRules', flattened: true)
520
523
  Setting = Shapes::BooleanShape.new(name: 'Setting')
521
524
  Size = Shapes::IntegerShape.new(name: 'Size')
525
+ SkipValidation = Shapes::BooleanShape.new(name: 'SkipValidation')
522
526
  SourceSelectionCriteria = Shapes::StructureShape.new(name: 'SourceSelectionCriteria')
523
527
  SseKmsEncryptedObjects = Shapes::StructureShape.new(name: 'SseKmsEncryptedObjects')
524
528
  SseKmsEncryptedObjectsStatus = Shapes::StringShape.new(name: 'SseKmsEncryptedObjectsStatus')
@@ -561,6 +565,7 @@ module Aws::S3
561
565
  UploadPartRequest = Shapes::StructureShape.new(name: 'UploadPartRequest')
562
566
  UserMetadata = Shapes::ListShape.new(name: 'UserMetadata')
563
567
  Value = Shapes::StringShape.new(name: 'Value')
568
+ VersionCount = Shapes::IntegerShape.new(name: 'VersionCount')
564
569
  VersionIdMarker = Shapes::StringShape.new(name: 'VersionIdMarker')
565
570
  VersioningConfiguration = Shapes::StructureShape.new(name: 'VersioningConfiguration')
566
571
  WebsiteConfiguration = Shapes::StructureShape.new(name: 'WebsiteConfiguration')
@@ -796,6 +801,7 @@ module Aws::S3
796
801
  CreateBucketRequest.add_member(:grant_write, Shapes::ShapeRef.new(shape: GrantWrite, location: "header", location_name: "x-amz-grant-write"))
797
802
  CreateBucketRequest.add_member(:grant_write_acp, Shapes::ShapeRef.new(shape: GrantWriteACP, location: "header", location_name: "x-amz-grant-write-acp"))
798
803
  CreateBucketRequest.add_member(:object_lock_enabled_for_bucket, Shapes::ShapeRef.new(shape: ObjectLockEnabledForBucket, location: "header", location_name: "x-amz-bucket-object-lock-enabled"))
804
+ CreateBucketRequest.add_member(:object_ownership, Shapes::ShapeRef.new(shape: ObjectOwnership, location: "header", location_name: "x-amz-object-ownership"))
799
805
  CreateBucketRequest.struct_class = Types::CreateBucketRequest
800
806
  CreateBucketRequest[:payload] = :create_bucket_configuration
801
807
  CreateBucketRequest[:payload_member] = CreateBucketRequest.member(:create_bucket_configuration)
@@ -1001,6 +1007,8 @@ module Aws::S3
1001
1007
 
1002
1008
  Errors.member = Shapes::ShapeRef.new(shape: Error)
1003
1009
 
1010
+ EventBridgeConfiguration.struct_class = Types::EventBridgeConfiguration
1011
+
1004
1012
  EventList.member = Shapes::ShapeRef.new(shape: Event)
1005
1013
 
1006
1014
  ExistingObjectReplication.add_member(:status, Shapes::ShapeRef.new(shape: ExistingObjectReplicationStatus, required: true, location_name: "Status"))
@@ -1491,10 +1499,14 @@ module Aws::S3
1491
1499
 
1492
1500
  LifecycleRuleAndOperator.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location_name: "Prefix"))
1493
1501
  LifecycleRuleAndOperator.add_member(:tags, Shapes::ShapeRef.new(shape: TagSet, location_name: "Tag", metadata: {"flattened"=>true}))
1502
+ LifecycleRuleAndOperator.add_member(:object_size_greater_than, Shapes::ShapeRef.new(shape: ObjectSizeGreaterThanBytes, location_name: "ObjectSizeGreaterThan"))
1503
+ LifecycleRuleAndOperator.add_member(:object_size_less_than, Shapes::ShapeRef.new(shape: ObjectSizeLessThanBytes, location_name: "ObjectSizeLessThan"))
1494
1504
  LifecycleRuleAndOperator.struct_class = Types::LifecycleRuleAndOperator
1495
1505
 
1496
1506
  LifecycleRuleFilter.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location_name: "Prefix"))
1497
1507
  LifecycleRuleFilter.add_member(:tag, Shapes::ShapeRef.new(shape: Tag, location_name: "Tag"))
1508
+ LifecycleRuleFilter.add_member(:object_size_greater_than, Shapes::ShapeRef.new(shape: ObjectSizeGreaterThanBytes, location_name: "ObjectSizeGreaterThan"))
1509
+ LifecycleRuleFilter.add_member(:object_size_less_than, Shapes::ShapeRef.new(shape: ObjectSizeLessThanBytes, location_name: "ObjectSizeLessThan"))
1498
1510
  LifecycleRuleFilter.add_member(:and, Shapes::ShapeRef.new(shape: LifecycleRuleAndOperator, location_name: "And"))
1499
1511
  LifecycleRuleFilter.struct_class = Types::LifecycleRuleFilter
1500
1512
 
@@ -1719,10 +1731,12 @@ module Aws::S3
1719
1731
  NoSuchUpload.struct_class = Types::NoSuchUpload
1720
1732
 
1721
1733
  NoncurrentVersionExpiration.add_member(:noncurrent_days, Shapes::ShapeRef.new(shape: Days, location_name: "NoncurrentDays"))
1734
+ NoncurrentVersionExpiration.add_member(:newer_noncurrent_versions, Shapes::ShapeRef.new(shape: VersionCount, location_name: "NewerNoncurrentVersions"))
1722
1735
  NoncurrentVersionExpiration.struct_class = Types::NoncurrentVersionExpiration
1723
1736
 
1724
1737
  NoncurrentVersionTransition.add_member(:noncurrent_days, Shapes::ShapeRef.new(shape: Days, location_name: "NoncurrentDays"))
1725
1738
  NoncurrentVersionTransition.add_member(:storage_class, Shapes::ShapeRef.new(shape: TransitionStorageClass, location_name: "StorageClass"))
1739
+ NoncurrentVersionTransition.add_member(:newer_noncurrent_versions, Shapes::ShapeRef.new(shape: VersionCount, location_name: "NewerNoncurrentVersions"))
1726
1740
  NoncurrentVersionTransition.struct_class = Types::NoncurrentVersionTransition
1727
1741
 
1728
1742
  NoncurrentVersionTransitionList.member = Shapes::ShapeRef.new(shape: NoncurrentVersionTransition)
@@ -1730,6 +1744,7 @@ module Aws::S3
1730
1744
  NotificationConfiguration.add_member(:topic_configurations, Shapes::ShapeRef.new(shape: TopicConfigurationList, location_name: "TopicConfiguration"))
1731
1745
  NotificationConfiguration.add_member(:queue_configurations, Shapes::ShapeRef.new(shape: QueueConfigurationList, location_name: "QueueConfiguration"))
1732
1746
  NotificationConfiguration.add_member(:lambda_function_configurations, Shapes::ShapeRef.new(shape: LambdaFunctionConfigurationList, location_name: "CloudFunctionConfiguration"))
1747
+ NotificationConfiguration.add_member(:event_bridge_configuration, Shapes::ShapeRef.new(shape: EventBridgeConfiguration, location_name: "EventBridgeConfiguration"))
1733
1748
  NotificationConfiguration.struct_class = Types::NotificationConfiguration
1734
1749
 
1735
1750
  NotificationConfigurationDeprecated.add_member(:topic_configuration, Shapes::ShapeRef.new(shape: TopicConfigurationDeprecated, location_name: "TopicConfiguration"))
@@ -1926,6 +1941,7 @@ module Aws::S3
1926
1941
  PutBucketNotificationConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1927
1942
  PutBucketNotificationConfigurationRequest.add_member(:notification_configuration, Shapes::ShapeRef.new(shape: NotificationConfiguration, required: true, location_name: "NotificationConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1928
1943
  PutBucketNotificationConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1944
+ PutBucketNotificationConfigurationRequest.add_member(:skip_destination_validation, Shapes::ShapeRef.new(shape: SkipValidation, location: "header", location_name: "x-amz-skip-destination-validation"))
1929
1945
  PutBucketNotificationConfigurationRequest.struct_class = Types::PutBucketNotificationConfigurationRequest
1930
1946
  PutBucketNotificationConfigurationRequest[:payload] = :notification_configuration
1931
1947
  PutBucketNotificationConfigurationRequest[:payload_member] = PutBucketNotificationConfigurationRequest.member(:notification_configuration)
@@ -552,7 +552,7 @@ module Aws::S3
552
552
  # metadata_directive: "COPY", # accepts COPY, REPLACE
553
553
  # tagging_directive: "COPY", # accepts COPY, REPLACE
554
554
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
555
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
555
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
556
556
  # website_redirect_location: "WebsiteRedirectLocation",
557
557
  # sse_customer_algorithm: "SSECustomerAlgorithm",
558
558
  # sse_customer_key: "SSECustomerKey",
@@ -943,7 +943,7 @@ module Aws::S3
943
943
  # "MetadataKey" => "MetadataValue",
944
944
  # },
945
945
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
946
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
946
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
947
947
  # website_redirect_location: "WebsiteRedirectLocation",
948
948
  # sse_customer_algorithm: "SSECustomerAlgorithm",
949
949
  # sse_customer_key: "SSECustomerKey",
@@ -1112,7 +1112,7 @@ module Aws::S3
1112
1112
  # "MetadataKey" => "MetadataValue",
1113
1113
  # },
1114
1114
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
1115
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
1115
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
1116
1116
  # website_redirect_location: "WebsiteRedirectLocation",
1117
1117
  # sse_customer_algorithm: "SSECustomerAlgorithm",
1118
1118
  # sse_customer_key: "SSECustomerKey",
@@ -1415,7 +1415,7 @@ module Aws::S3
1415
1415
  # value: "MetadataValue",
1416
1416
  # },
1417
1417
  # ],
1418
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
1418
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
1419
1419
  # },
1420
1420
  # },
1421
1421
  # },
@@ -1481,18 +1481,8 @@ module Aws::S3
1481
1481
  # Return the object only if it has not been modified since the specified
1482
1482
  # time, otherwise return a 412 (precondition failed).
1483
1483
  # @option options [String] :range
1484
- # Downloads the specified range bytes of an object. For more information
1485
- # about the HTTP Range header, see
1486
- # [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35][1].
1487
- #
1488
- # <note markdown="1"> Amazon S3 doesn't support retrieving multiple ranges of data per
1489
- # `GET` request.
1490
- #
1491
- # </note>
1492
- #
1493
- #
1494
- #
1495
- # [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35
1484
+ # Because `HeadObject` returns only the metadata for an object, this
1485
+ # parameter has no effect.
1496
1486
  # @option options [String] :version_id
1497
1487
  # VersionId used to reference a specific version of the object.
1498
1488
  # @option options [String] :sse_customer_algorithm
@@ -296,7 +296,7 @@ module Aws::S3
296
296
  # metadata_directive: "COPY", # accepts COPY, REPLACE
297
297
  # tagging_directive: "COPY", # accepts COPY, REPLACE
298
298
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
299
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
299
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
300
300
  # website_redirect_location: "WebsiteRedirectLocation",
301
301
  # sse_customer_algorithm: "SSECustomerAlgorithm",
302
302
  # sse_customer_key: "SSECustomerKey",
@@ -687,7 +687,7 @@ module Aws::S3
687
687
  # "MetadataKey" => "MetadataValue",
688
688
  # },
689
689
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
690
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
690
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
691
691
  # website_redirect_location: "WebsiteRedirectLocation",
692
692
  # sse_customer_algorithm: "SSECustomerAlgorithm",
693
693
  # sse_customer_key: "SSECustomerKey",
@@ -856,7 +856,7 @@ module Aws::S3
856
856
  # "MetadataKey" => "MetadataValue",
857
857
  # },
858
858
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
859
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
859
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
860
860
  # website_redirect_location: "WebsiteRedirectLocation",
861
861
  # sse_customer_algorithm: "SSECustomerAlgorithm",
862
862
  # sse_customer_key: "SSECustomerKey",
@@ -1159,7 +1159,7 @@ module Aws::S3
1159
1159
  # value: "MetadataValue",
1160
1160
  # },
1161
1161
  # ],
1162
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
1162
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
1163
1163
  # },
1164
1164
  # },
1165
1165
  # },
@@ -402,18 +402,8 @@ module Aws::S3
402
402
  # Return the object only if it has not been modified since the specified
403
403
  # time, otherwise return a 412 (precondition failed).
404
404
  # @option options [String] :range
405
- # Downloads the specified range bytes of an object. For more information
406
- # about the HTTP Range header, see
407
- # [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35][1].
408
- #
409
- # <note markdown="1"> Amazon S3 doesn't support retrieving multiple ranges of data per
410
- # `GET` request.
411
- #
412
- # </note>
413
- #
414
- #
415
- #
416
- # [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35
405
+ # Because `HeadObject` returns only the metadata for an object, this
406
+ # parameter has no effect.
417
407
  # @option options [String] :sse_customer_algorithm
418
408
  # Specifies the algorithm to use to when encrypting the object (for
419
409
  # example, AES256).
@@ -48,8 +48,14 @@ Defaults to `legacy` mode which uses the global endpoint.
48
48
  private
49
49
 
50
50
  def self.resolve_iad_regional_endpoint(cfg)
51
+ default_mode_value =
52
+ if cfg.respond_to?(:defaults_mode_config_resolver)
53
+ cfg.defaults_mode_config_resolver.resolve(:s3_us_east_1_regional_endpoint)
54
+ end
55
+
51
56
  mode = ENV['AWS_S3_US_EAST_1_REGIONAL_ENDPOINT'] ||
52
57
  Aws.shared_config.s3_us_east_1_regional_endpoint(profile: cfg.profile) ||
58
+ default_mode_value ||
53
59
  'legacy'
54
60
  mode = mode.downcase
55
61
  unless %w(legacy regional).include?(mode)
@@ -49,6 +49,7 @@ module Aws::S3
49
49
  # grant_write: "GrantWrite",
50
50
  # grant_write_acp: "GrantWriteACP",
51
51
  # object_lock_enabled_for_bucket: false,
52
+ # object_ownership: "BucketOwnerPreferred", # accepts BucketOwnerPreferred, ObjectWriter, BucketOwnerEnforced
52
53
  # })
53
54
  # @param [Hash] options ({})
54
55
  # @option options [String] :acl
@@ -74,6 +75,23 @@ module Aws::S3
74
75
  # @option options [Boolean] :object_lock_enabled_for_bucket
75
76
  # Specifies whether you want S3 Object Lock to be enabled for the new
76
77
  # bucket.
78
+ # @option options [String] :object_ownership
79
+ # The container element for object ownership for a bucket's ownership
80
+ # controls.
81
+ #
82
+ # BucketOwnerPreferred - Objects uploaded to the bucket change ownership
83
+ # to the bucket owner if the objects are uploaded with the
84
+ # `bucket-owner-full-control` canned ACL.
85
+ #
86
+ # ObjectWriter - The uploading account will own the object if the object
87
+ # is uploaded with the `bucket-owner-full-control` canned ACL.
88
+ #
89
+ # BucketOwnerEnforced - Access control lists (ACLs) are disabled and no
90
+ # longer affect permissions. The bucket owner automatically owns and has
91
+ # full control over every object in the bucket. The bucket only accepts
92
+ # PUT requests that don't specify an ACL or bucket owner full control
93
+ # ACLs, such as the `bucket-owner-full-control` canned ACL or an
94
+ # equivalent form of this ACL expressed in the XML format.
77
95
  # @return [Bucket]
78
96
  def create_bucket(options = {})
79
97
  @client.create_bucket(options)