diff options
author | Kamil Trzcinski <ayufan@ayufan.eu> | 2016-09-15 10:34:53 +0200 |
---|---|---|
committer | Kamil Trzcinski <ayufan@ayufan.eu> | 2016-09-15 10:34:53 +0200 |
commit | 6b381f3fdf00c7eeb971f365bde2a41f0cecf944 (patch) | |
tree | b3e661a6dc8a75149889b4a8aa7b4d7fbdb7369b /app/controllers/jwt_controller.rb | |
parent | 79e4bb8d0b3b74ddd185677e4828d737788c3b1a (diff) | |
download | gitlab-ce-6b381f3fdf00c7eeb971f365bde2a41f0cecf944.tar.gz |
Use `build_read_container_image` and use `build_download_code`
Diffstat (limited to 'app/controllers/jwt_controller.rb')
-rw-r--r-- | app/controllers/jwt_controller.rb | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/app/controllers/jwt_controller.rb b/app/controllers/jwt_controller.rb index 1b075cc5e2d..7bf534d8732 100644 --- a/app/controllers/jwt_controller.rb +++ b/app/controllers/jwt_controller.rb @@ -11,7 +11,10 @@ class JwtController < ApplicationController service = SERVICES[params[:service]] return head :not_found unless service - result = service.new(@project, @user, auth_params).execute(capabilities: @capabilities) + @@authentication_result ||= Gitlab::Auth.Result.new + + result = service.new(@authentication_result.project, @authentication_result.user, auth_params). + execute(capabilities: @authentication_result.capabilities || []) render json: result, status: result[:http_status] end @@ -20,18 +23,9 @@ class JwtController < ApplicationController def authenticate_project_or_user authenticate_with_http_basic do |login, password| - @auth_result = Gitlab::Auth.find_for_git_client(login, password, ip: request.ip) - - @user = auth_result.user - @project = auth_result.project - @type = auth_result.type - @capabilities = auth_result.capabilities || [] - - if @user || @project - return # Allow access - end + @authentication_result = Gitlab::Auth.find_for_git_client(login, password, ip: request.ip) - render_403 + render_403 unless @authentication_result.success? end end |