2018-09-06 08:29:14 +02:00
|
|
|
module Cask
|
2018-09-04 08:45:48 +01:00
|
|
|
class Cmd
|
2017-05-20 19:08:03 +02:00
|
|
|
class Audit < AbstractCommand
|
2017-05-21 00:15:56 +02:00
|
|
|
option "--download", :download, false
|
|
|
|
option "--token-conflicts", :token_conflicts, false
|
|
|
|
|
2016-09-24 13:52:43 +02:00
|
|
|
def self.help
|
|
|
|
"verifies installability of Casks"
|
|
|
|
end
|
|
|
|
|
|
|
|
def run
|
2018-04-14 11:32:29 +02:00
|
|
|
failed_casks = casks(alternative: -> { Cask.to_a })
|
2017-06-13 17:14:01 +02:00
|
|
|
.reject { |cask| audit(cask) }
|
2017-05-19 21:07:25 +02:00
|
|
|
|
|
|
|
return if failed_casks.empty?
|
|
|
|
raise CaskError, "audit failed for casks: #{failed_casks.join(" ")}"
|
2016-09-24 13:52:43 +02:00
|
|
|
end
|
|
|
|
|
|
|
|
def audit(cask)
|
|
|
|
odebug "Auditing Cask #{cask}"
|
2018-08-31 13:16:11 +00:00
|
|
|
Auditor.audit(cask, audit_download: download?,
|
|
|
|
check_token_conflicts: token_conflicts?,
|
|
|
|
quarantine: quarantine?)
|
2016-09-24 13:52:43 +02:00
|
|
|
end
|
2016-08-18 22:11:42 +03:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|