diff --git a/config/initializers/grack_auth.rb b/config/initializers/grack_auth.rb index bb34ce6dc54..b44a01f4a0c 100644 --- a/config/initializers/grack_auth.rb +++ b/config/initializers/grack_auth.rb @@ -5,7 +5,10 @@ module Grack # Authentication with username and password email, password = @auth.credentials user = User.find_by_email(email) - return false unless user.valid_password?(password) + return false unless user.try(:valid_password?, password) + + # Need this patch because the rails mount + @env['PATH_INFO'] = @env['REQUEST_PATH'] # Find project by PATH_INFO from env if m = /^\/([\w-]+).git/.match(@env['PATH_INFO']).to_a diff --git a/config/routes.rb b/config/routes.rb index f657b1d2ed8..cbec66ec1e2 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -18,7 +18,7 @@ Gitlab::Application.routes.draw do project_root: GIT_HOST['base_path'], upload_pack: GIT_HOST['upload_pack'], receive_pack: GIT_HOST['receive_pack'] - }), at: '/git' + }), at: '/:path', constraints: { path: /[\w-]+.git*/ } # # Help