lib/simple_deploy/cli/outputs.rb in simple_deploy-0.6.4 vs lib/simple_deploy/cli/outputs.rb in simple_deploy-0.6.5

- old
+ new

@@ -1,12 +1,15 @@ require 'trollop' module SimpleDeploy module CLI + class Outputs + include Shared + def show - opts = Trollop::options do + @opts = Trollop::options do version SimpleDeploy::VERSION banner <<-EOS Show outputs of a stack. @@ -18,28 +21,38 @@ opt :log_level, "Log level: debug, info, warn, error", :type => :string, :default => 'warn' opt :name, "Stack name to manage", :type => :string end - CLI::Shared.valid_options? :provided => opts, - :required => [:environment, :name] + valid_options? :provided => @opts, + :required => [:environment, :name] - config = Config.new.environment opts[:environment] + config = Config.new.environment @opts[:environment] - logger = SimpleDeployLogger.new :log_level => opts[:log_level] - - stack = Stack.new :environment => opts[:environment], - :name => opts[:name], + stack = Stack.new :environment => @opts[:environment], + :name => @opts[:name], :config => config, :logger => logger - # we need a little whitespace - puts + rescue_stackster_exceptions_and_exit do + outputs = stack.outputs - outputs = stack.outputs - outputs.each do |hash| - puts "%s: %s" % [hash['OutputKey'], hash['OutputValue']] + logger.info "No outputs." unless outputs.any? + + outputs.each do |hash| + puts "%s: %s" % [hash['OutputKey'], hash['OutputValue']] + end end end + + def logger + @logger ||= SimpleDeployLogger.new :log_level => @opts[:log_level] + end + + def command_summary + 'Show outputs of a stack' + end + end + end end