Commit 39e37677f291c344e25583916a1811a052e38db6

Authored by Dmitriy Zaporozhets
1 parent 081c272b

add remove keys from gitlab-shell by id

app/models/key.rb
@@ -81,7 +81,7 @@ class Key < ActiveRecord::Base @@ -81,7 +81,7 @@ class Key < ActiveRecord::Base
81 Key.where(identifier: identifier).count == 0 81 Key.where(identifier: identifier).count == 0
82 end 82 end
83 83
84 - def owner_name  
85 - user.username 84 + def shell_id
  85 + "key-#{self.id}"
86 end 86 end
87 end 87 end
app/observers/key_observer.rb
@@ -4,7 +4,7 @@ class KeyObserver < ActiveRecord::Observer @@ -4,7 +4,7 @@ class KeyObserver < ActiveRecord::Observer
4 def after_save(key) 4 def after_save(key)
5 GitoliteWorker.perform_async( 5 GitoliteWorker.perform_async(
6 :add_key, 6 :add_key,
7 - key.owner_name, 7 + key.shell_id,
8 key.key 8 key.key
9 ) 9 )
10 end 10 end
@@ -12,7 +12,7 @@ class KeyObserver < ActiveRecord::Observer @@ -12,7 +12,7 @@ class KeyObserver < ActiveRecord::Observer
12 def after_destroy(key) 12 def after_destroy(key)
13 GitoliteWorker.perform_async( 13 GitoliteWorker.perform_async(
14 :remove_key, 14 :remove_key,
15 - key.owner_name, 15 + key.shell_id,
16 key.key, 16 key.key,
17 ) 17 )
18 end 18 end
lib/gitlab/backend/shell.rb
@@ -27,19 +27,19 @@ module Gitlab @@ -27,19 +27,19 @@ module Gitlab
27 # Add new key to gitlab-shell 27 # Add new key to gitlab-shell
28 # 28 #
29 # Ex. 29 # Ex.
30 - # add_key("randx", "sha-rsa ...") 30 + # add_key("key-42", "sha-rsa ...")
31 # 31 #
32 - def add_key(username, key_content)  
33 - system("/home/git/gitlab-shell/bin/gitlab-keys add-key #{username} \"#{key_content}\"") 32 + def add_key(key_id, key_content)
  33 + system("/home/git/gitlab-shell/bin/gitlab-keys add-key #{key_id} \"#{key_content}\"")
34 end 34 end
35 35
36 # Remove ssh key from gitlab shell 36 # Remove ssh key from gitlab shell
37 # 37 #
38 # Ex. 38 # Ex.
39 - # remove_key("sha-rsa") 39 + # remove_key("key-342", "sha-rsa ...")
40 # 40 #
41 - def remove_key(username, key_content)  
42 - system("/home/git/gitlab-shell/bin/gitlab-keys rm-key #{username} \"#{key_content}\"") 41 + def remove_key(key_id, key_content)
  42 + system("/home/git/gitlab-shell/bin/gitlab-keys rm-key #{key_id} \"#{key_content}\"")
43 end 43 end
44 44
45 45