inspec/bin/vulcano
Dominik Richter e9d642fc61 feature: replace vcheck
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-06-07 21:41:54 +02:00

42 lines
1.1 KiB
Ruby
Executable file

#!/usr/bin/env ruby
# Copyright 2015 Dominik Richter. All rights reserved.
require 'thor'
require 'json'
require_relative '../lib/vulcano'
class VulcanoCLI < Thor
desc "json PATH", "read all tests in PATH and generate a JSON-profile"
option :output, aliases: :o, type: :string
option :print, aliases: :p, type: :boolean
def json(*paths)
paths.each do |path|
vc = Vulcano::Profiles.new({ quiet: options[:print] })
vc.add_folder(path)
if options[:print]
puts JSON.pretty_generate( vc.profiles )
else
dst = options[:output] || File.join( path, '.vulcano.json' )
if File::exist? dst
puts "----> updating #{dst}"
else
puts "----> creating #{dst}"
end
fdst = File::expand_path(dst)
File::write(fdst, JSON.dump(vc.profiles))
end
end
end
# desc "check PATH", "check all tests in PATH"
# def check(*paths)
# paths.each do |path|
# puts "#{path}"
# Vulcano::Checks.new.valid_folder? path
# puts
# end
# end
end
VulcanoCLI.start(ARGV)