diff --git a/storages/backends/s3boto.py b/storages/backends/s3boto.py index 1de2ece48..fd97f6d63 100644 --- a/storages/backends/s3boto.py +++ b/storages/backends/s3boto.py @@ -146,7 +146,8 @@ def write(self, content, *args, **kwargs): self._multipart = self._storage.bucket.initiate_multipart_upload( self.key.name, headers=upload_headers, - reduced_redundancy=self._storage.reduced_redundancy + reduced_redundancy=self._storage.reduced_redundancy, + encrypt_key=self._storage.encryption, ) if self.buffer_size <= self._buffer_file_size: self._flush_write_buffer() diff --git a/tests/test_s3boto.py b/tests/test_s3boto.py index 3ad3956a6..376d94a31 100644 --- a/tests/test_s3boto.py +++ b/tests/test_s3boto.py @@ -165,6 +165,8 @@ def test_storage_open_write(self): name = 'test_open_for_writing.txt' content = 'new content' + # Set the encryption flag used for multipart uploads + self.storage.encryption = True # Set the ACL header used when creating/writing data. self.storage.bucket.connection.provider.acl_header = 'x-amz-acl' # Set the mocked key's bucket @@ -183,6 +185,7 @@ def test_storage_open_write(self): 'x-amz-acl': 'public-read', }, reduced_redundancy=self.storage.reduced_redundancy, + encrypt_key=True, ) # Save the internal file before closing