class Herdsman::CLI
Public Instance Methods
status()
click to toggle source
# File lib/herdsman/cli.rb, line 14 def status cmd = Herdsman::Command::Status.new(herd: herd, logger: logger) result = cmd.run exit result end
version()
click to toggle source
# File lib/herdsman/cli.rb, line 22 def version puts "Herdsman version #{Herdsman::VERSION}" end
Private Instance Methods
config()
click to toggle source
# File lib/herdsman/cli.rb, line 28 def config path = File.expand_path('herdsman.yml', Dir.pwd) Herdsman::Config.new(path, config_overrides) rescue $stderr.puts "ERROR: #{$!.message}" exit 1 end
config_overrides()
click to toggle source
# File lib/herdsman/cli.rb, line 36 def config_overrides overridable_options = %w(fetch_cache revision) options.select { |key, _| overridable_options.include? key } end
env()
click to toggle source
# File lib/herdsman/cli.rb, line 41 def env Herdsman::Environment.new end
herd()
click to toggle source
# File lib/herdsman/cli.rb, line 45 def herd Herdsman::Herd.new(env, config, herd_members(config.repos)) end
herd_members(repos)
click to toggle source
# File lib/herdsman/cli.rb, line 59 def herd_members(repos) repos.map do |herd_member_config| Herdsman::HerdMember.new( Herdsman::GitRepo.new(env, herd_member_config.path), herd_member_config, ) end end
logger()
click to toggle source
# File lib/herdsman/cli.rb, line 49 def logger writer = Logger.new(STDOUT) writer.formatter = proc do |severity, _, _, msg| "#{severity.upcase}: #{msg}\n" end logger = Herdsman::LogAdapter.new(writer) logger.adjust_verbosity(quiet: options[:quiet]) logger end