Class: PreCommit::Checks::Gpg

Inherits:
Shell
  • Object
show all
Defined in:
lib/plugins/pre_commit/checks/gpg.rb

Overview

pre-commit gem plugin to verify GPG signatures when either the file or signature changes

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.descriptionObject

description of the plugin



24
25
26
# File 'lib/plugins/pre_commit/checks/gpg.rb', line 24

def self.description
  "Finds GPG verification problems"
end

Instance Method Details

#call(staged_files) ⇒ nil|Array<PreCommit::ErrorList>

Finds files with signature and verifies them

Parameters:

  • staged_files (Array<String>)

    list of files to check

Returns:

  • (nil|Array<PreCommit::ErrorList>)

    nil when no errors, list of errors otherwise



35
36
37
38
39
40
41
42
43
# File 'lib/plugins/pre_commit/checks/gpg.rb', line 35

def call(staged_files)
  signature_files = staged_files.map { |file| get_signature(file) }.compact.uniq
  return if signature_files.empty?

  errors = signature_files.map { |file| run_check(file) }.compact
  return if errors.empty?

  errors
end