Commit graph

15 commits

Author SHA1 Message Date
Robert Speicher
6d165c740c Make all uses of fixture_file_upload use relative paths 2018-06-07 09:54:41 -05:00
Rémy Coutable
0a5f3aa378 Merge branch 'fix-fog-mocking' into 'master'
Fix Fog mocking

Closes #47300

See merge request gitlab-org/gitlab-ce!19425
2018-06-05 15:26:14 +00:00
Kamil Trzciński
53d1c87c86 Fix Fog mocking 2018-06-05 16:48:42 +02:00
Sean McGivern
6ecf819f73 Fix an N+1 in avatar URLs
This is tricky: the query was being run in
`ObjectStorage::Extension::RecordsUploads#retrieve_from_store!`, but we can't
just add batch loading there, because the `#upload=` method there would use the
result immediately, making the batch only have one item.

Instead, we can pre-emptively add an item to the batch whenever an avatarable
object is initialized, and then reuse that batch item in
`#retrieve_from_store!`. However, this also has problems:

1. There is a lot of logic in `Avatarable#retrieve_upload_from_batch`.
2. Some of that logic constructs a 'fake' model for the batch key. This should
   be fine, because of ActiveRecord's override of `#==`, but it relies on that
   staying the same.
2018-06-05 14:57:19 +01:00
Kamil Trzciński
b8370c9f55 Support presigned multipart uploads 2018-06-04 13:04:29 +02:00
Alessio Caiazza
a23ef89e57
Fix missing timeout value in object storage pre-authorization call 2018-05-29 19:01:05 +02:00
Shinya Maeda
cb2802dbbc Fix spec 2018-05-28 10:44:26 +09:00
Kamil Trzciński
a28f25b565 Fix direct_upload when records with null file_store are used
Old records have a null value of file_store column.
This causes the problems with current direct_upload implementation,
as this makes it to choose Store::REMOTE instead of Store::LOCAL.

This change moves the store save when change saving the object.
2018-04-19 12:09:51 +02:00
Kamil Trzciński
678620cce6 Add direct_upload setting for artifacts 2018-04-05 15:01:14 +02:00
Kamil Trzciński
9dde7df247 Allow to store uploads by default on Object Storage
Introduce `direct_upload` option for `uploads` which is gonna set a default storage to Object Storage and use Unicorn to save data
2018-04-04 23:13:45 +02:00
Alessio Caiazza
ae27a47b6e
Add Gitlab::ExclusiveLease to ObjectStorage#use_file 2018-03-29 10:01:23 +02:00
Alessio Caiazza
04c5e637f8
Port LFS direct_upload from EE 2018-03-27 10:32:48 +02:00
Micaël Bergeron
508938873c remove the license check 2018-03-01 10:40:40 -05:00
Kamil Trzciński
a22f6fa6e5 Merge branch 'fix/sm/atomic-migration' into 'master'
Fix migrate! method (Minimal fix with ExclusiveLock to prevent race conditions)

Closes #4928 and #4980

See merge request gitlab-org/gitlab-ee!4624
2018-02-28 21:28:26 +01:00
Sean McGivern
a7dae52e9d Merge branch '4163-move-uploads-to-object-storage' into 'master'
Move uploads to object storage

Closes #4163

See merge request gitlab-org/gitlab-ee!3867
2018-02-28 20:58:15 +01:00