class Vara::ProductArtifactValidator

Public Class Methods

validate_file_checksum(file_metadata, file_name) click to toggle source
# File lib/vara/product_artifact_validator.rb, line 5
def self.validate_file_checksum(file_metadata, file_name)
  raise "No checksum for file #{file_name}!" unless file_metadata.md5 || file_metadata.sha1

  validate_md5(file_metadata, file_name) if file_metadata.md5

  validate_sha1(file_metadata, file_name) if file_metadata.sha1
end
validate_md5(file_metadata, file_name) click to toggle source
# File lib/vara/product_artifact_validator.rb, line 19
def self.validate_md5(file_metadata, file_name)
  md5_got = Digest::MD5.file(file_name).hexdigest
  md5_expected = file_metadata.md5
  raise "md5 mismatch for file #{file_name}, expected #{md5_expected}, got #{md5_got}" if md5_got != md5_expected
end
validate_sha1(file_metadata, file_name) click to toggle source
# File lib/vara/product_artifact_validator.rb, line 13
def self.validate_sha1(file_metadata, file_name)
  sha1_got = Digest::SHA1.file(file_name).hexdigest
  sha1_expected = file_metadata.sha1
  raise "sha1 mismatch for file #{file_name}, expected #{sha1_expected}, got #{sha1_got}" if sha1_got != sha1_expected
end