diff options
author | Douwe Maan <douwe@gitlab.com> | 2016-11-15 10:19:51 +0000 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2016-11-15 18:39:47 +0100 |
commit | ce097cd4e4deb69b02823480535f0db6accc07c5 (patch) | |
tree | 748ade12253c05d3e595e899c72c598f41475335 | |
parent | 7082b2e1085fdd3da87a9f67fa50b2a2efb53813 (diff) | |
download | gitlab-ce-ce097cd4e4deb69b02823480535f0db6accc07c5.tar.gz |
Merge branch '24392-lfs-helper-refactor' into 'master'
Move the `objects` method to `LfsHelper` so that it is also available to `LfsStorageController`
## What does this MR do?
Move the `objects` method to `LfsHelper` so that it is also available to `LfsStorageController`
It is needed for the `lfs_check_access!` callback when the repository size limit is enabled (EE only).
cc @stanhu @ahanselka
## Why was this MR needed?
Errors shown here: gitlab-org/gitlab-ce#24392
Discovered thanks to gitlab-com/infrastructure#302
## What are the relevant issue numbers?
Fixes #24392
Fixes gitlab-com/support-forum#1280
See merge request !7417
-rw-r--r-- | app/controllers/projects/lfs_api_controller.rb | 4 | ||||
-rw-r--r-- | app/helpers/lfs_helper.rb | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/app/controllers/projects/lfs_api_controller.rb b/app/controllers/projects/lfs_api_controller.rb index ece49dcd922..2d493276941 100644 --- a/app/controllers/projects/lfs_api_controller.rb +++ b/app/controllers/projects/lfs_api_controller.rb @@ -31,10 +31,6 @@ class Projects::LfsApiController < Projects::GitHttpClientController private - def objects - @objects ||= (params[:objects] || []).to_a - end - def existing_oids @existing_oids ||= begin storage_project.lfs_objects.where(oid: objects.map { |o| o['oid'].to_s }).pluck(:oid) diff --git a/app/helpers/lfs_helper.rb b/app/helpers/lfs_helper.rb index d3966ba1f10..2425c3a8bc8 100644 --- a/app/helpers/lfs_helper.rb +++ b/app/helpers/lfs_helper.rb @@ -30,6 +30,10 @@ module LfsHelper ci? || lfs_deploy_token? || user_can_download_code? || build_can_download_code? end + def objects + @objects ||= (params[:objects] || []).to_a + end + def user_can_download_code? has_authentication_ability?(:download_code) && can?(user, :download_code, project) end |