1. 02 Mar, 2020 1 commit
  2. 22 Oct, 2019 1 commit
  3. 17 May, 2019 1 commit
    • Stan Hu's avatar
      Fix incorrect prefix used in new uploads for personal snippets · a1f44c1b
      Stan Hu authored
      https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/24550 fixed the
      case where the wrong path on disk was being searched, but it
      inadvertently ommitted the `/uploads/-/system` prefix when rendering the
      Markdown for personal snippet uploads when they were stored directly in
      object storage.
      
      A personal snippet path is stored using FileUploader#upload_path.
      The format for the path:
      
      Local storage: :random_hex/:filename.
      Object storage: personal_snippet/:id/:random_hex/:filename.
      
      upload_paths represent the possible paths for a given identifier,
      which will vary depending on whether the file is stored in local or
      object storage. upload_path should match an element in upload_paths.
      
      base_dir represents the path seen by the user in Markdown, and it
      should always be prefixed with uploads/-/system.
      
      store_dirs represent the paths that are actually used on disk. For
      object storage, this should omit the prefix /uploads/-/system.
      
      For example, consider the requested path
      /uploads/-/system/personal_snippet/172/ff4ad5c2/file.png.
      
      For local storage:
      
      base_dir: uploads/-/system/personal_snippet/172
      upload_path: ff4ad5c2/file.png
      upload_paths: ["ff4ad5c2/file.png", "personal_snippet/172/ff4ad5c2/file.png"].
      store_dirs: {1=>"uploads/-/system/personal_snippet/172/ff4ad5c2",
                   2=>"personal_snippet/172/ff4ad5c2"}
      
      For object storage:
      
      upload_path: personal_snippet/172/ff4ad5c2/file.png
      
      Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/61671
      a1f44c1b
  4. 22 Jan, 2019 1 commit
    • Stan Hu's avatar
      Fix 404s with snippet uploads in object storage · 940ad0c7
      Stan Hu authored
      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
      940ad0c7
  5. 10 Dec, 2018 1 commit
    • Semyon Pupkov's avatar
      Fix already initialized constant IDENTIFIER warning · 20526df9
      Semyon Pupkov authored
      /app/spec/uploaders/personal_file_uploader_spec.rb:3: warning: already initialized constant IDENTIFIER
      /app/spec/uploaders/namespace_file_uploader_spec.rb:3: warning: previous definition of IDENTIFIER was here
      20526df9
  6. 07 Jun, 2018 1 commit
  7. 26 Mar, 2018 1 commit
  8. 28 Feb, 2018 2 commits
  9. 01 Feb, 2018 1 commit
  10. 11 Aug, 2017 1 commit
  11. 02 Aug, 2017 1 commit
  12. 20 Jul, 2017 1 commit
  13. 02 May, 2017 1 commit