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:
Diffstat (limited to 'lib/gitlab/github_import/user_finder.rb')
-rw-r--r--lib/gitlab/github_import/user_finder.rb19
1 files changed, 10 insertions, 9 deletions
diff --git a/lib/gitlab/github_import/user_finder.rb b/lib/gitlab/github_import/user_finder.rb
index 1feb0d450f0..b8751def08f 100644
--- a/lib/gitlab/github_import/user_finder.rb
+++ b/lib/gitlab/github_import/user_finder.rb
@@ -39,18 +39,19 @@ module Gitlab
#
# If the object has no author ID we'll use the ID of the GitLab ghost
# user.
+ # object - An instance of `Hash` or a `Github::Representer`
def author_id_for(object, author_key: :author)
user_info = case author_key
when :actor
- object&.actor
+ object[:actor]
when :assignee
- object&.assignee
+ object[:assignee]
when :requested_reviewer
- object&.requested_reviewer
+ object[:requested_reviewer]
when :review_requester
- object&.review_requester
+ object[:review_requester]
else
- object&.author
+ object ? object[:author] : nil
end
id = user_info ? user_id_for(user_info) : GithubImport.ghost_user_id
@@ -64,14 +65,14 @@ module Gitlab
# Returns the GitLab user ID of an issuable's assignee.
def assignee_id_for(issuable)
- user_id_for(issuable.assignee) if issuable.assignee
+ user_id_for(issuable[:assignee]) if issuable[:assignee]
end
# Returns the GitLab user ID for a GitHub user.
#
- # user - An instance of `Gitlab::GithubImport::Representation::User`.
+ # user - An instance of `Gitlab::GithubImport::Representation::User` or `Hash`.
def user_id_for(user)
- find(user.id, user.login) if user.present?
+ find(user[:id], user[:login]) if user.present?
end
# Returns the GitLab ID for the given GitHub ID or username.
@@ -114,7 +115,7 @@ module Gitlab
unless email
user = client.user(username)
- email = Gitlab::Cache::Import::Caching.write(cache_key, user.email, timeout: timeout(user.email)) if user
+ email = Gitlab::Cache::Import::Caching.write(cache_key, user[:email], timeout: timeout(user[:email])) if user
end
email