gitlab-org--gitlab-foss/app/uploaders
Stan Hu 940ad0c7a1 Fix 404s with snippet uploads in object storage
Previously, an HTTP request for
`/uploads/-/system/personal_snippet/:snippet_id/:hash/:filename` would
look for an uploader of `PersonalFileUploader` class and use
`PersonalFileUploader#upload_paths` to search the datbase for one of the
following paths:

1. `:hash/:filename`
2. `uploads/-/system/personal_snippet/:id/:hash/:filename`

However, when the upload were stored in object storage,
`PersonalFileUploader#store_dirs` stored the path as:

`personal_snippet/:snippet_id/:hash`

The extraneous `uploads/-/system` prefix prevented the path from being
matched, and uploads in object storage would return a 404 error. Uploads
in local storage would work fine.

To fix this, we set the `#base_dir` properly so that `#upload_paths`
generates the right value for object storage. Note that this also makes
`#store_dirs` do the right thing in `FileUploader`.

Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/52595
2019-01-21 22:13:37 -08:00
..
attachment_uploader.rb Enable frozen string in apps/validators/*.rb 2018-07-05 00:13:58 -07:00
avatar_uploader.rb fix avatar uploader error 2018-09-10 17:41:51 +02:00
favicon_uploader.rb Enable frozen string in apps/validators/*.rb 2018-07-05 00:13:58 -07:00
file_mover.rb Enable frozen string in apps/validators/*.rb 2018-07-05 00:13:58 -07:00
file_uploader.rb Extract code from Issues::MoveService 2018-11-12 08:57:25 +01:00
gitlab_uploader.rb Backport of "Use Geo log to remove files when migrated to object storage" 2018-10-03 15:09:16 +00:00
import_export_uploader.rb Add Object Storage to GitLab project import 2018-08-02 11:50:19 +02:00
job_artifact_uploader.rb Backport of "Use Geo log to remove files when migrated to object storage" 2018-10-03 15:09:16 +00:00
legacy_artifact_uploader.rb Backport of "Use Geo log to remove files when migrated to object storage" 2018-10-03 15:09:16 +00:00
lfs_object_uploader.rb Backport of "Use Geo log to remove files when migrated to object storage" 2018-10-03 15:09:16 +00:00
namespace_file_uploader.rb Fix workhorse temp path for namespace uploads 2018-09-11 15:45:46 +02:00
object_storage.rb Enable frozen string in apps/validators/*.rb 2018-07-05 00:13:58 -07:00
personal_file_uploader.rb Fix 404s with snippet uploads in object storage 2019-01-21 22:13:37 -08:00
records_uploads.rb Fix failing MySQL spec due to deadlock condition 2019-01-14 21:17:40 -08:00
uploader_helper.rb Uploads to wiki stored inside the wiki git repository 2018-09-04 10:39:08 +00:00
workhorse.rb Enable frozen string in apps/validators/*.rb 2018-07-05 00:13:58 -07:00