Module: BadLinkFinder
- Defined in:
- lib/bad_link_finder/result_cache.rb,
lib/bad_link_finder.rb,
lib/bad_link_finder/link.rb,
lib/bad_link_finder/page.rb,
lib/bad_link_finder/site.rb,
lib/bad_link_finder/version.rb,
lib/bad_link_finder/csv_builder.rb,
lib/bad_link_finder/page_checker.rb,
lib/bad_link_finder/site_checker.rb
Overview
If/when the bad link finder is converted to a set of parallel processes this cache will need to be backed by something threadsafe.
Defined Under Namespace
Classes: CSVBuilder, EnvironmentVariableError, Link, NullLogger, Page, PageChecker, ResultCache, Site, SiteChecker
Constant Summary collapse
- VERSION =
"0.3.3"
Class Method Summary collapse
Class Method Details
.run(logger = NullLogger.new) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/bad_link_finder.rb', line 7 def self.run(logger = NullLogger.new) ['MIRROR_DIR', 'REPORT_OUTPUT_FILE', 'SITE_HOST'].each do |var| raise EnvironmentVariableError.new("Missing environment variable #{var}") unless ENV.has_key?(var) end raise EnvironmentVariableError.new("MIRROR_DIR '#{ENV['MIRROR_DIR']}' does not exist") unless Dir.exist?(ENV['MIRROR_DIR']) report_path = Pathname.new(ENV['REPORT_OUTPUT_FILE']) report_path.parent.mkpath csv_file = report_path.open('w') csv_builder = BadLinkFinder::CSVBuilder.new(csv_file) BadLinkFinder::SiteChecker.new(ENV['MIRROR_DIR'], ENV['SITE_HOST'], csv_builder, ENV['START_FROM'], logger).run csv_file.close nil end |