Class: DanarchySys::CLI

Inherits:
Object
  • Object
show all
Defined in:
lib/danarchy_sys/cli.rb

Instance Method Summary collapse

Constructor Details

#initializeCLI

Returns a new instance of CLI.



8
9
10
11
12
13
14
15
16
# File 'lib/danarchy_sys/cli.rb', line 8

def initialize
  danarchysys_config = DanarchySys::ConfigManager::Config.new
   = Accounts.chooser(danarchysys_config)
  connection = danarchysys_config[:accounts][]
  puts "OpenStack -> #{}"
  @settings   = danarchysys_config[:global_settings]
  @os_compute = DanarchySys::OpenStack::Compute.new(connection, @settings)
  console
end

Instance Method Details

#consoleObject



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/danarchy_sys/cli.rb', line 18

def console
  menu = Menus.numbered_menu('main')
  Menus.print_menu('main')

  loop do
    print 'command ~: '
    cmd = gets
    cmd = cmd ? cmd.chomp : abort('Exiting!')

    if cmd =~ /^[0-9]*$/
      menu[cmd.to_i].map { |k, v| cmd = k } if menu.keys.include? cmd.to_i
    end

    if cmd == 'instance'
      InstanceManager.manager(@os_compute, @settings)
    elsif cmd == 'keypair'
      KeypairManager.manager(@os_compute)
    elsif cmd == 'help'
      Menus.print_menu('main')
    elsif cmd == 'exit'
      abort('Exiting!')
    else
      Menus.print_menu('main')
      puts "\nCommand \'#{cmd}\' not available. Enter a command from above."
    end
  end
end