class RubyFly::Commands::Status
Public Class Methods
new(*args)
click to toggle source
Calls superclass method
RubyFly::Commands::Mixins::Environment::new
# File lib/ruby_fly/commands/status.rb, line 10 def initialize(*args) super(*args) @stdout = StringIO.new unless (defined?(@stdout) && @stdout.respond_to?(:string)) @stderr = StringIO.new unless (defined?(@stderr) && @stderr.respond_to?(:string)) end
Public Instance Methods
configure_command(builder, opts)
click to toggle source
Calls superclass method
RubyFly::Commands::Mixins::Environment#configure_command
# File lib/ruby_fly/commands/status.rb, line 18 def configure_command(builder, opts) builder = super(builder, opts) missing_params = [ :target ].select { |param| opts[param].nil? } unless missing_params.empty? description = missing_params.map { |p| "'#{p}'" }.join(', ') raise( ArgumentError, "Error: #{description} required but not provided.") end target = opts[:target] builder .with_subcommand('status') do |sub| sub = sub.with_option('-t', target) sub end end
do_after(opts)
click to toggle source
# File lib/ruby_fly/commands/status.rb, line 49 def do_after(opts) output = stdout.string error = stderr.string return :logged_in if output =~ /logged in successfully/ return :logged_out if error =~ /logged out/ return :session_expired if error =~ /please login again/ return :unknown_target if error =~ /error: unknown target/ :unknown_status end
do_around(opts, &block)
click to toggle source
# File lib/ruby_fly/commands/status.rb, line 41 def do_around(opts, &block) begin block.call(opts) rescue Open4::SpawnError => e raise e unless e.status.exitstatus == 1 end end