summaryrefslogtreecommitdiff
path: root/app/models/commit.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/models/commit.rb')
-rw-r--r--app/models/commit.rb12
1 files changed, 12 insertions, 0 deletions
diff --git a/app/models/commit.rb b/app/models/commit.rb
index 1e19f00106a..b22aaa3c461 100644
--- a/app/models/commit.rb
+++ b/app/models/commit.rb
@@ -234,6 +234,18 @@ class Commit
@statuses[ref] = pipelines.latest_status(ref)
end
+ def signature
+ return @signature if defined?(@signature)
+
+ sig, signed = @raw.extract_signature(project.repository.raw_repository)
+ if sig && signed
+ GPGME::Crypto.new.verify(sig, signed_text: signed) do |sign|
+ @signature = sign
+ end
+ end
+ @signature ||= nil
+ end
+
def revert_branch_name
"revert-#{short_id}"
end