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
path: root/lib
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-01-14 03:08:14 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2020-01-14 03:08:14 +0300
commit427c549b6396885fb60a687326b6cd62878e4ca3 (patch)
tree145713e2f6fdaf7499b0cb44010503e16b6248b9 /lib
parent74a89b1221eaf780374bd1d4c5b2ee4a0f488908 (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'lib')
-rw-r--r--lib/api/entities.rb4
-rw-r--r--lib/api/keys.rb11
2 files changed, 11 insertions, 4 deletions
diff --git a/lib/api/entities.rb b/lib/api/entities.rb
index 3cb438baa80..e8ea4a9fac5 100644
--- a/lib/api/entities.rb
+++ b/lib/api/entities.rb
@@ -924,6 +924,10 @@ module API
expose :user, using: Entities::UserPublic
end
+ class DeployKeyWithUser < SSHKeyWithUser
+ expose :deploy_keys_projects
+ end
+
class DeployKeysProject < Grape::Entity
expose :deploy_key, merge: true, using: Entities::SSHKey
expose :can_push
diff --git a/lib/api/keys.rb b/lib/api/keys.rb
index 8f837107192..bec3dc9bd97 100644
--- a/lib/api/keys.rb
+++ b/lib/api/keys.rb
@@ -26,12 +26,15 @@ module API
get do
authenticated_with_can_read_all_resources!
- finder_params = params.merge(key_type: 'ssh')
-
- key = KeysFinder.new(current_user, finder_params).execute
+ key = KeysFinder.new(current_user, params).execute
not_found!('Key') unless key
- present key, with: Entities::SSHKeyWithUser, current_user: current_user
+
+ if key.type == "DeployKey"
+ present key, with: Entities::DeployKeyWithUser, current_user: current_user
+ else
+ present key, with: Entities::SSHKeyWithUser, current_user: current_user
+ end
rescue KeysFinder::InvalidFingerprint
render_api_error!('Failed to return the key', 400)
end