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:
authorDouwe Maan <douwe@gitlab.com>2015-03-27 16:43:48 +0300
committerDouwe Maan <douwe@gitlab.com>2015-04-03 13:23:20 +0300
commitedc4a56d26792b5b5bac21f45948412675ad7ebb (patch)
tree5691320e58507e134a2f026f8f4e8054821edf50 /app/views/projects/deploy_keys
parent9157985cfce1391973673ea278dc7506a90f8f53 (diff)
Allow admin to create public deploy keys that are accessible to any project.
Diffstat (limited to 'app/views/projects/deploy_keys')
-rw-r--r--app/views/projects/deploy_keys/_deploy_key.html.haml29
-rw-r--r--app/views/projects/deploy_keys/index.html.haml24
2 files changed, 39 insertions, 14 deletions
diff --git a/app/views/projects/deploy_keys/_deploy_key.html.haml b/app/views/projects/deploy_keys/_deploy_key.html.haml
index a2faa9d5e25..8837a65918c 100644
--- a/app/views/projects/deploy_keys/_deploy_key.html.haml
+++ b/app/views/projects/deploy_keys/_deploy_key.html.haml
@@ -5,21 +5,38 @@
%i.fa.fa-plus
Enable
- else
- - if deploy_key.projects.count > 1
+ - if deploy_key.projects.count > 1 || deploy_key.public?
= link_to disable_namespace_project_deploy_key_path(@project.namespace, @project, deploy_key), class: 'btn btn-sm', method: :put do
%i.fa.fa-power-off
Disable
- else
- = link_to 'Remove', namespace_project_deploy_key_path(@project.namespace, @project, deploy_key), data: { confirm: 'You are going to remove deploy key. Are you sure?'}, method: :delete, class: "btn btn-remove delete-key btn-sm pull-right"
+ = link_to 'Remove', disable_namespace_project_deploy_key_path(@project.namespace, @project, deploy_key), data: { confirm: 'You are going to remove deploy key. Are you sure?'}, method: :put, class: "btn btn-remove delete-key btn-sm pull-right"
- - key_project = deploy_key.projects.include?(@project) ? @project : deploy_key.projects.first
- = link_to namespace_project_deploy_key_path(key_project.namespace, key_project, deploy_key) do
+ - if deploy_key.projects.include?(@project)
+ - key_project = @project
+ - else
+ - key_project = deploy_key.projects.find { |project| can?(current_user, :read_project, project) }
+
+ - if key_project
+ = link_to namespace_project_deploy_key_path(key_project.namespace, key_project, deploy_key) do
+ %i.fa.fa-key
+ %strong= deploy_key.title
+ - else
%i.fa.fa-key
%strong= deploy_key.title
+
%p.light.prepend-top-10
- - deploy_key.projects.map(&:name_with_namespace).each do |project_name|
- %span.label.label-gray.deploy-project-label= project_name
+ - if deploy_key.public?
+ %span.label.label-info.deploy-project-label
+ Public deploy key
+
+ - deploy_key.projects.each do |project|
+ - if can?(current_user, :read_project, project)
+ %span.label.label-gray.deploy-project-label
+ = link_to namespace_project_path(project.namespace, project) do
+ = project.name_with_namespace
+
%small.pull-right
Created #{time_ago_with_tooltip(deploy_key.created_at)}
diff --git a/app/views/projects/deploy_keys/index.html.haml b/app/views/projects/deploy_keys/index.html.haml
index c02a18146eb..186cdfeea33 100644
--- a/app/views/projects/deploy_keys/index.html.haml
+++ b/app/views/projects/deploy_keys/index.html.haml
@@ -22,11 +22,19 @@
.light-well
.nothing-here-block Create a #{link_to 'new deploy key', new_namespace_project_deploy_key_path(@project.namespace, @project)} or add an existing one
.col-md-6.available-keys
- %h5
- %strong Deploy keys
- from projects available to you
- %ul.bordered-list
- = render @available_keys
- - if @available_keys.blank?
- .light-well
- .nothing-here-block Deploy keys from projects you have access to will be displayed here
+ - unless @available_project_keys.blank? && @available_public_keys.any?
+ %h5
+ %strong Deploy keys
+ from projects you have access to
+ %ul.bordered-list
+ = render @available_project_keys
+ - if @available_project_keys.blank?
+ .light-well
+ .nothing-here-block Deploy keys from projects you have access to will be displayed here
+
+ - if @available_public_keys.any?
+ %h5
+ %strong Public deploy keys
+ available to any project
+ %ul.bordered-list
+ = render @available_public_keys