diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-04-20 21:38:24 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-04-20 21:38:24 +0300 |
commit | 983a0bba5d2a042c4a3bbb22432ec192c7501d82 (patch) | |
tree | b153cd387c14ba23bd5a07514c7c01fddf6a78a0 /app/workers/create_commit_signature_worker.rb | |
parent | a2bddee2cdb38673df0e004d5b32d9f77797de64 (diff) |
Add latest changes from gitlab-org/gitlab@12-10-stable-ee
Diffstat (limited to 'app/workers/create_commit_signature_worker.rb')
-rw-r--r-- | app/workers/create_commit_signature_worker.rb | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/app/workers/create_commit_signature_worker.rb b/app/workers/create_commit_signature_worker.rb index 3da21c56eff..9cbc75f8944 100644 --- a/app/workers/create_commit_signature_worker.rb +++ b/app/workers/create_commit_signature_worker.rb @@ -21,14 +21,19 @@ class CreateCommitSignatureWorker # rubocop:disable Scalability/IdempotentWorker return if commits.empty? - # This calculates and caches the signature in the database - commits.each do |commit| + # Instantiate commits first to lazily load the signatures + commits.map! do |commit| case commit.signature_type when :PGP - Gitlab::Gpg::Commit.new(commit).signature + Gitlab::Gpg::Commit.new(commit) when :X509 - Gitlab::X509::Commit.new(commit).signature + Gitlab::X509::Commit.new(commit) end + end + + # This calculates and caches the signature in the database + commits.each do |commit| + commit&.signature rescue => e Rails.logger.error("Failed to create signature for commit #{commit.id}. Error: #{e.message}") # rubocop:disable Gitlab/RailsLogger end |