Commit graph

678 commits

Author SHA1 Message Date
Tianshan Qu
07057d2185 add test case for list with delimiter not skip special keys
Signed-off-by: Tianshan Qu <tianshan@xsky.com>
2019-08-16 11:01:17 -04:00
Ali Maredia
6c766eb60b
Merge pull request #285 from soumyakoduri/bucket-name-tests
Fix create_bucket tests as per new bucket naming conventions
2019-08-16 10:57:20 -04:00
Matt Benjamin
f236076632
Merge pull request #294 from linuxbox2/wip-lc-exphdr
lifecycle: expiration header checks do not require @lifecycle_expirat…
2019-07-24 16:49:59 -04:00
Matt Benjamin
a7d4ec68aa lc: remove date delta check from lc header checks
This was prone to false positives.  We still check:
1. the expiration header has valid form
2. the rule-id matches

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2019-07-24 14:05:43 -04:00
Matt Benjamin
e0aafba82d lc: add rule to test disjoint object tag filters
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2019-07-19 16:24:33 -04:00
Matt Benjamin
0a73ea08de lc: fix lifecycle expiration header tests
Fixes various issues with existing HEAD check and helper methods.
Add an explicit test for GET.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2019-07-19 13:59:49 -04:00
Matt Benjamin
ec4cf0de2b lifecycle: expiration header checks do not require @lifecycle_expiration tag
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2019-07-19 09:19:14 -04:00
Casey Bodley
817e67d92e fix syntax error in test_bucket_get_location
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit eaa68f4f77)
2019-07-10 11:45:04 -04:00
Casey Bodley
585809a7ec skip bucket location test if no api_name is configured
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit 250122e17d)
2019-07-10 11:45:04 -04:00
Casey Bodley
9c915ebfdf set 'api_name = default' in sample config
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit 75182b7e03)
2019-07-10 11:45:04 -04:00
Soumya Koduri
86bfe40bd3 Fix create_bucket tests as per new bucket naming conventions
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>
2019-07-02 12:52:42 +05:30
albIN7
4c335b7aea Added testcases for listobjectsv2
Signed-off-by: Albin Antony <aantony@redhat.com>
2019-07-01 16:18:51 -04:00
Casey Bodley
c3425c7f00 test versioned copy with urlencoded keys
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2019-06-05 16:13:09 -04:00
Matt Benjamin
d7a20d0607 boto{2,3}: rm functional.test_s3.test_lifecycle_rules_conflict
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>
2019-05-24 12:33:55 -04:00
Ali Maredia
9d07887011 remove boto2 tests already passing in boto3
Signed-off-by: Ali Maredia <amaredia@redhat.com>
2019-05-02 11:27:20 -04:00
Ali Maredia
20c742db49 boto3: tag boto3 tests that are failing on ssl as 'fails_on_rgw'
Signed-off-by: Ali Maredia <amaredia@redhat.com>
(cherry picked from commit 5db9eb059d)
2019-04-23 11:14:33 -04:00
Casey Bodley
0454190382 boto3: verify certificates for ssl connections
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit 0e04dcd6aa)
2019-04-23 11:14:33 -04:00
Casey Bodley
a864020eac boto3: _get_post_url() uses config endpoint
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit 7f49adda30)
2019-04-23 11:14:33 -04:00
Casey Bodley
b1d6dc927c boto3: use https:// for secure endpoints
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit ac18365f75)
2019-04-23 11:14:33 -04:00
Casey Bodley
bce59979ca boto3: use getboolean() for is_secure
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit 774d40d114)
2019-04-23 11:14:33 -04:00
Matt Benjamin
7c067c346b boto3_s3tests: add tests for lifecycle expiration header
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)
2019-04-23 11:14:33 -04:00
Ali Maredia
baec994fc6 boto3: Foundation laid for boto3 tests
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)
2019-04-23 11:08:04 -04:00
Kefu Chai
80c3f690ce bootstrap: add libffi-dev for gevent
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)
2018-05-31 00:30:53 +08:00
Casey Bodley
24ab8ecf07
Merge pull request #192 from joke-lee/cors_option_header_check
rgw: test cors option request with Access-Control-Request-Headers

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2018-04-23 09:01:53 -04:00
Casey Bodley
ab0acde0f2
Merge pull request #220 from joke-lee/max-keys-test
enable test for https://github.com/ceph/ceph/pull/21285

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2018-04-12 11:18:14 -04:00
Ali Maredia
7ccdadb37a
Merge pull request #182 from gaul/versioning
Add missing versioning tag
2018-04-10 02:20:30 +08:00
yuliyang
abbd9f17e6 enable test for https://github.com/ceph/ceph/pull/21285
Signed-off-by: yuliyang <yuliyang@cmss.chinamobile.com>
2018-04-09 12:19:31 -04:00
Ali Maredia
f783f4294b
Merge pull request #217 from cbodley/wip-unpin-requests
unpin the requests library version
2018-04-06 00:47:10 +08:00
Casey Bodley
8c67aafcf2 requirements: unpin 'requests' from old v0.14
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2018-03-27 13:45:11 -04:00
Casey Bodley
23c99318e6 cors: allow None to match missing headers
this is apparently needed to run against newer versions of the requests
library

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2018-03-27 13:45:11 -04:00
Casey Bodley
bb65f38ad9
Merge pull request #209 from fangyuxiangGL/compression
compression: add case to download range from big object

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2018-02-16 11:34:00 -05:00
Ali Maredia
5fb7f7a709
Merge pull request #205 from malc0lm/multipartcopy-no-range
Add test for muiltpart copy without 'x-amz-copy-source-range' header
2018-02-13 14:03:15 -05:00
fang yuxiang
e93443ac07 compression: add case to download range from big object
Signed-off-by: fang yuxiang <fang.yuxiang@eisoo.com>
2018-02-07 16:16:39 +08:00
Casey Bodley
8ef3465f0e
Merge pull request #191 from theanalyst/policy-conditionals
test bucket policy with conditionals 

Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
2018-01-25 11:06:06 -05:00
Malcolm Lee
800a9a758f Add test for muiltpart copy without 'x-amz-copy-source-range' header 2018-01-24 13:56:02 +08:00
Abhishek Lekshmanan
5da742036e policy: refactor make_json_policy to use the new Policy classes
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>
2018-01-17 10:56:33 +01:00
Abhishek Lekshmanan
47e3772e0b policy: test existingobject tag on get acl
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
2018-01-17 10:56:33 +01:00
Abhishek Lekshmanan
a7e619b7ca policy: test put object with reqeust object tag 2018-01-17 10:56:32 +01:00
Abhishek Lekshmanan
ebb31e02f9 policy: test policy with sse-c encryption
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
2018-01-17 10:56:32 +01:00
Abhishek Lekshmanan
afa108d742 typo fix for pub_obj_acl
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
2018-01-17 10:56:32 +01:00
Abhishek Lekshmanan
fc0e55f7e1 policy: add S3 tests for grants conditionals
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
2018-01-17 10:56:32 +01:00
Abhishek Lekshmanan
26adb84b30 move ListBucket to new policy class 2018-01-17 10:56:32 +01:00
Abhishek Lekshmanan
ecea466666 policy: add a new policy class to make creation of complex policies
Since policies can have allow/deny rules etc

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
2018-01-17 10:56:32 +01:00
Abhishek Lekshmanan
ef827b745e policy: test put object with canned acl
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
2018-01-17 10:56:32 +01:00
Abhishek Lekshmanan
35c9fcd6ae policy: test metadta copy key
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
2018-01-17 10:56:32 +01:00
Abhishek Lekshmanan
35cd3f77af policy: test put obj using copy conditionals
Test s3:x-amz-copy-source conditional on put obj with x-amz-copy-source

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
2018-01-17 10:56:32 +01:00
Abhishek Lekshmanan
1012710ce7 policy: test for acl grants conditionals on put bucket acls
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
2018-01-17 10:56:32 +01:00
Abhishek Lekshmanan
006f9d5f46 policy: add tests for put bucket acl with canned acl conditionals
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
2018-01-17 10:56:31 +01:00
Abhishek Lekshmanan
b1e1ba0edf s3: policy tests for ListBucket with prefix, delimiter & max-keys
Allow conditionals on ListBucket similar to s3 docs which allow for
these clauses

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
2018-01-17 10:56:31 +01:00
Abhishek Lekshmanan
3e650c5e6e policy: test put object tagging with conditionals
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
2018-01-17 10:56:31 +01:00