File tree 2 files changed +11
-0
lines changed
lib/redmine_git_hosting/config
2 files changed +11
-0
lines changed Original file line number Diff line number Diff line change @@ -28,6 +28,7 @@ class GitolitePublicKey < ActiveRecord::Base
28
28
29
29
validate :has_not_been_changed
30
30
validate :key_correctness
31
+ validate :key_not_admin
31
32
validate :key_uniqueness
32
33
33
34
## Scopes
@@ -220,6 +221,11 @@ def key_correctness
220
221
end
221
222
222
223
224
+ def key_not_admin
225
+ errors . add ( :key , :taken_by_gitolite_admin ) if fingerprint == RedmineGitHosting ::Config . gitolite_ssh_public_key_fingerprint
226
+ end
227
+
228
+
223
229
def key_uniqueness
224
230
return if !new_record?
225
231
existing = GitolitePublicKey . find_by_fingerprint ( fingerprint )
Original file line number Diff line number Diff line change @@ -56,6 +56,11 @@ def gitolite_ssh_public_key
56
56
end
57
57
58
58
59
+ def gitolite_ssh_public_key_fingerprint
60
+ @gitolite_ssh_fingerprint ||= RedmineGitHosting ::Utils . ssh_fingerprint ( File . read ( gitolite_ssh_public_key ) )
61
+ end
62
+
63
+
59
64
def gitolite_config_file
60
65
File . basename ( RedmineGitHosting ::Config . get_setting ( :gitolite_config_file ) )
61
66
end
You can’t perform that action at this time.
0 commit comments