gitlab-org--gitlab-foss/spec/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
..
workers/object_storage
attachment_uploader_spec.rb
avatar_uploader_spec.rb
file_mover_spec.rb
file_uploader_spec.rb Avoid extra storage bucket perm and query 2018-12-21 10:34:05 -08:00
gitlab_uploader_spec.rb
import_export_uploader_spec.rb
job_artifact_uploader_spec.rb
legacy_artifact_uploader_spec.rb
lfs_object_uploader_spec.rb
namespace_file_uploader_spec.rb
object_storage_spec.rb Avoid extra storage bucket perm and query 2018-12-21 10:34:05 -08:00
personal_file_uploader_spec.rb Fix 404s with snippet uploads in object storage 2019-01-21 22:13:37 -08:00
records_uploads_spec.rb
uploader_helper_spec.rb