From 244ed8adb3bc2d1b4706a695e19e144e180084f3 Mon Sep 17 00:00:00 2001 From: Stan Hu Date: Thu, 13 Sep 2018 15:58:04 -0700 Subject: Fix object storage uploads not working with AWS v2 Because we were passing query strings as symbols, the fog-aws storage driver was omitting the uploadId and partNumber query strings from the signature in multipart uploads. This fix makes AWS and Ceph work with v2 signatures. See: https://github.com/fog/fog-aws/blob/v3.0.0/lib/fog/aws/storage.rb#L733 Closes https://gitlab.com/gitlab-org/gitlab-workhorse/issues/181 --- lib/object_storage/direct_upload.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'lib') diff --git a/lib/object_storage/direct_upload.rb b/lib/object_storage/direct_upload.rb index ab43910c8bd..97f56e10ccf 100644 --- a/lib/object_storage/direct_upload.rb +++ b/lib/object_storage/direct_upload.rb @@ -89,7 +89,7 @@ module ObjectStorage method: 'PUT', bucket_name: bucket_name, object_name: object_name, - query: { uploadId: upload_id, partNumber: part_number }, + query: { 'uploadId' => upload_id, 'partNumber' => part_number }, headers: upload_options }, expire_at) end @@ -100,7 +100,7 @@ module ObjectStorage method: 'POST', bucket_name: bucket_name, object_name: object_name, - query: { uploadId: upload_id }, + query: { 'uploadId' => upload_id }, headers: { 'Content-Type' => 'application/xml' } }, expire_at) end @@ -111,7 +111,7 @@ module ObjectStorage method: 'DELETE', bucket_name: bucket_name, object_name: object_name, - query: { uploadId: upload_id } + query: { 'uploadId' => upload_id } }, expire_at) end -- cgit v1.2.3