Use DownloadStrategyDetector to classify mirror URLs

This commit is contained in:
David Broder-Rodgers 2017-01-24 23:11:50 +00:00
parent 81b3368c9c
commit a699d284d0

View File

@ -1490,16 +1490,18 @@ class ResourceAuditor
return unless @online
urls.each do |url|
if url.start_with?("git") || url.end_with?(".git")
unless Utils.git_remote_exists url
problem "The URL #{url} is not a valid git URL"
end
elsif url.start_with? "http", "ftp"
strategy = DownloadStrategyDetector.detect(url)
if strategy <= CurlDownloadStrategy
problem url
status_code = FormulaAuditor.url_status_code url
unless status_code.start_with? "2"
problem "The URL #{url} is not reachable (HTTP status code #{status_code})"
end
elsif url.start_with? "svn"
elsif strategy <= GitDownloadStrategy
unless Utils.git_remote_exists url
problem "The URL #{url} is not a valid git URL"
end
elsif strategy <= SubversionDownloadStrategy
unless Utils.svn_remote_exists url
problem "The URL #{url} is not a valid svn URL"
end