diff options
author | Alexis Reigel <mail@koffeinfrei.org> | 2017-06-15 13:43:04 +0300 |
---|---|---|
committer | Alexis Reigel <mail@koffeinfrei.org> | 2017-07-27 16:42:53 +0300 |
commit | 5d5fd4babe4cb75c7f8f9f18cc86c63a0fa58d16 (patch) | |
tree | 928b5582a8119277bc61605175399820e555a374 /lib/gitlab/gpg | |
parent | 34810acd6c3d4dd27f43f6f07e47b4e06bb95f82 (diff) |
store gpg_key_primary_keyid for unknown gpg keys
we need to store the keyid to be able to update the signature later in
case the missing key is added later.
Diffstat (limited to 'lib/gitlab/gpg')
-rw-r--r-- | lib/gitlab/gpg/commit.rb | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/gitlab/gpg/commit.rb b/lib/gitlab/gpg/commit.rb index 2b61caaebb5..8d2e6269618 100644 --- a/lib/gitlab/gpg/commit.rb +++ b/lib/gitlab/gpg/commit.rb @@ -43,12 +43,14 @@ module Gitlab end def create_cached_signature!(gpg_key) + verified_signature_result = verified_signature + GpgSignature.create!( commit_sha: commit.sha, project: commit.project, gpg_key: gpg_key, - gpg_key_primary_keyid: gpg_key&.primary_keyid, - valid_signature: !!(gpg_key && gpg_key.verified? && verified_signature.valid?) + gpg_key_primary_keyid: gpg_key&.primary_keyid || verified_signature_result.fingerprint, + valid_signature: !!(gpg_key && gpg_key.verified? && verified_signature_result.valid?) ) end end |