def execute(args)
if (files = files(args)).length == 0
@log.fatal "Please provide atleast one input file"
raise SystemExit.new("Please provide atleast one input file")
end
@local_hosts = @hosts if @all_hosts_local
output = output(files.first)
if File.exists?(output) && !@force
msg = "Unable to continue, #{output} exists. Run again with --force to overwrite"
@log.fatal msg
raise SystemExit.new(msg)
end
merger = merger(output).new(files, :relative_urls => @relative_urls,
:absolute_urls => @absolute_urls,
:document_root => @document_root,
:hosts => @hosts)
if @verify && !Juicer::Command::Verify.check_all(merger.files.reject { |f| f =~ /\.css$/ }, @log)
@log.error "Problems were detected during verification"
raise SystemExit.new("Input files contain problems") unless @ignore
@log.warn "Ignoring detected problems"
end
merger.set_next(image_embed(output)).set_next(cache_buster(output)).set_next(minifyer)
merger.save(output)
@log.info "Produced #{relative output} from"
merger.files.each { |file| @log.info " #{relative file}" }
rescue FileNotFoundError => err
puts err.message.sub(/:document_root/, "--document-root")
end