Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-03-13 12:09:23 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2020-03-13 12:09:23 +0300
commit4cb5e5011abfe8d50ac3a7ebd0018c563c6d7af4 (patch)
tree82591df15758864325897043f855b4e4dfcb6a56 /lib/gitlab/git_access.rb
parent0301a0cad0063d76b1607358dc6c711ea043fdda (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'lib/gitlab/git_access.rb')
-rw-r--r--lib/gitlab/git_access.rb26
1 files changed, 21 insertions, 5 deletions
diff --git a/lib/gitlab/git_access.rb b/lib/gitlab/git_access.rb
index 7a13a35c096..7361ccf4aa2 100644
--- a/lib/gitlab/git_access.rb
+++ b/lib/gitlab/git_access.rb
@@ -81,7 +81,7 @@ module Gitlab
check_push_access!
end
- success_result(cmd)
+ success_result
end
def guest_can_download_code?
@@ -119,12 +119,24 @@ module Gitlab
nil
end
- def check_for_console_messages(cmd)
+ def check_for_console_messages
+ return console_messages unless key?
+
+ key_status = Gitlab::Auth::KeyStatusChecker.new(actor)
+
+ if key_status.show_console_message?
+ console_messages.push(key_status.console_message)
+ else
+ console_messages
+ end
+ end
+
+ def console_messages
[]
end
def check_valid_actor!
- return unless actor.is_a?(Key)
+ return unless key?
unless actor.valid?
raise ForbiddenError, "Your SSH key #{actor.errors[:key].first}."
@@ -340,6 +352,10 @@ module Gitlab
actor == :ci
end
+ def key?
+ actor.is_a?(Key)
+ end
+
def can_read_project?
if deploy_key?
deploy_key.has_access_to?(project)
@@ -374,8 +390,8 @@ module Gitlab
protected
- def success_result(cmd)
- ::Gitlab::GitAccessResult::Success.new(console_messages: check_for_console_messages(cmd))
+ def success_result
+ ::Gitlab::GitAccessResult::Success.new(console_messages: check_for_console_messages)
end
def changes_list