Class: Gem::Guardian::RegistryAudit
- Inherits:
-
Object
- Object
- Gem::Guardian::RegistryAudit
- Defined in:
- lib/gem/guardian/registry_audit.rb
Overview
Audits provenance support across gems visible from configured registry sources.
The audit intentionally verifies provenance metadata only. It does not download
every artifact by default because a full checksum audit of a registry can be
expensive and unfriendly to remote services. Project-level checksum verification
remains the responsibility of gem-guardian verify and Bundler lockfiles.
Defined Under Namespace
Classes: EntryResult, Result
Instance Method Summary collapse
-
#initialize(registry: Registry.new, provenance_verifier: ProvenanceVerifier.new) ⇒ RegistryAudit
constructor
A new instance of RegistryAudit.
-
#run(limit: nil) ⇒ Result
Runs the audit.
Constructor Details
#initialize(registry: Registry.new, provenance_verifier: ProvenanceVerifier.new) ⇒ RegistryAudit
Returns a new instance of RegistryAudit.
63 64 65 66 |
# File 'lib/gem/guardian/registry_audit.rb', line 63 def initialize(registry: Registry.new, provenance_verifier: ProvenanceVerifier.new) @registry = registry @provenance_verifier = provenance_verifier end |
Instance Method Details
#run(limit: nil) ⇒ Result
Runs the audit.
72 73 74 75 76 77 78 |
# File 'lib/gem/guardian/registry_audit.rb', line 72 def run(limit: nil) Result.new( @registry.each_latest_spec(limit:).map do |entry| EntryResult.new(entry:, provenance: @provenance_verifier.verify(entry.dependency)) end ) end |