Add tagging to versioned s3 objects.
This commit is contained in:
parent
16a0e93259
commit
df2de373b2
3 changed files with 162 additions and 3 deletions
|
|
@ -1115,8 +1115,8 @@ class S3Backend(BaseBackend):
|
|||
else:
|
||||
return None
|
||||
|
||||
def set_key_tagging(self, bucket_name, key_name, tagging):
|
||||
key = self.get_key(bucket_name, key_name)
|
||||
def set_key_tagging(self, bucket_name, key_name, tagging, version_id=None):
|
||||
key = self.get_key(bucket_name, key_name, version_id)
|
||||
if key is None:
|
||||
raise MissingKey(key_name)
|
||||
key.set_tagging(tagging)
|
||||
|
|
|
|||
|
|
@ -905,8 +905,12 @@ class ResponseObject(_TemplateEnvironmentMixin, ActionAuthenticatorMixin):
|
|||
return 200, response_headers, ""
|
||||
|
||||
if 'tagging' in query:
|
||||
if 'versionId' in query:
|
||||
version_id = query['versionId'][0]
|
||||
else:
|
||||
version_id = None
|
||||
tagging = self._tagging_from_xml(body)
|
||||
self.backend.set_key_tagging(bucket_name, key_name, tagging)
|
||||
self.backend.set_key_tagging(bucket_name, key_name, tagging, version_id)
|
||||
return 200, response_headers, ""
|
||||
|
||||
if 'x-amz-copy-source' in request.headers:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue