Module: Bootprint

Defined in:
lib/bootprint/analysis.rb,
lib/bootprint.rb,
lib/bootprint/cli.rb,
lib/bootprint/diff.rb,
lib/bootprint/rules.rb,
lib/bootprint/docker.rb,
lib/bootprint/doctor.rb,
lib/bootprint/errors.rb,
lib/bootprint/matrix.rb,
lib/bootprint/policy.rb,
lib/bootprint/schema.rb,
lib/bootprint/plugins.rb,
lib/bootprint/railtie.rb,
lib/bootprint/version.rb,
lib/bootprint/snapshot.rb,
lib/bootprint/diagnosis.rb,
lib/bootprint/sanitizer.rb,
lib/bootprint/advisories.rb,
lib/bootprint/formatters.rb,
lib/bootprint/rules/rule.rb,
lib/bootprint/rails_state.rb,
lib/bootprint/configuration.rb,
lib/bootprint/rules/builtin.rb,
lib/bootprint/rules/finding.rb,
lib/bootprint/rules/registry.rb,
lib/bootprint/collectors/gems.rb,
lib/bootprint/formatters/json.rb,
lib/bootprint/collectors/rails.rb,
lib/bootprint/formatters/human.rb,
lib/bootprint/formatters/sarif.rb,
lib/bootprint/security/auditor.rb,
lib/bootprint/collectors/runtime.rb,
lib/bootprint/formatters/markdown.rb,
lib/bootprint/collectors/libraries.rb,
lib/bootprint/collectors/toolchain.rb,
lib/bootprint/initializer_profiler.rb,
lib/bootprint/collectors/filesystem.rb,
lib/bootprint/collectors/environment.rb,
lib/bootprint/advisory_bundle_matcher.rb,
lib/bootprint/collectors/operating_system.rb

Overview

Backward-compatible facade for the 0.1 API.

Defined Under Namespace

Modules: AdvisoryBundleMatcher, Collectors, Docker, Formatters, InitializerProfiler, Plugin, Plugins, RailsState, Rules, Sanitizer, Schema, Security Classes: Advisories, Analysis, CLI, Configuration, ConfigurationError, Diagnosis, Diff, DockerError, Doctor, Error, InvalidSnapshotError, Matrix, PluginError, Policy, Railtie, Report, Snapshot

Constant Summary collapse

VERSION =
"0.4.0"

Class Method Summary collapse

Class Method Details

.advise(snapshot, bundle: Advisories::DEFAULT_BUNDLE) ⇒ Object



43
44
45
# File 'lib/bootprint.rb', line 43

def advise(snapshot, bundle: Advisories::DEFAULT_BUNDLE)
  advisories(snapshot, bundle:)
end

.advisories(snapshot, bundle: Advisories::DEFAULT_BUNDLE) ⇒ Object



39
40
41
# File 'lib/bootprint.rb', line 39

def advisories(snapshot, bundle: Advisories::DEFAULT_BUNDLE)
  Advisories.advisories(bundle).matches(snapshot)
end

.capture(label: nil, **options) ⇒ Object



30
31
32
# File 'lib/bootprint.rb', line 30

def capture(label: nil, **options)
  Snapshot.capture(label:, **options)
end

.configurationObject



18
19
20
# File 'lib/bootprint.rb', line 18

def configuration
  @configuration ||= Configuration.new
end

.configure {|configuration| ... } ⇒ Object

Yields:



22
23
24
# File 'lib/bootprint.rb', line 22

def configure
  yield(configuration)
end

.matrix(snapshots) ⇒ Object

Compares named snapshots and identifies consensus values and outliers.



35
36
37
# File 'lib/bootprint.rb', line 35

def matrix(snapshots)
  Matrix.new(snapshots)
end

.rule(name, severity: nil, &block) ⇒ Object



26
27
28
# File 'lib/bootprint.rb', line 26

def rule(name, severity: nil, &block)
  Rules.define(name, severity: severity, &block)
end