Skip to content

Commit 636b922

Browse files
Kota TsuyuzakiThiago da Silvatipabu
committed
Import swift3 into swift repo as s3api middleware
This attempts to import openstack/swift3 package into swift upstream repository, namespace. This is almost simple porting except following items. 1. Rename swift3 namespace to swift.common.middleware.s3api 1.1 Rename also some conflicted class names (e.g. Request/Response) 2. Port unittests to test/unit/s3api dir to be able to run on the gate. 3. Port functests to test/functional/s3api and setup in-process testing 4. Port docs to doc dir, then address the namespace change. 5. Use get_logger() instead of global logger instance 6. Avoid global conf instance Ex. fix various minor issue on those steps (e.g. packages, dependencies, deprecated things) The details and patch references in the work on feature/s3api are listed at https://trello.com/b/ZloaZ23t/s3api (completed board) Note that, because this is just a porting, no new feature is developed since the last swift3 release, and in the future work, Swift upstream may continue to work on remaining items for further improvements and the best compatibility of Amazon S3. Please read the new docs for your deployment and keep track to know what would be changed in the future releases. Change-Id: Ib803ea89cfee9a53c429606149159dd136c036fd Co-Authored-By: Thiago da Silva <thiago@redhat.com> Co-Authored-By: Tim Burke <tim.burke@gmail.com>
1 parent 260bd26 commit 636b922

File tree

116 files changed

+19747
-6
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

116 files changed

+19747
-6
lines changed

.zuul.yaml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,18 @@
105105
vars:
106106
tox_envlist: func-domain-remap-staticweb
107107

108+
- job:
109+
name: swift-tox-func-s3api
110+
parent: swift-tox-base
111+
description: |
112+
Run functional tests for swift under cPython version 2.7.
113+
114+
Uses tox with the ``func-s3api`` environment.
115+
It sets TMPDIR to an XFS mount point created via
116+
tools/test-setup.sh.
117+
vars:
118+
tox_envlist: func-s3api
119+
108120
- job:
109121
name: swift-probetests-centos-7
110122
parent: unittests
@@ -128,6 +140,7 @@
128140
- swift-tox-func-encryption
129141
- swift-tox-func-domain-remap-staticweb
130142
- swift-tox-func-ec
143+
- swift-tox-func-s3api
131144
- swift-probetests-centos-7
132145
gate:
133146
jobs:
@@ -137,6 +150,7 @@
137150
- swift-tox-func-encryption
138151
- swift-tox-func-domain-remap-staticweb
139152
- swift-tox-func-ec
153+
- swift-tox-func-s3api
140154
experimental:
141155
jobs:
142156
- swift-tox-py27-centos-7

AUTHORS

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ Brian Ober (bober@us.ibm.com)
7272
Brian Reitz (brian.reitz@oracle.com)
7373
Bryan Keller (kellerbr@us.ibm.com)
7474
Béla Vancsics (vancsics@inf.u-szeged.hu)
75+
Виль Суркин (vills@vills-pro.local)
7576
Caleb Tennis (caleb.tennis@gmail.com)
7677
Cao Xuan Hoang (hoangcx@vn.fujitsu.com)
7778
Carlos Cavanna (ccavanna@ca.ibm.com)
@@ -111,6 +112,7 @@ Dan Prince (dprince@redhat.com)
111112
dangming (dangming@unitedstack.com)
112113
Daniele Valeriani (daniele@dvaleriani.net)
113114
Darrell Bishop (darrell@swiftstack.com)
115+
Darryl Tam (dtam@swiftstack.com)
114116
David Goetz (david.goetz@rackspace.com)
115117
David Hadas (davidh@il.ibm.com)
116118
David Liu (david.liu@cn.ibm.com)
@@ -253,6 +255,7 @@ Martin Geisler (martin@geisler.net)
253255
Martin Kletzander (mkletzan@redhat.com)
254256
Maru Newby (mnewby@internap.com)
255257
Mathias Bjoerkqvist (mbj@zurich.ibm.com)
258+
Masaki Tsukuda (tsukuda.masaki@po.ntts.co.jp)
256259
Matt Kassawara (mkassawara@gmail.com)
257260
Matt Riedemann (mriedem@us.ibm.com)
258261
Matthew Oliver (matt@oliver.net.au)
@@ -274,6 +277,8 @@ Nakagawa Masaaki (nakagawamsa@nttdata.co.jp)
274277
Nakul Dahiwade (nakul.dahiwade@intel.com)
275278
Nam Nguyen Hoai (namnh@vn.fujitsu.com)
276279
Nandini Tata (nandini.tata@intel.com)
280+
Naoto Nishizono (nishizono.naoto@po.ntts.co.jp)
281+
Nassim Babaci (nassim.babaci@cloudwatt.com)
277282
Nathan Kinder (nkinder@redhat.com)
278283
Nelson Almeida (nelsonmarcos@gmail.com)
279284
Newptone (xingchao@unitedstack.com)
@@ -365,11 +370,13 @@ Victor Lowther (victor.lowther@gmail.com)
365370
Victor Rodionov (victor.rodionov@nexenta.com)
366371
Victor Stinner (vstinner@redhat.com)
367372
Viktor Varga (vvarga@inf.u-szeged.hu)
373+
Vil Surkin (mail@vills.me)
368374
Vincent Untz (vuntz@suse.com)
369375
Vladimir Vechkanov (vvechkanov@mirantis.com)
370376
Vu Cong Tuan (tuanvc@vn.fujitsu.com)
371377
vxlinux (yan.wei7@zte.com.cn)
372378
wanghongtaozz (wanghongtaozz@inspur.com)
379+
Wyllys Ingersoll (wyllys.ingersoll@evault.com)
373380
Wu Wenxiang (wu.wenxiang@99cloud.net)
374381
xhancar (pavel.hancar@gmail.com)
375382
XieYingYun (smokony@sina.com)

bindep.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,10 @@ liberasurecode-dev [platform:dpkg]
1010
liberasurecode-devel [platform:rpm !platform:centos]
1111
libffi-dev [platform:dpkg]
1212
libffi-devel [platform:rpm]
13+
libxml2-dev [platform:dpkg]
14+
libxml2-devel [platform:rpm]
15+
libxslt-devel [platform:rpm]
16+
libxslt1-dev [platform:dpkg]
1317
memcached
1418
python-dev [platform:dpkg]
1519
python-devel [platform:rpm]

doc/s3api/conf/ceph-known-failures-keystone.yaml

Lines changed: 209 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 187 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,187 @@
1+
ceph_s3:
2+
<nose.suite.ContextSuite context=s3tests.functional>:teardown: {status: KNOWN}
3+
<nose.suite.ContextSuite context=test_routing_generator>:setup: {status: KNOWN}
4+
s3tests.functional.test_headers.test_bucket_create_bad_authorization_invalid_aws2: {status: KNOWN}
5+
s3tests.functional.test_headers.test_bucket_create_bad_authorization_none: {status: KNOWN}
6+
s3tests.functional.test_headers.test_object_create_bad_authorization_invalid_aws2: {status: KNOWN}
7+
s3tests.functional.test_headers.test_object_create_bad_authorization_none: {status: KNOWN}
8+
s3tests.functional.test_s3.test_100_continue: {status: KNOWN}
9+
s3tests.functional.test_s3.test_atomic_conditional_write_1mb: {status: KNOWN}
10+
s3tests.functional.test_s3.test_atomic_dual_conditional_write_1mb: {status: KNOWN}
11+
s3tests.functional.test_s3.test_bucket_acl_grant_email: {status: KNOWN}
12+
s3tests.functional.test_s3.test_bucket_acl_grant_email_notexist: {status: KNOWN}
13+
s3tests.functional.test_s3.test_bucket_acl_grant_nonexist_user: {status: KNOWN}
14+
s3tests.functional.test_s3.test_bucket_acl_no_grants: {status: KNOWN}
15+
s3tests.functional.test_s3.test_bucket_create_exists: {status: KNOWN}
16+
s3tests.functional.test_s3.test_bucket_header_acl_grants: {status: KNOWN}
17+
s3tests.functional.test_s3.test_bucket_list_objects_anonymous: {status: KNOWN}
18+
s3tests.functional.test_s3.test_bucket_list_objects_anonymous_fail: {status: KNOWN}
19+
s3tests.functional.test_s3.test_bucket_recreate_not_overriding: {status: KNOWN}
20+
s3tests.functional.test_s3.test_cors_origin_response: {status: KNOWN}
21+
s3tests.functional.test_s3.test_cors_origin_wildcard: {status: KNOWN}
22+
s3tests.functional.test_s3.test_list_buckets_anonymous: {status: KNOWN}
23+
s3tests.functional.test_s3.test_list_buckets_invalid_auth: {status: KNOWN}
24+
s3tests.functional.test_s3.test_logging_toggle: {status: KNOWN}
25+
s3tests.functional.test_s3.test_multipart_resend_first_finishes_last: {status: KNOWN}
26+
s3tests.functional.test_s3.test_object_copy_canned_acl: {status: KNOWN}
27+
s3tests.functional.test_s3.test_object_copy_replacing_metadata: {status: KNOWN}
28+
s3tests.functional.test_s3.test_object_header_acl_grants: {status: KNOWN}
29+
s3tests.functional.test_s3.test_object_raw_get: {status: KNOWN}
30+
s3tests.functional.test_s3.test_object_raw_get_bucket_acl: {status: KNOWN}
31+
s3tests.functional.test_s3.test_object_raw_get_bucket_gone: {status: KNOWN}
32+
s3tests.functional.test_s3.test_object_raw_get_object_acl: {status: KNOWN}
33+
s3tests.functional.test_s3.test_object_raw_get_object_gone: {status: KNOWN}
34+
s3tests.functional.test_s3.test_object_raw_put: {status: KNOWN}
35+
s3tests.functional.test_s3.test_object_raw_put_write_access: {status: KNOWN}
36+
s3tests.functional.test_s3.test_post_object_anonymous_request: {status: KNOWN}
37+
s3tests.functional.test_s3.test_post_object_authenticated_request: {status: KNOWN}
38+
s3tests.functional.test_s3.test_post_object_authenticated_request_bad_access_key: {status: KNOWN}
39+
s3tests.functional.test_s3.test_post_object_case_insensitive_condition_fields: {status: KNOWN}
40+
s3tests.functional.test_s3.test_post_object_condition_is_case_sensitive: {status: KNOWN}
41+
s3tests.functional.test_s3.test_post_object_escaped_field_values: {status: KNOWN}
42+
s3tests.functional.test_s3.test_post_object_expired_policy: {status: KNOWN}
43+
s3tests.functional.test_s3.test_post_object_expires_is_case_sensitive: {status: KNOWN}
44+
s3tests.functional.test_s3.test_post_object_ignored_header: {status: KNOWN}
45+
s3tests.functional.test_s3.test_post_object_invalid_access_key: {status: KNOWN}
46+
s3tests.functional.test_s3.test_post_object_invalid_content_length_argument: {status: KNOWN}
47+
s3tests.functional.test_s3.test_post_object_invalid_date_format: {status: KNOWN}
48+
s3tests.functional.test_s3.test_post_object_invalid_request_field_value: {status: KNOWN}
49+
s3tests.functional.test_s3.test_post_object_invalid_signature: {status: KNOWN}
50+
s3tests.functional.test_s3.test_post_object_missing_conditions_list: {status: KNOWN}
51+
s3tests.functional.test_s3.test_post_object_missing_content_length_argument: {status: KNOWN}
52+
s3tests.functional.test_s3.test_post_object_missing_expires_condition: {status: KNOWN}
53+
s3tests.functional.test_s3.test_post_object_missing_policy_condition: {status: KNOWN}
54+
s3tests.functional.test_s3.test_post_object_missing_signature: {status: KNOWN}
55+
s3tests.functional.test_s3.test_post_object_no_key_specified: {status: KNOWN}
56+
s3tests.functional.test_s3.test_post_object_request_missing_policy_specified_field: {status: KNOWN}
57+
s3tests.functional.test_s3.test_post_object_set_invalid_success_code: {status: KNOWN}
58+
s3tests.functional.test_s3.test_post_object_set_key_from_filename: {status: KNOWN}
59+
s3tests.functional.test_s3.test_post_object_set_success_code: {status: KNOWN}
60+
s3tests.functional.test_s3.test_post_object_success_redirect_action: {status: KNOWN}
61+
s3tests.functional.test_s3.test_post_object_upload_larger_than_chunk: {status: KNOWN}
62+
s3tests.functional.test_s3.test_post_object_upload_size_below_minimum: {status: KNOWN}
63+
s3tests.functional.test_s3.test_post_object_upload_size_limit_exceeded: {status: KNOWN}
64+
s3tests.functional.test_s3.test_post_object_user_specified_header: {status: KNOWN}
65+
s3tests.functional.test_s3.test_put_object_ifmatch_failed: {status: KNOWN}
66+
s3tests.functional.test_s3.test_put_object_ifmatch_good: {status: KNOWN}
67+
s3tests.functional.test_s3.test_put_object_ifmatch_nonexisted_failed: {status: KNOWN}
68+
s3tests.functional.test_s3.test_put_object_ifmatch_overwrite_existed_good: {status: KNOWN}
69+
s3tests.functional.test_s3.test_put_object_ifnonmatch_failed: {status: KNOWN}
70+
s3tests.functional.test_s3.test_put_object_ifnonmatch_good: {status: KNOWN}
71+
s3tests.functional.test_s3.test_put_object_ifnonmatch_nonexisted_good: {status: KNOWN}
72+
s3tests.functional.test_s3.test_put_object_ifnonmatch_overwrite_existed_failed: {status: KNOWN}
73+
s3tests.functional.test_s3.test_set_cors: {status: KNOWN}
74+
s3tests.functional.test_s3.test_versioned_concurrent_object_create_and_remove: {status: KNOWN}
75+
s3tests.functional.test_s3.test_versioned_concurrent_object_create_concurrent_remove: {status: KNOWN}
76+
s3tests.functional.test_s3.test_versioned_object_acl: {status: KNOWN}
77+
s3tests.functional.test_s3.test_versioning_bucket_create_suspend: {status: KNOWN}
78+
s3tests.functional.test_s3.test_versioning_copy_obj_version: {status: KNOWN}
79+
s3tests.functional.test_s3.test_versioning_multi_object_delete: {status: KNOWN}
80+
s3tests.functional.test_s3.test_versioning_multi_object_delete_with_marker: {status: KNOWN}
81+
s3tests.functional.test_s3.test_versioning_multi_object_delete_with_marker_create: {status: KNOWN}
82+
s3tests.functional.test_s3.test_versioning_obj_create_overwrite_multipart: {status: KNOWN}
83+
s3tests.functional.test_s3.test_versioning_obj_create_read_remove: {status: KNOWN}
84+
s3tests.functional.test_s3.test_versioning_obj_create_read_remove_head: {status: KNOWN}
85+
s3tests.functional.test_s3.test_versioning_obj_create_versions_remove_all: {status: KNOWN}
86+
s3tests.functional.test_s3.test_versioning_obj_create_versions_remove_special_names: {status: KNOWN}
87+
s3tests.functional.test_s3.test_versioning_obj_list_marker: {status: KNOWN}
88+
s3tests.functional.test_s3.test_versioning_obj_plain_null_version_overwrite: {status: KNOWN}
89+
s3tests.functional.test_s3.test_versioning_obj_plain_null_version_overwrite_suspended: {status: KNOWN}
90+
s3tests.functional.test_s3.test_versioning_obj_plain_null_version_removal: {status: KNOWN}
91+
s3tests.functional.test_s3.test_versioning_obj_suspend_versions: {status: KNOWN}
92+
s3tests.functional.test_s3.test_versioning_obj_suspend_versions_simple: {status: KNOWN}
93+
s3tests.functional.test_s3_website.check_can_test_website: {status: KNOWN}
94+
s3tests.functional.test_s3_website.test_website_bucket_private_redirectall_base: {status: KNOWN}
95+
s3tests.functional.test_s3_website.test_website_bucket_private_redirectall_path: {status: KNOWN}
96+
s3tests.functional.test_s3_website.test_website_bucket_private_redirectall_path_upgrade: {status: KNOWN}
97+
s3tests.functional.test_s3_website.test_website_nonexistant_bucket_rgw: {status: KNOWN}
98+
s3tests.functional.test_s3_website.test_website_nonexistant_bucket_s3: {status: KNOWN}
99+
s3tests.functional.test_s3_website.test_website_private_bucket_list_empty: {status: KNOWN}
100+
s3tests.functional.test_s3_website.test_website_private_bucket_list_empty_blockederrordoc: {status: KNOWN}
101+
s3tests.functional.test_s3_website.test_website_private_bucket_list_empty_gooderrordoc: {status: KNOWN}
102+
s3tests.functional.test_s3_website.test_website_private_bucket_list_empty_missingerrordoc: {status: KNOWN}
103+
s3tests.functional.test_s3_website.test_website_private_bucket_list_private_index: {status: KNOWN}
104+
s3tests.functional.test_s3_website.test_website_private_bucket_list_private_index_blockederrordoc: {status: KNOWN}
105+
s3tests.functional.test_s3_website.test_website_private_bucket_list_private_index_gooderrordoc: {status: KNOWN}
106+
s3tests.functional.test_s3_website.test_website_private_bucket_list_private_index_missingerrordoc: {status: KNOWN}
107+
s3tests.functional.test_s3_website.test_website_private_bucket_list_public_index: {status: KNOWN}
108+
s3tests.functional.test_s3_website.test_website_public_bucket_list_empty: {status: KNOWN}
109+
s3tests.functional.test_s3_website.test_website_public_bucket_list_empty_blockederrordoc: {status: KNOWN}
110+
s3tests.functional.test_s3_website.test_website_public_bucket_list_empty_gooderrordoc: {status: KNOWN}
111+
s3tests.functional.test_s3_website.test_website_public_bucket_list_empty_missingerrordoc: {status: KNOWN}
112+
s3tests.functional.test_s3_website.test_website_public_bucket_list_private_index: {status: KNOWN}
113+
s3tests.functional.test_s3_website.test_website_public_bucket_list_private_index_blockederrordoc: {status: KNOWN}
114+
s3tests.functional.test_s3_website.test_website_public_bucket_list_private_index_gooderrordoc: {status: KNOWN}
115+
s3tests.functional.test_s3_website.test_website_public_bucket_list_private_index_missingerrordoc: {status: KNOWN}
116+
s3tests.functional.test_s3_website.test_website_public_bucket_list_public_index: {status: KNOWN}
117+
s3tests.functional.test_s3_website.test_website_xredirect_nonwebsite: {status: KNOWN}
118+
s3tests.functional.test_s3_website.test_website_xredirect_private_abs: {status: KNOWN}
119+
s3tests.functional.test_s3_website.test_website_xredirect_private_relative: {status: KNOWN}
120+
s3tests.functional.test_s3_website.test_website_xredirect_public_abs: {status: KNOWN}
121+
s3tests.functional.test_s3_website.test_website_xredirect_public_relative: {status: KNOWN}
122+
s3tests.functional.test_s3.test_bucket_configure_recreate: {status: KNOWN}
123+
s3tests.functional.test_s3.test_bucket_list_return_data_versioning: {status: KNOWN}
124+
s3tests.functional.test_s3.test_bucket_policy: {status: KNOWN}
125+
s3tests.functional.test_s3.test_bucket_policy_acl: {status: KNOWN}
126+
s3tests.functional.test_s3.test_bucket_policy_another_bucket: {status: KNOWN}
127+
s3tests.functional.test_s3.test_bucket_policy_different_tenant: {status: KNOWN}
128+
s3tests.functional.test_s3.test_bucket_policy_set_condition_operator_end_with_IfExists: {status: KNOWN}
129+
s3tests.functional.test_s3.test_delete_tags_obj_public: {status: KNOWN}
130+
s3tests.functional.test_s3.test_encryption_sse_c_invalid_md5: {status: KNOWN}
131+
s3tests.functional.test_s3.test_encryption_sse_c_method_head: {status: KNOWN}
132+
s3tests.functional.test_s3.test_encryption_sse_c_multipart_bad_download: {status: KNOWN}
133+
s3tests.functional.test_s3.test_encryption_sse_c_multipart_invalid_chunks_1: {status: KNOWN}
134+
s3tests.functional.test_s3.test_encryption_sse_c_multipart_invalid_chunks_2: {status: KNOWN}
135+
s3tests.functional.test_s3.test_encryption_sse_c_no_key: {status: KNOWN}
136+
s3tests.functional.test_s3.test_encryption_sse_c_no_md5: {status: KNOWN}
137+
s3tests.functional.test_s3.test_encryption_sse_c_other_key: {status: KNOWN}
138+
s3tests.functional.test_s3.test_encryption_sse_c_post_object_authenticated_request: {status: KNOWN}
139+
s3tests.functional.test_s3.test_encryption_sse_c_present: {status: KNOWN}
140+
s3tests.functional.test_s3.test_get_obj_head_tagging: {status: KNOWN}
141+
s3tests.functional.test_s3.test_get_obj_tagging: {status: KNOWN}
142+
s3tests.functional.test_s3.test_get_tags_acl_public: {status: KNOWN}
143+
s3tests.functional.test_s3.test_lifecycle_deletemarker_expiration: {status: KNOWN}
144+
s3tests.functional.test_s3.test_lifecycle_expiration: {status: KNOWN}
145+
s3tests.functional.test_s3.test_lifecycle_expiration_date: {status: KNOWN}
146+
s3tests.functional.test_s3.test_lifecycle_get: {status: KNOWN}
147+
s3tests.functional.test_s3.test_lifecycle_get_no_id: {status: KNOWN}
148+
s3tests.functional.test_s3.test_lifecycle_id_too_long: {status: KNOWN}
149+
s3tests.functional.test_s3.test_lifecycle_multipart_expiration: {status: KNOWN}
150+
s3tests.functional.test_s3.test_lifecycle_noncur_expiration: {status: KNOWN}
151+
s3tests.functional.test_s3.test_lifecycle_rules_conflicted: {status: KNOWN}
152+
s3tests.functional.test_s3.test_lifecycle_same_id: {status: KNOWN}
153+
s3tests.functional.test_s3.test_lifecycle_set: {status: KNOWN}
154+
s3tests.functional.test_s3.test_lifecycle_set_date: {status: KNOWN}
155+
s3tests.functional.test_s3.test_lifecycle_set_deletemarker: {status: KNOWN}
156+
s3tests.functional.test_s3.test_lifecycle_set_empty_filter: {status: KNOWN}
157+
s3tests.functional.test_s3.test_lifecycle_set_filter: {status: KNOWN}
158+
s3tests.functional.test_s3.test_lifecycle_set_multipart: {status: KNOWN}
159+
s3tests.functional.test_s3.test_lifecycle_set_noncurrent: {status: KNOWN}
160+
s3tests.functional.test_s3.test_multipart_copy_invalid_range: {status: KNOWN}
161+
s3tests.functional.test_s3.test_multipart_copy_versioned: {status: KNOWN}
162+
s3tests.functional.test_s3.test_object_copy_versioned_bucket: {status: KNOWN}
163+
s3tests.functional.test_s3.test_object_copy_versioning_multipart_upload: {status: KNOWN}
164+
s3tests.functional.test_s3.test_post_object_empty_conditions: {status: KNOWN}
165+
s3tests.functional.test_s3.test_post_object_tags_anonymous_request: {status: KNOWN}
166+
s3tests.functional.test_s3.test_post_object_tags_authenticated_request: {status: KNOWN}
167+
s3tests.functional.test_s3.test_put_delete_tags: {status: KNOWN}
168+
s3tests.functional.test_s3.test_put_excess_key_tags: {status: KNOWN}
169+
s3tests.functional.test_s3.test_put_excess_tags: {status: KNOWN}
170+
s3tests.functional.test_s3.test_put_excess_val_tags: {status: KNOWN}
171+
s3tests.functional.test_s3.test_put_max_kvsize_tags: {status: KNOWN}
172+
s3tests.functional.test_s3.test_put_max_tags: {status: KNOWN}
173+
s3tests.functional.test_s3.test_put_modify_tags: {status: KNOWN}
174+
s3tests.functional.test_s3.test_put_obj_with_tags: {status: KNOWN}
175+
s3tests.functional.test_s3.test_put_tags_acl_public: {status: KNOWN}
176+
s3tests.functional.test_s3.test_sse_kms_method_head: {status: KNOWN}
177+
s3tests.functional.test_s3.test_sse_kms_multipart_invalid_chunks_1: {status: KNOWN}
178+
s3tests.functional.test_s3.test_sse_kms_multipart_invalid_chunks_2: {status: KNOWN}
179+
s3tests.functional.test_s3.test_sse_kms_multipart_upload: {status: KNOWN}
180+
s3tests.functional.test_s3.test_sse_kms_post_object_authenticated_request: {status: KNOWN}
181+
s3tests.functional.test_s3.test_sse_kms_present: {status: KNOWN}
182+
s3tests.functional.test_s3.test_sse_kms_read_declare: {status: KNOWN}
183+
s3tests.functional.test_s3.test_sse_kms_transfer_13b: {status: KNOWN}
184+
s3tests.functional.test_s3.test_sse_kms_transfer_1MB: {status: KNOWN}
185+
s3tests.functional.test_s3.test_sse_kms_transfer_1b: {status: KNOWN}
186+
s3tests.functional.test_s3.test_sse_kms_transfer_1kb: {status: KNOWN}
187+
s3tests.functional.test_s3.test_versioned_object_acl_no_version_specified: {status: KNOWN}

doc/s3api/conf/ceph-s3.conf.in

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
[DEFAULT]
2+
host = localhost
3+
port = 8080
4+
is_secure = no
5+
6+
[s3 main]
7+
user_id = %ADMIN_ACCESS_KEY%
8+
display_name = %ADMIN_ACCESS_KEY%
9+
email = %ADMIN_ACCESS_KEY%
10+
access_key = %ADMIN_ACCESS_KEY%
11+
secret_key = %ADMIN_SECRET_KEY%
12+
13+
[s3 alt]
14+
user_id = %TESTER_ACCESS_KEY%
15+
display_name = %TESTER_ACCESS_KEY%
16+
email = %TESTER_ACCESS_KEY%
17+
access_key = %TESTER_ACCESS_KEY%
18+
secret_key = %TESTER_SECRET_KEY%

doc/s3api/conf/object-server.conf.in

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
[DEFAULT]
2+
user = %USER%
3+
bind_port = 6000
4+
swift_dir = %TEST_DIR%/etc
5+
devices = %TEST_DIR%
6+
mount_check = false
7+
workers = 1
8+
log_level = DEBUG
9+
10+
[pipeline:main]
11+
pipeline = object-server
12+
13+
[app:object-server]
14+
use = egg:swift#object
15+
allowed_headers = Cache-Control, Content-Disposition, Content-Encoding,
16+
Content-Language, Expires, X-Delete-At, X-Object-Manifest, X-Robots-Tag,
17+
X-Static-Large-Object
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
include "common.rnc"
2+
3+
start =
4+
element AccessControlPolicy {
5+
element Owner { CanonicalUser } &
6+
element AccessControlList { AccessControlList }
7+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
include "common.rnc"
2+
3+
start =
4+
element BucketLoggingStatus {
5+
element LoggingEnabled {
6+
element TargetBucket { xsd:string } &
7+
element TargetPrefix { xsd:string } &
8+
element TargetGrants { AccessControlList }?
9+
}?
10+
}

0 commit comments

Comments
 (0)