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
avatar_uploader.rb
favicon_uploader.rb
file_mover.rb
file_uploader.rb Extract code from Issues::MoveService 2018-11-12 08:57:25 +01:00
gitlab_uploader.rb
import_export_uploader.rb
job_artifact_uploader.rb
legacy_artifact_uploader.rb
lfs_object_uploader.rb
namespace_file_uploader.rb
object_storage.rb
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
workhorse.rb