As per amazon s3 spec -
https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-s3-bucket-naming-requirements.html
The s3 bucket names should not contain upper case letters or underscore.
Name cannot end with dash or have consecutive periods, or dashes adjacent to periods
Name length shouldn't exceed 63 characters.
These rules are being enforced via
- https://github.com/ceph/ceph/pull/26787
This patch is to update the respective testcases as well.
Note: check_invalid_bucket_name() seems to have been broken. It should
try to create bucket using invalid name. Have addressed it in this
patch. Because of this few testcases (which were incorrectly passing
earlier) are failing in validate_bucket_name. Have marked them
'fails_on_rgw' as done for test_bucket_create_naming_bad_punctuation
Signed-off-by: Soumya Koduri <skoduri@redhat.com>
The assumption that there may be only one rule per prefix has
been removed. The rules specifically tested here--without tag
filters--do overlap but are not in conflict.
I am proposing to remove altogether rather than writing new
deconfliction logic.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
The response to a successful PUT or HEAD (or GET) of/on
an object matching any enabled lifecycle expiration rule should
include an x-amz-expiration header for the object. The
x-amz-expiration header consists of an expiry-date, rule-id tuple
indicating the earliest matching rule and the corresponding
expiration date for the object.
Also, while at it, add test for lifecycle expiration rule with
'Days' : 0, which should both apply and...work.
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit 2d12e98ce0)
Added sample config file for boto3 and vstart.sh
Modified setup.py, requirements.txt, and README
Added an rgw_interactive.py to use interactively
with vstart.sh and python -i
Ported 400+ tests over to boto3 from functional/test_s3.py
Signed-off-by: Ali Maredia <amaredia@redhat.com>
(cherry picked from commit 67f4f5d356)
because gevent 1.3.2 requires cffi>=1.11.5, and cffi requires
libffi-dev to build.
Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit a2b3e4ef77)
since make_json_policy is redundantly doing most of the same work,
refactor to use the new policy classes instead
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
- Improve `make_json_policy` to support conditionals in policy
- Move the helper functions for creating policies up so that bucket
policy tests can use these
- add bucket-policy attribute to the tagging tests using policy
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
For default-bucket and versioning-suspended-bucket, no version-id should return when upload.
For versioning-enabled-bucket, an non-empty version-id should return and equal to what
bucket list shows.
Signed-off-by: Xinying Song <songxinying@cloudin.cn>