Rahul Ranjan
7d066cea2f
Add versionid header in complete multipart if enabled ( #3643 )
...
* Add versionid header in complete multipart if enabled
- addresses https://github.com/localstack/localstack/issues/3514
* remove unnecessary code
* fix lint
* fix lint test
* add test case for boto3
2021-02-02 09:51:17 +00:00
Macwan Nevil
02ac5ca111
added sse support for s3 ( #3592 )
...
* added sse support for s3
* lint fixed for py37
2021-01-18 18:17:13 +00:00
Rahul Ranjan
628c026a07
Sort s3 object versions by last_modified_on in descending order ( #3588 )
...
* Sort s3 object versions by last_modified_on in descending order
- addresses https://github.com/localstack/localstack/issues/3433
* fix for python 2
* fix lint
2021-01-15 18:28:28 +00:00
Bert Blommers
d1696a37e5
#2710 - S3 - Raise specific error when GetObject is called with unknown VersionId ( #3532 )
2021-01-13 16:06:09 +00:00
Bert Blommers
df8bd43a45
#2965 - S3 - GetObject - Treat empty Range-argument as a regular GET ( #3531 )
2021-01-13 10:00:18 +00:00
irahulranjan
dffc0e449c
Fix: ListObjectsV2 behaving differently than AWS API ( #3545 )
...
* fix : localstack issue https://github.com/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22+language%3Ago
* add assertion for error message as well
2020-12-13 13:38:25 +00:00
Bert Blommers
cc27f1ef0c
S3 - Add more detail to error responses
2020-10-28 14:22:18 +00:00
Steve Pulec
d54eafa420
Merge pull request #3326 from bblommers/bugfix/3306
...
Fix S3 creation date for AWS Java SDK
2020-09-22 16:44:56 -05:00
usmangani1
0b9903a3df
Fix:s3 List Object response:delimiter ( #3254 )
...
* Fix:s3 List Object delimiter in response
* fixed tests
* fixed failed tests
Co-authored-by: usmankb <usman@krazybee.com>
2020-09-21 16:21:18 +01:00
ruthbovell
1022aa0968
Issue 3224 s3 copy glacier object ( #3318 )
...
* 3224 Enhancement - S3 Copy restored glacier objects
- adds setter for expiry date
- copy sets expiry date to none when source is glacier object
- throws error for copying glacier object only if not restored/still restoring
* 3224 Enhancement - S3 Copy restored glacier objects
- throws error for copying deep archive object only if not restored/still restoring
2020-09-21 07:37:50 +01:00
Bert Blommers
8c94893869
#3306 - Fix S3 creation date for AWS Java SDK
2020-09-19 20:12:11 +01:00
Leo Sutic
94543f6e48
Include response headers when deleting objects. ( #3313 )
...
* Return delete meta.
* Add tests.
* Lint fixes.
Co-authored-by: Leo Sutic <leo.sutic@matterport.com>
2020-09-15 13:29:09 +01:00
Arcadiy Ivanov
c2d1ce2c14
Add If-Match, If-None-Match and If-Unmodified-Since to S3 GET/HEAD ( #3021 )
...
fixes #2705
2020-09-11 10:17:39 +01:00
usmangani1
d2e16ecc2e
Fix:s3 Presign Post with object acl ( #3246 )
...
* Fix:s3 Presign Post with object acl
* Added import in tests
Co-authored-by: usmankb <usman@krazybee.com>
2020-09-02 18:35:53 +01:00
usmangani1
00a5641cb9
Fix:s3 Presign Put Request with File upload ( #3235 )
...
* Fix:s3 Presign Put Request with File upload
* Added imports in test
Co-authored-by: usmankb <usman@krazybee.com>
2020-09-02 07:10:56 +01:00
Bert Blommers
8b63421321
S3 - Only add metadata once; use binary file content
2020-07-12 18:29:10 +01:00
Bert Blommers
b33c5dff06
#2104 - S3 - Persist metadata for Presigned URL
2020-07-12 13:33:46 +01:00
Bert Blommers
9ed7ba58df
S3 - Implement delete_object_tagging
2020-06-20 12:15:29 +01:00
Dawn James
8ce12027dd
Return correct error when creating a bucket with empty CreateBucketConfiguration ( #3079 )
...
* Several updates to the contributor documentation with extra information.
* Fix failing test by providing a region.
* Create test for issue 2210.
* Check if CreateBucketConfiguration is supplied and empty; raise MalformedXML error if so.
2020-06-19 11:44:43 +01:00
Bert Blommers
20784a2d67
Improve implementation coverage
2020-06-06 13:15:50 +01:00
jweite
4d3e3c8c5e
implemented s3 default encryption methods ( #3022 )
...
* implemented s3 default encryption methods
* PR adjustments: moved logic for retrieving bucket's encrypted status to the backend.
Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
2020-05-27 17:21:03 +01:00
Bert Blommers
49b00942c3
S3 DeleteObjects - Allow multiple querystring formats
2020-05-01 13:50:11 +01:00
Bert Blommers
b5a894dd89
Merge pull request #2919 from antoinewdg-mt/fix-s3-delete-objects-with-versioning
...
Handle VersionId in S3:delete_objects
2020-04-27 15:38:06 +01:00
Antoine Wendlinger
41abd4344b
Use xmltodict for parsing
2020-04-27 11:42:27 +02:00
Steve Pulec
efbb9c54a5
Merge pull request #2909 from oliparcol/bug/2759
...
S3 - Allow keys to start with leading slashes
2020-04-25 18:46:25 -05:00
Steve Pulec
b24b7cb858
Merge branch 'master' into feature/extend_generic_tagger_to_s3
2020-04-25 18:40:50 -05:00
Olivier Parent Colombel
d852f7dd06
Fixing lint errors.
2020-04-25 17:49:50 +02:00
Olivier Parent Colombel
637e0188a2
Allow S3 keys to start with leading slashes.
2020-04-25 17:49:50 +02:00
Antoine Wendlinger
9ed6e52d0a
Handle VersionId in S3:delete_objects
...
VersionId is not read in delete_objects requests, and the behavior
differs from its singular counterpart delete_object.
This fixes the issue.
2020-04-23 19:01:58 +02:00
Daniel Wallace
50a147592d
Make all CallbackResponse requests into a Werkzeug Request
...
The "request" object in CallbackResponse is the PreparedRequest send by
whatever client is used to contact the mocked moto service. This can end
up with unparsed bodies, as we added for processing presigned post
requests in #2155 . This will make sure that all of the requests comming
in from mocked functions also get processed by werkzeug as if it was
running a live server.
2020-04-22 09:08:30 -05:00
Daniel Wallace
80b27a6b93
blacken
2020-04-21 21:43:32 -05:00
Daniel Wallace
4b0ba73204
use werkzeug
...
hooray, thanks pallets discord!
2020-04-21 20:13:53 -05:00
Daniel Wallace
49b056563a
process multipart form
2020-04-21 19:52:10 -05:00
Daniel Wallace
b3f6e5ab2f
add test
2020-04-21 18:07:50 -05:00
Daniel Wallace
156ba56fdc
set default status for s3 posts
...
and add support for success_action_redirect.
2020-04-21 18:06:43 -05:00
David Holroyd
a845de1142
PutObject and DeleteObject should produce no XML
...
S3 itself produces an empty body, with any response metadata in HTTP
headers only.
2020-04-06 21:01:43 +01:00
David Holroyd
16db824d8a
Fix response XML structure
2020-04-06 00:19:19 +01:00
Bert Blommers
8dbfd43c5c
Use TaggingService for S3 - Cleanup
2020-04-01 15:35:25 +01:00
Bert Blommers
f7ad4cbc09
Use TaggingService for S3 Objects
2020-03-31 12:04:04 +01:00
Bert Blommers
6dd6686afc
Use TaggingService for S3 Buckets
2020-03-31 11:10:38 +01:00
Mike Grima
0c191ac33b
Raise errors on tagging buckets with aws:*
...
Cannot tag S3 buckets with reserved tag key space `aws:`
2020-03-30 17:27:06 -07:00
Steve Pulec
6b6a059350
Merge pull request #2132 from Projectplace/tagging-directive
...
Support x-amz-tagging-directive in s3 copy_object
2020-02-17 20:00:30 -06:00
Steve Pulec
a1ffb47ae4
Merge pull request #2751 from mikegrima/s3control
...
Implemented S3 Account-level public access block.
2020-02-17 19:53:15 -06:00
Mike Grima
11b7be0e85
Implemented S3 Account-level public access block.
...
- Also added AWS Config listing and fetching support
- Also fixed Lambda test breakage
2020-02-17 15:41:27 -08:00
Daniel Wallace
01f3b60c09
Allow ports in k8s service urls for s3 mock
...
If there is a port in the host for the request, then this if statement
is not tripped.
2020-02-17 17:38:53 -06:00
Bert Blommers
f74f08581a
S3 - Add IllegalLocationConstraint validation when creating buckets
2020-02-02 10:36:51 +00:00
Steve Pulec
19bf8bf762
Change S3 S3_ALL_BUCKETS response to return bucket creation_date in iso format.
2020-01-22 20:43:45 -06:00
Steve Pulec
d73a548bb0
Remove duplicate StorageClass in S3_MULTIPART_LIST_RESPONSE.
2020-01-22 19:45:27 -06:00
Waldemar Hummer
bcc4a74869
avoid rendering "None" as S3 Prefix value
2019-12-21 12:08:13 +01:00
Fabio Dias
743dd46399
black linting
2019-12-16 21:25:20 -05:00
Fabio Dias
fd9ac4b9a5
ACCOUNT_ID moved to moto.core, MOTO_ACCOUNT_ID env var override
2019-12-16 21:05:29 -05:00
Fabio Dias
fb9ebe5a47
linting fixes
2019-12-16 19:56:11 -05:00
Fabio Dias
b83a750630
Added references to moto.iam.models.ACCOUNT_ID instead of hardcoded id
2019-12-16 19:56:11 -05:00
Mike Grima
84ccdbd1cd
Implemented S3 Public Access Block
2019-12-12 17:45:31 -08:00
Niklas Janlert
b51d5ad65f
Support x-amz-tagging-directive in s3 copy_object
2019-11-23 00:38:26 +01:00
Asher Foa
96e5b1993d
Run black on moto & test directories.
2019-10-31 10:36:05 -07:00
Mike Grima
1cde5d37eb
Merge pull request #2483 from thincal/fix/list-objects-with-truncation
...
s3 list_object: return the NextMarker info if it's truncated
2019-10-22 09:57:15 -07:00
LS
d3ed7ee240
s3 list_object: return the NextMarker info if it's truncated
2019-10-21 09:40:05 +08:00
Harrison Termotto
df2de373b2
Add tagging to versioned s3 objects.
2019-10-17 00:16:16 -04:00
Mike Grima
ab0853cddc
Made fixes to the S3 Lifecycle mocks to be more consistent with the API.
2019-10-05 12:29:09 -07:00
Chih-Hsuan Yen
6c0a2dc374
Fix copying S3 objects with question marks in keys
...
PR #2062 fixes copy for unicode keys. However, the change breaks keys
with question marks. Here is an alternative fix that works for both
emojis and question marks.
I notice this when running the test suite of aiobotocore. One of the
tests [1] is broken with moto >= 1.3.8.
[1] https://github.com/aio-libs/aiobotocore/blob/0.10.3/tests/test_basic_s3.py#L314-L329
2019-09-29 23:55:52 +08:00
Jesse Vogt
3b4cd1c27b
switch from calling clean in loop to undoing clean in delete_keys
2019-09-24 17:07:58 -05:00
Gapex
1c36e1e2c5
update unit test and fix StartAfter
2019-09-17 10:42:10 +08:00
Gapex
4946f8b853
'lint'
2019-09-16 15:31:57 +08:00
Gapex
59f87e30ba
split truncated keys by type
2019-09-16 15:20:24 +08:00
Gapex
47635dc82e
update key of sort
2019-09-16 13:33:53 +08:00
Gapex
a36b84b3aa
fix MaxKeys in list_objects_v2
2019-09-16 11:35:36 +08:00
Gapex
d6ef01b9fd
lint
2019-09-12 18:40:07 +08:00
Gapex
eea67543d1
MaxKeys limits the sum of folders and keys
2019-09-12 17:54:02 +08:00
Vury Leo
71241f1c3f
make linter happy
2019-08-20 15:17:17 +08:00
Vury Leo
1249ba8d3b
fix KeyCount in s3.list_objects_v2
2019-08-20 15:01:37 +08:00
Berislav Kovacki
b7884ef903
Add S3 support for INTELLIGENT_TIERING, GLACIER and DEEP_ARCHIVE storage
...
* Add INTELLIGENT_TIERING, GLACIER and DEEP_ARCHIVE as valid storage
classes for objects
* Add ObjectNotInActiveTierError error on PUT object copy for GLACIER
and DEEP_ARCHIVE storage class objects
2019-08-05 17:34:39 +02:00
Steve Pulec
69d86cbd54
Merge pull request #2300 from acsbendi/master
...
Basic IAM authentication, authorization
2019-07-28 17:22:52 -05:00
acsbendi
f3f47d44ac
Fixed error in python 2 and did some refactoring.
2019-07-26 21:05:04 +02:00
acsbendi
290f8f9fd5
Fixed host header not included in S3 requests sometimes.
2019-07-26 19:50:24 +02:00
acsbendi
45a380a807
Fixed host not present in headers for S3 requests.
2019-07-24 21:29:00 +02:00
Steve Pulec
5abe56fd2b
Merge pull request #2250 from szczeles/s3_delete_objects_boto3
...
Raising MalformedXML exception when using boto3 client and s3.delete_objects()
2019-07-23 22:41:45 -05:00
acsbendi
95799b99bc
Fixed incorrect authentication error handling in S3.
2019-07-16 16:27:50 +02:00
Ruslan Kuprieiev
2c2dff22bc
moto: s3: support partNumber for head_object
...
To support it, we need to keep multipart info in the key itself when
completing multipart upload.
Fixes #2154
Signed-off-by: Ruslan Kuprieiev <ruslan@iterative.ai>
2019-07-15 20:47:29 +03:00
acsbendi
419fcf2ee9
Merge branch 'master' of https://github.com/spulec/moto into spulec-master
2019-07-13 13:43:19 +02:00
Mariusz Strzelecki
f32db6e64a
Raising MalformedXML exception when using boto3 client and s3.delete_objects()
2019-07-11 09:53:23 +02:00
acsbendi
86758182a7
Removed print.
2019-07-04 16:42:11 +02:00
acsbendi
5dbec8aee5
Implemented checking if S3 action is permitted.
2019-07-04 16:38:53 +02:00
Aden Khan
b2adbf1f48
Adding the functionality and test so that the If-Modified-Since header is honored in GET Object
...
Signed-off-by: Aden Khan <aakhan@sep.com>
2019-07-03 14:25:08 -04:00
Alexander Mohr
7271fb9391
Fix S3 backend operations with VersionId ( #2055 )
...
* fix s3 issues
* fix merge conflict
* fix and add test cases
2019-05-25 20:19:33 +01:00
Gregory Bataille
d952410965
1987 support transfer acceleration ( #2018 )
...
* chore(): remove executable flag on moto/s3/response.py
* chore(): ignore .eggs temp file
* feat(#1987 ): get bucket acceleration support
* feat(#1987 ): put bucket acceleration support
* feat(#1987 ): suspend undefined bucket is a no-op
* feat(#1987 ): validate accelerate_configuration status
* feat(#1987 ): bucket containing dots do not support acceleration
* doc(#1987 ): update implementation coverage
2019-05-25 11:19:00 +01:00
Gilbert Gilb's
dedb53371e
[S3] Support null version ids for buckets with versioning disabled
2019-03-09 10:21:49 +01:00
Domenico Testa
74ff2ccc95
Reformatting to get better coverage results
2019-03-04 09:16:43 +01:00
Domenico Testa
6897a118ed
Fixing S3 copy_key error when using unicode.
2019-02-16 16:42:00 +01:00
Steve Pulec
dec665be43
Merge pull request #1986 from okomestudio/ts/fix-s3-common-prefix-pagination
...
Activate proper pagination for S3 common prefixes
2018-12-28 21:22:07 -05:00
Taro Sato
2038fa92be
Activate proper pagination for S3 common prefixes
2018-12-05 16:17:28 -08:00
Grégory Bataille
34ac5c72b9
feat( #1959 ): bucket in us-east-1 return None as LocationConstraint
2018-11-20 19:50:42 +01:00
Grégory Bataille
437eb892e2
feat( #1959 ): LocationConstraint us-east-1 is not accepted by the CreateBucket operation
2018-11-20 18:57:05 +01:00
Jordan Guymon
8e909f580a
MockAWS implementation using botocore event hooks
2018-10-29 09:12:22 +01:00
Steve Pulec
27ca96519b
Fix extra whitespace in s3. Closes #1844 .
2018-10-15 01:37:38 -04:00
Jon Beilke
ea4fcaa82a
add support for NoncurrentVersionTransition, NoncurrentVersionExpiration, and AbortIncompleteMultipartUpload actions to s3 lifecycle rules
2018-10-03 00:40:28 -05:00
Jordan Upiter
756b5d6671
Add support for multiple delete markers on an s3 object
2018-09-11 10:41:01 -04:00
Alexander Mohr
93a404ec37
pep
2018-05-03 02:10:17 -07:00
Alexander Mohr
7a57dc2034
fix errors
2018-05-03 01:40:49 -07:00
Mike Grima
4184acc0d2
Added Filtering support for S3 lifecycle ( #1535 )
...
* Added Filtering support for S3 lifecycle
Also added `ExpiredObjectDeleteMarker`.
closes #1533
closes #1479
* Result set no longer contains "Prefix" if "Filter" is set.
2018-04-02 14:19:14 -07:00