Ignore S3 ACL for now since we do not implement it.
This commit is contained in:
parent
0bb3ecd1d5
commit
64ed605c14
@ -253,7 +253,7 @@ class ResponseObject(object):
|
|||||||
if method == 'GET':
|
if method == 'GET':
|
||||||
return self._key_response_get(bucket_name, query, key_name, headers)
|
return self._key_response_get(bucket_name, query, key_name, headers)
|
||||||
elif method == 'PUT':
|
elif method == 'PUT':
|
||||||
return self._key_response_put(request, body, bucket_name, query, key_name, headers)
|
return self._key_response_put(request, parsed_url, body, bucket_name, query, key_name, headers)
|
||||||
elif method == 'HEAD':
|
elif method == 'HEAD':
|
||||||
return self._key_response_head(bucket_name, key_name, headers)
|
return self._key_response_head(bucket_name, key_name, headers)
|
||||||
elif method == 'DELETE':
|
elif method == 'DELETE':
|
||||||
@ -284,7 +284,7 @@ class ResponseObject(object):
|
|||||||
else:
|
else:
|
||||||
return 404, headers, ""
|
return 404, headers, ""
|
||||||
|
|
||||||
def _key_response_put(self, request, body, bucket_name, query, key_name, headers):
|
def _key_response_put(self, request, parsed_url, body, bucket_name, query, key_name, headers):
|
||||||
if 'uploadId' in query and 'partNumber' in query:
|
if 'uploadId' in query and 'partNumber' in query:
|
||||||
upload_id = query['uploadId'][0]
|
upload_id = query['uploadId'][0]
|
||||||
part_number = int(query['partNumber'][0])
|
part_number = int(query['partNumber'][0])
|
||||||
@ -305,6 +305,10 @@ class ResponseObject(object):
|
|||||||
|
|
||||||
storage_class = request.headers.get('x-amz-storage-class', 'STANDARD')
|
storage_class = request.headers.get('x-amz-storage-class', 'STANDARD')
|
||||||
|
|
||||||
|
if parsed_url.query == 'acl':
|
||||||
|
# We don't implement ACL yet, so just return
|
||||||
|
return 200, headers, ""
|
||||||
|
|
||||||
if 'x-amz-copy-source' in request.headers:
|
if 'x-amz-copy-source' in request.headers:
|
||||||
# Copy key
|
# Copy key
|
||||||
src_bucket, src_key = request.headers.get("x-amz-copy-source").split("/", 1)
|
src_bucket, src_key = request.headers.get("x-amz-copy-source").split("/", 1)
|
||||||
|
@ -589,3 +589,20 @@ def test_list_versions():
|
|||||||
versions[1].name.should.equal('the-key')
|
versions[1].name.should.equal('the-key')
|
||||||
versions[1].version_id.should.equal('1')
|
versions[1].version_id.should.equal('1')
|
||||||
versions[1].get_contents_as_string().should.equal("Version 2")
|
versions[1].get_contents_as_string().should.equal("Version 2")
|
||||||
|
|
||||||
|
|
||||||
|
@mock_s3
|
||||||
|
def test_acl_is_ignored_for_now():
|
||||||
|
conn = boto.connect_s3()
|
||||||
|
bucket = conn.create_bucket('foobar')
|
||||||
|
content = 'imafile'
|
||||||
|
keyname = 'test.txt'
|
||||||
|
|
||||||
|
key = Key(bucket, name=keyname)
|
||||||
|
key.content_type = 'text/plain'
|
||||||
|
key.set_contents_from_string(content)
|
||||||
|
key.make_public()
|
||||||
|
|
||||||
|
key = bucket.get_key(keyname)
|
||||||
|
|
||||||
|
assert key.get_contents_as_string() == content
|
||||||
|
Loading…
x
Reference in New Issue
Block a user