class Dependabot::CLI::Scan
Attributes
options[R]
path[R]
Public Class Methods
new(path, options)
click to toggle source
# File lib/dependabot/cli/scan.rb, line 8 def initialize(path, options) @path = ::Pathname.new(path) @options = options end
Public Instance Methods
run()
click to toggle source
# File lib/dependabot/cli/scan.rb, line 13 def run each_dependency do |dependency| update(dependency) if match?(dependency) end end
Private Instance Methods
each_dependency(&block)
click to toggle source
# File lib/dependabot/cli/scan.rb, line 27 def each_dependency(&block) each_file do |file| ::Spandx::Core::Parser.parse(file).each(&block) end end
each_file(&block)
click to toggle source
# File lib/dependabot/cli/scan.rb, line 21 def each_file(&block) ::Spandx::Core::PathTraversal .new(path, recursive: options[:recursive]) .each(&block) end
match?(dependency)
click to toggle source
# File lib/dependabot/cli/scan.rb, line 41 def match?(dependency) options[:dependency].nil? || options[:dependency] == dependency.name end
update(dependency)
click to toggle source
# File lib/dependabot/cli/scan.rb, line 33 def update(dependency) ::Dependabot.logger.info("Updating #{dependency.name}…") ::Dependabot::Publish.new(dependency).update!(push: options[:push]) rescue StandardError => boom Dependabot.logger.error(boom) boom.backtrace.each { |x| Dependabot.logger.debug(x) } end