class Cli

Public Instance Methods

connect() click to toggle source
# File lib/ec2-ssh/cli.rb, line 33
def connect
  extend Aws
  extend Ssh
  extend Utils

  set_ssh(options[:user])
  aws_init(options[:profile], options[:region])
    
  if options[:as]
    get_auto_scale_groups
  elsif options[:tag_value]
    get_instances(options[:tag_key].chomp, options[:tag_value].chomp)
  end
  
  if options[:terminal]
    open_in_terminal
  else

    if options[:parallel] && options[:sequence]
      say "You can't run both in sequence and in parallel at the same time"
      exit 1
    end

    mode = :parallel if options[:parallel] || mode.nil?
    mode = :groups   if options[:groups]
    mode = :sequence if options[:sequence]

    dsl_options = {}
    dsl_options[:in] = mode
    dsl_options[:wait]  = options[:wait] if options[:wait]
    dsl_options[:limit] = options[:groups_limit] if options[:groups_limit]
    
    say "user: #{options[:user]}\ndsl_options: #{dsl_options}\ncmd: #{options[:cmd]}", color = :cyan
    ssh_to(options[:user], dsl_options, options[:cmd])
  end
end
version() click to toggle source
# File lib/ec2-ssh/cli.rb, line 72
def version
  say Ec2Ssh::ABOUT, color = :green
end