aws-sdk-s3 1.87.0 → 1.143.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +1106 -0
- data/LICENSE.txt +202 -0
- data/VERSION +1 -0
- data/lib/aws-sdk-s3/bucket.rb +605 -114
- data/lib/aws-sdk-s3/bucket_acl.rb +36 -11
- data/lib/aws-sdk-s3/bucket_cors.rb +40 -15
- data/lib/aws-sdk-s3/bucket_lifecycle.rb +42 -15
- data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +43 -13
- data/lib/aws-sdk-s3/bucket_logging.rb +40 -11
- data/lib/aws-sdk-s3/bucket_notification.rb +30 -12
- data/lib/aws-sdk-s3/bucket_policy.rb +82 -13
- data/lib/aws-sdk-s3/bucket_request_payment.rb +35 -13
- data/lib/aws-sdk-s3/bucket_tagging.rb +38 -13
- data/lib/aws-sdk-s3/bucket_versioning.rb +82 -21
- data/lib/aws-sdk-s3/bucket_website.rb +38 -13
- data/lib/aws-sdk-s3/client.rb +8666 -3425
- data/lib/aws-sdk-s3/client_api.rb +774 -225
- data/lib/aws-sdk-s3/customizations/bucket.rb +31 -50
- data/lib/aws-sdk-s3/customizations/errors.rb +27 -0
- data/lib/aws-sdk-s3/customizations/object.rb +211 -37
- data/lib/aws-sdk-s3/customizations/types/permanent_redirect.rb +26 -0
- data/lib/aws-sdk-s3/customizations.rb +7 -0
- data/lib/aws-sdk-s3/encryption/client.rb +7 -3
- data/lib/aws-sdk-s3/encryption/decrypt_handler.rb +0 -4
- data/lib/aws-sdk-s3/encryption/kms_cipher_provider.rb +13 -9
- data/lib/aws-sdk-s3/encryptionV2/client.rb +7 -3
- data/lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb +1 -4
- data/lib/aws-sdk-s3/encryptionV2/default_cipher_provider.rb +3 -3
- data/lib/aws-sdk-s3/encryptionV2/encrypt_handler.rb +0 -4
- data/lib/aws-sdk-s3/encryptionV2/kms_cipher_provider.rb +10 -6
- data/lib/aws-sdk-s3/endpoint_parameters.rb +178 -0
- data/lib/aws-sdk-s3/endpoint_provider.rb +591 -0
- data/lib/aws-sdk-s3/endpoints.rb +2590 -0
- data/lib/aws-sdk-s3/errors.rb +1 -1
- data/lib/aws-sdk-s3/event_streams.rb +1 -1
- data/lib/aws-sdk-s3/express_credentials.rb +55 -0
- data/lib/aws-sdk-s3/express_credentials_cache.rb +30 -0
- data/lib/aws-sdk-s3/express_credentials_provider.rb +36 -0
- data/lib/aws-sdk-s3/file_downloader.rb +171 -41
- data/lib/aws-sdk-s3/file_uploader.rb +14 -7
- data/lib/aws-sdk-s3/multipart_file_uploader.rb +26 -8
- data/lib/aws-sdk-s3/multipart_stream_uploader.rb +41 -14
- data/lib/aws-sdk-s3/multipart_upload.rb +198 -23
- data/lib/aws-sdk-s3/multipart_upload_part.rb +285 -34
- data/lib/aws-sdk-s3/object.rb +1824 -266
- data/lib/aws-sdk-s3/object_acl.rb +58 -19
- data/lib/aws-sdk-s3/object_copier.rb +7 -5
- data/lib/aws-sdk-s3/object_multipart_copier.rb +41 -19
- data/lib/aws-sdk-s3/object_summary.rb +1579 -299
- data/lib/aws-sdk-s3/object_version.rb +372 -64
- data/lib/aws-sdk-s3/plugins/accelerate.rb +1 -39
- data/lib/aws-sdk-s3/plugins/arn.rb +25 -142
- data/lib/aws-sdk-s3/plugins/bucket_dns.rb +3 -39
- data/lib/aws-sdk-s3/plugins/bucket_name_restrictions.rb +1 -6
- data/lib/aws-sdk-s3/plugins/dualstack.rb +2 -49
- data/lib/aws-sdk-s3/plugins/endpoints.rb +274 -0
- data/lib/aws-sdk-s3/plugins/expect_100_continue.rb +3 -1
- data/lib/aws-sdk-s3/plugins/express_session_auth.rb +91 -0
- data/lib/aws-sdk-s3/plugins/get_bucket_location_fix.rb +1 -1
- data/lib/aws-sdk-s3/plugins/iad_regional_endpoint.rb +8 -31
- data/lib/aws-sdk-s3/plugins/location_constraint.rb +3 -1
- data/lib/aws-sdk-s3/plugins/md5s.rb +6 -3
- data/lib/aws-sdk-s3/plugins/s3_signer.rb +35 -102
- data/lib/aws-sdk-s3/plugins/skip_whole_multipart_get_checksums.rb +31 -0
- data/lib/aws-sdk-s3/plugins/streaming_retry.rb +23 -2
- data/lib/aws-sdk-s3/presigned_post.rb +99 -78
- data/lib/aws-sdk-s3/presigner.rb +43 -51
- data/lib/aws-sdk-s3/resource.rb +102 -6
- data/lib/aws-sdk-s3/types.rb +7404 -5114
- data/lib/aws-sdk-s3/waiters.rb +1 -1
- data/lib/aws-sdk-s3.rb +6 -2
- data/sig/bucket.rbs +212 -0
- data/sig/bucket_acl.rbs +78 -0
- data/sig/bucket_cors.rbs +69 -0
- data/sig/bucket_lifecycle.rbs +88 -0
- data/sig/bucket_lifecycle_configuration.rbs +111 -0
- data/sig/bucket_logging.rbs +76 -0
- data/sig/bucket_notification.rbs +114 -0
- data/sig/bucket_policy.rbs +59 -0
- data/sig/bucket_request_payment.rbs +54 -0
- data/sig/bucket_tagging.rbs +65 -0
- data/sig/bucket_versioning.rbs +77 -0
- data/sig/bucket_website.rbs +93 -0
- data/sig/client.rbs +2360 -0
- data/sig/errors.rbs +34 -0
- data/sig/multipart_upload.rbs +110 -0
- data/sig/multipart_upload_part.rbs +105 -0
- data/sig/object.rbs +436 -0
- data/sig/object_acl.rbs +86 -0
- data/sig/object_summary.rbs +334 -0
- data/sig/object_version.rbs +131 -0
- data/sig/resource.rbs +124 -0
- data/sig/types.rbs +2562 -0
- data/sig/waiters.rbs +83 -0
- metadata +51 -17
- data/lib/aws-sdk-s3/arn/access_point_arn.rb +0 -62
- data/lib/aws-sdk-s3/arn/outpost_access_point_arn.rb +0 -71
@@ -3,7 +3,7 @@
|
|
3
3
|
# WARNING ABOUT GENERATED CODE
|
4
4
|
#
|
5
5
|
# This file is generated. See the contributing guide for more information:
|
6
|
-
# https://github.com/aws/aws-sdk-ruby/blob/
|
6
|
+
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
|
7
7
|
#
|
8
8
|
# WARNING ABOUT GENERATED CODE
|
9
9
|
|
@@ -69,6 +69,11 @@ module Aws::S3
|
|
69
69
|
end
|
70
70
|
|
71
71
|
# The class of storage used to store the object.
|
72
|
+
#
|
73
|
+
# <note markdown="1"> **Directory buckets** - Only the S3 Express One Zone storage class is
|
74
|
+
# supported by directory buckets to store objects.
|
75
|
+
#
|
76
|
+
# </note>
|
72
77
|
# @return [String]
|
73
78
|
def storage_class
|
74
79
|
data[:storage_class]
|
@@ -76,6 +81,11 @@ module Aws::S3
|
|
76
81
|
|
77
82
|
# Specifies the owner of the object that is part of the multipart
|
78
83
|
# upload.
|
84
|
+
#
|
85
|
+
# <note markdown="1"> **Directory buckets** - The bucket owner is returned as the object
|
86
|
+
# owner for all the objects.
|
87
|
+
#
|
88
|
+
# </note>
|
79
89
|
# @return [Types::Owner]
|
80
90
|
def owner
|
81
91
|
data[:owner]
|
@@ -87,6 +97,12 @@ module Aws::S3
|
|
87
97
|
data[:initiator]
|
88
98
|
end
|
89
99
|
|
100
|
+
# The algorithm that was used to create a checksum of the object.
|
101
|
+
# @return [String]
|
102
|
+
def checksum_algorithm
|
103
|
+
data[:checksum_algorithm]
|
104
|
+
end
|
105
|
+
|
90
106
|
# @!endgroup
|
91
107
|
|
92
108
|
# @return [Client]
|
@@ -211,7 +227,9 @@ module Aws::S3
|
|
211
227
|
:retry
|
212
228
|
end
|
213
229
|
end
|
214
|
-
Aws::
|
230
|
+
Aws::Plugins::UserAgent.feature('resource') do
|
231
|
+
Aws::Waiters::Waiter.new(options).wait({})
|
232
|
+
end
|
215
233
|
end
|
216
234
|
|
217
235
|
# @!group Actions
|
@@ -226,17 +244,23 @@ module Aws::S3
|
|
226
244
|
# @option options [String] :request_payer
|
227
245
|
# Confirms that the requester knows that they will be charged for the
|
228
246
|
# request. Bucket owners need not specify this parameter in their
|
229
|
-
# requests.
|
230
|
-
#
|
231
|
-
#
|
247
|
+
# requests. If either the source or destination S3 bucket has Requester
|
248
|
+
# Pays enabled, the requester will pay for corresponding charges to copy
|
249
|
+
# the object. For information about downloading objects from Requester
|
250
|
+
# Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
|
251
|
+
# in the *Amazon S3 User Guide*.
|
252
|
+
#
|
253
|
+
# <note markdown="1"> This functionality is not supported for directory buckets.
|
254
|
+
#
|
255
|
+
# </note>
|
232
256
|
#
|
233
257
|
#
|
234
258
|
#
|
235
259
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
236
260
|
# @option options [String] :expected_bucket_owner
|
237
|
-
# The account
|
238
|
-
#
|
239
|
-
#
|
261
|
+
# The account ID of the expected bucket owner. If the account ID that
|
262
|
+
# you provide does not match the actual owner of the bucket, the request
|
263
|
+
# fails with the HTTP status code `403 Forbidden` (access denied).
|
240
264
|
# @return [Types::AbortMultipartUploadOutput]
|
241
265
|
def abort(options = {})
|
242
266
|
options = options.merge(
|
@@ -244,7 +268,9 @@ module Aws::S3
|
|
244
268
|
key: @object_key,
|
245
269
|
upload_id: @id
|
246
270
|
)
|
247
|
-
resp =
|
271
|
+
resp = Aws::Plugins::UserAgent.feature('resource') do
|
272
|
+
@client.abort_multipart_upload(options)
|
273
|
+
end
|
248
274
|
resp.data
|
249
275
|
end
|
250
276
|
|
@@ -255,30 +281,127 @@ module Aws::S3
|
|
255
281
|
# parts: [
|
256
282
|
# {
|
257
283
|
# etag: "ETag",
|
284
|
+
# checksum_crc32: "ChecksumCRC32",
|
285
|
+
# checksum_crc32c: "ChecksumCRC32C",
|
286
|
+
# checksum_sha1: "ChecksumSHA1",
|
287
|
+
# checksum_sha256: "ChecksumSHA256",
|
258
288
|
# part_number: 1,
|
259
289
|
# },
|
260
290
|
# ],
|
261
291
|
# },
|
292
|
+
# checksum_crc32: "ChecksumCRC32",
|
293
|
+
# checksum_crc32c: "ChecksumCRC32C",
|
294
|
+
# checksum_sha1: "ChecksumSHA1",
|
295
|
+
# checksum_sha256: "ChecksumSHA256",
|
262
296
|
# request_payer: "requester", # accepts requester
|
263
297
|
# expected_bucket_owner: "AccountId",
|
298
|
+
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
299
|
+
# sse_customer_key: "SSECustomerKey",
|
300
|
+
# sse_customer_key_md5: "SSECustomerKeyMD5",
|
264
301
|
# })
|
265
302
|
# @param [Hash] options ({})
|
266
303
|
# @option options [Types::CompletedMultipartUpload] :multipart_upload
|
267
304
|
# The container for the multipart upload request information.
|
305
|
+
# @option options [String] :checksum_crc32
|
306
|
+
# This header can be used as a data integrity check to verify that the
|
307
|
+
# data received is the same data that was originally sent. This header
|
308
|
+
# specifies the base64-encoded, 32-bit CRC32 checksum of the object. For
|
309
|
+
# more information, see [Checking object integrity][1] in the *Amazon S3
|
310
|
+
# User Guide*.
|
311
|
+
#
|
312
|
+
#
|
313
|
+
#
|
314
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
315
|
+
# @option options [String] :checksum_crc32c
|
316
|
+
# This header can be used as a data integrity check to verify that the
|
317
|
+
# data received is the same data that was originally sent. This header
|
318
|
+
# specifies the base64-encoded, 32-bit CRC32C checksum of the object.
|
319
|
+
# For more information, see [Checking object integrity][1] in the
|
320
|
+
# *Amazon S3 User Guide*.
|
321
|
+
#
|
322
|
+
#
|
323
|
+
#
|
324
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
325
|
+
# @option options [String] :checksum_sha1
|
326
|
+
# This header can be used as a data integrity check to verify that the
|
327
|
+
# data received is the same data that was originally sent. This header
|
328
|
+
# specifies the base64-encoded, 160-bit SHA-1 digest of the object. For
|
329
|
+
# more information, see [Checking object integrity][1] in the *Amazon S3
|
330
|
+
# User Guide*.
|
331
|
+
#
|
332
|
+
#
|
333
|
+
#
|
334
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
335
|
+
# @option options [String] :checksum_sha256
|
336
|
+
# This header can be used as a data integrity check to verify that the
|
337
|
+
# data received is the same data that was originally sent. This header
|
338
|
+
# specifies the base64-encoded, 256-bit SHA-256 digest of the object.
|
339
|
+
# For more information, see [Checking object integrity][1] in the
|
340
|
+
# *Amazon S3 User Guide*.
|
341
|
+
#
|
342
|
+
#
|
343
|
+
#
|
344
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
268
345
|
# @option options [String] :request_payer
|
269
346
|
# Confirms that the requester knows that they will be charged for the
|
270
347
|
# request. Bucket owners need not specify this parameter in their
|
271
|
-
# requests.
|
272
|
-
#
|
273
|
-
#
|
348
|
+
# requests. If either the source or destination S3 bucket has Requester
|
349
|
+
# Pays enabled, the requester will pay for corresponding charges to copy
|
350
|
+
# the object. For information about downloading objects from Requester
|
351
|
+
# Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
|
352
|
+
# in the *Amazon S3 User Guide*.
|
353
|
+
#
|
354
|
+
# <note markdown="1"> This functionality is not supported for directory buckets.
|
355
|
+
#
|
356
|
+
# </note>
|
274
357
|
#
|
275
358
|
#
|
276
359
|
#
|
277
360
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
278
361
|
# @option options [String] :expected_bucket_owner
|
279
|
-
# The account
|
280
|
-
#
|
281
|
-
#
|
362
|
+
# The account ID of the expected bucket owner. If the account ID that
|
363
|
+
# you provide does not match the actual owner of the bucket, the request
|
364
|
+
# fails with the HTTP status code `403 Forbidden` (access denied).
|
365
|
+
# @option options [String] :sse_customer_algorithm
|
366
|
+
# The server-side encryption (SSE) algorithm used to encrypt the object.
|
367
|
+
# This parameter is required only when the object was created using a
|
368
|
+
# checksum algorithm or if your bucket policy requires the use of SSE-C.
|
369
|
+
# For more information, see [Protecting data using SSE-C keys][1] in the
|
370
|
+
# *Amazon S3 User Guide*.
|
371
|
+
#
|
372
|
+
# <note markdown="1"> This functionality is not supported for directory buckets.
|
373
|
+
#
|
374
|
+
# </note>
|
375
|
+
#
|
376
|
+
#
|
377
|
+
#
|
378
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html#ssec-require-condition-key
|
379
|
+
# @option options [String] :sse_customer_key
|
380
|
+
# The server-side encryption (SSE) customer managed key. This parameter
|
381
|
+
# is needed only when the object was created using a checksum algorithm.
|
382
|
+
# For more information, see [Protecting data using SSE-C keys][1] in the
|
383
|
+
# *Amazon S3 User Guide*.
|
384
|
+
#
|
385
|
+
# <note markdown="1"> This functionality is not supported for directory buckets.
|
386
|
+
#
|
387
|
+
# </note>
|
388
|
+
#
|
389
|
+
#
|
390
|
+
#
|
391
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
|
392
|
+
# @option options [String] :sse_customer_key_md5
|
393
|
+
# The MD5 server-side encryption (SSE) customer managed key. This
|
394
|
+
# parameter is needed only when the object was created using a checksum
|
395
|
+
# algorithm. For more information, see [Protecting data using SSE-C
|
396
|
+
# keys][1] in the *Amazon S3 User Guide*.
|
397
|
+
#
|
398
|
+
# <note markdown="1"> This functionality is not supported for directory buckets.
|
399
|
+
#
|
400
|
+
# </note>
|
401
|
+
#
|
402
|
+
#
|
403
|
+
#
|
404
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
|
282
405
|
# @return [Object]
|
283
406
|
def complete(options = {})
|
284
407
|
options = options.merge(
|
@@ -286,7 +409,9 @@ module Aws::S3
|
|
286
409
|
key: @object_key,
|
287
410
|
upload_id: @id
|
288
411
|
)
|
289
|
-
|
412
|
+
Aws::Plugins::UserAgent.feature('resource') do
|
413
|
+
@client.complete_multipart_upload(options)
|
414
|
+
end
|
290
415
|
Object.new(
|
291
416
|
bucket_name: @bucket_name,
|
292
417
|
key: @object_key,
|
@@ -322,22 +447,70 @@ module Aws::S3
|
|
322
447
|
# parts = multipart_upload.parts({
|
323
448
|
# request_payer: "requester", # accepts requester
|
324
449
|
# expected_bucket_owner: "AccountId",
|
450
|
+
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
451
|
+
# sse_customer_key: "SSECustomerKey",
|
452
|
+
# sse_customer_key_md5: "SSECustomerKeyMD5",
|
325
453
|
# })
|
326
454
|
# @param [Hash] options ({})
|
327
455
|
# @option options [String] :request_payer
|
328
456
|
# Confirms that the requester knows that they will be charged for the
|
329
457
|
# request. Bucket owners need not specify this parameter in their
|
330
|
-
# requests.
|
331
|
-
#
|
332
|
-
#
|
458
|
+
# requests. If either the source or destination S3 bucket has Requester
|
459
|
+
# Pays enabled, the requester will pay for corresponding charges to copy
|
460
|
+
# the object. For information about downloading objects from Requester
|
461
|
+
# Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
|
462
|
+
# in the *Amazon S3 User Guide*.
|
463
|
+
#
|
464
|
+
# <note markdown="1"> This functionality is not supported for directory buckets.
|
465
|
+
#
|
466
|
+
# </note>
|
333
467
|
#
|
334
468
|
#
|
335
469
|
#
|
336
470
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
337
471
|
# @option options [String] :expected_bucket_owner
|
338
|
-
# The account
|
339
|
-
#
|
340
|
-
#
|
472
|
+
# The account ID of the expected bucket owner. If the account ID that
|
473
|
+
# you provide does not match the actual owner of the bucket, the request
|
474
|
+
# fails with the HTTP status code `403 Forbidden` (access denied).
|
475
|
+
# @option options [String] :sse_customer_algorithm
|
476
|
+
# The server-side encryption (SSE) algorithm used to encrypt the object.
|
477
|
+
# This parameter is needed only when the object was created using a
|
478
|
+
# checksum algorithm. For more information, see [Protecting data using
|
479
|
+
# SSE-C keys][1] in the *Amazon S3 User Guide*.
|
480
|
+
#
|
481
|
+
# <note markdown="1"> This functionality is not supported for directory buckets.
|
482
|
+
#
|
483
|
+
# </note>
|
484
|
+
#
|
485
|
+
#
|
486
|
+
#
|
487
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
|
488
|
+
# @option options [String] :sse_customer_key
|
489
|
+
# The server-side encryption (SSE) customer managed key. This parameter
|
490
|
+
# is needed only when the object was created using a checksum algorithm.
|
491
|
+
# For more information, see [Protecting data using SSE-C keys][1] in the
|
492
|
+
# *Amazon S3 User Guide*.
|
493
|
+
#
|
494
|
+
# <note markdown="1"> This functionality is not supported for directory buckets.
|
495
|
+
#
|
496
|
+
# </note>
|
497
|
+
#
|
498
|
+
#
|
499
|
+
#
|
500
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
|
501
|
+
# @option options [String] :sse_customer_key_md5
|
502
|
+
# The MD5 server-side encryption (SSE) customer managed key. This
|
503
|
+
# parameter is needed only when the object was created using a checksum
|
504
|
+
# algorithm. For more information, see [Protecting data using SSE-C
|
505
|
+
# keys][1] in the *Amazon S3 User Guide*.
|
506
|
+
#
|
507
|
+
# <note markdown="1"> This functionality is not supported for directory buckets.
|
508
|
+
#
|
509
|
+
# </note>
|
510
|
+
#
|
511
|
+
#
|
512
|
+
#
|
513
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
|
341
514
|
# @return [MultipartUploadPart::Collection]
|
342
515
|
def parts(options = {})
|
343
516
|
batches = Enumerator.new do |y|
|
@@ -346,7 +519,9 @@ module Aws::S3
|
|
346
519
|
key: @object_key,
|
347
520
|
upload_id: @id
|
348
521
|
)
|
349
|
-
resp =
|
522
|
+
resp = Aws::Plugins::UserAgent.feature('resource') do
|
523
|
+
@client.list_parts(options)
|
524
|
+
end
|
350
525
|
resp.each_page do |page|
|
351
526
|
batch = []
|
352
527
|
page.data.parts.each do |p|
|