Fix copy middleware so that all client-defined object headers that object servers allow to be persisted are copied. For example, content-encoding and content-disposition will now be copied. Fix treatment of x-fresh-metadata header so that, when it is used, new object sysmeta is applied to the object copy in the same way as a copy without x-fresh-metadata. Remove unnecessary passing of original request headers to sink PUT request constructor: passing the environ is sufficient to have the new request inherit the original's headers. Add tests for this change and to verify that content-type gets either copied or updated if supplied with the copy request. Add tests for x-fresh-metadata treatment. Closes-Bug: #1391826 Closes-Bug: #1600247 Co-Authored-By: Thiago da Silva <thiago@redhat.com> Change-Id: I917fb0b4e831c13e04ade1c5e0b9821802dec967
76 KiB
76 KiB