diff options
Diffstat (limited to 'lib/gitlab/gpg/invalid_gpg_signature_updater.rb')
-rw-r--r-- | lib/gitlab/gpg/invalid_gpg_signature_updater.rb | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/gitlab/gpg/invalid_gpg_signature_updater.rb b/lib/gitlab/gpg/invalid_gpg_signature_updater.rb index a525ee7a9ee..7bdf6760295 100644 --- a/lib/gitlab/gpg/invalid_gpg_signature_updater.rb +++ b/lib/gitlab/gpg/invalid_gpg_signature_updater.rb @@ -6,9 +6,15 @@ module Gitlab end def run + # `OR valid_signature` is for backwards compatibility: legacy records + # that weren't migrated to use the new `#verification_status` have + # `#valid_signature` set instead GpgSignature .select(:id, :commit_sha, :project_id) - .where('gpg_key_id IS NULL OR valid_signature = ?', false) + .where('gpg_key_id IS NULL OR valid_signature = ? OR verification_status <> ?', + false, + GpgSignature.verification_statuses[:verified] + ) .where(gpg_key_primary_keyid: @gpg_key.primary_keyid) .find_each { |sig| sig.gpg_commit.update_signature!(sig) } end |