Class: Ufo::CLI

Inherits:
Command show all
Defined in:
lib/ufo/cli.rb,
lib/ufo/cli/help.rb

Defined Under Namespace

Classes: Help

Instance Method Summary collapse

Methods inherited from Command

dispatch

Instance Method Details

#destroy(service) ⇒ Object



90
91
92
93
# File 'lib/ufo/cli.rb', line 90

def destroy(service)
  task_definition = options[:task] || service # convention
  Destroy.new(service, options).bye
end

#initObject



27
28
29
# File 'lib/ufo/cli.rb', line 27

def init
  Init.new(options).setup
end

#scale(service, count) ⇒ Object



97
98
99
# File 'lib/ufo/cli.rb', line 97

def scale(service, count)
  Scale.new(service, count, options).update
end

#ship(service) ⇒ Object



47
48
49
50
51
52
53
54
55
56
57
# File 'lib/ufo/cli.rb', line 47

def ship(service)
  builder = build_docker

  task_definition = options[:task] || service # convention
  Tasks::Builder.register(task_definition, options) if options[:tasks]
  LogGroup.new(task_definition, options).create
  ship = Ship.new(service, task_definition, options)
  ship.deploy

  cleanup(builder.image_name)
end

#ships(*services) ⇒ Object



62
63
64
65
66
67
68
69
70
71
72
73
74
75
# File 'lib/ufo/cli.rb', line 62

def ships(*services)
  builder = build_docker

  services.each_with_index do |service|
    service_name, task_defintion_name = service.split(':')
    task_definition = task_defintion_name || service_name # convention
    Tasks::Builder.register(task_definition, options) if options[:tasks]
    LogGroup.new(task_definition, options).create
    ship = Ship.new(service, task_definition, options)
    ship.deploy
  end

  cleanup(builder.image_name)
end

#task(task_definition) ⇒ Object



81
82
83
84
85
# File 'lib/ufo/cli.rb', line 81

def task(task_definition)
  Docker::Builder.build(options)
  Tasks::Builder.register(task_definition, options)
  Task.new(task_definition, options).run
end

#versionObject



102
103
104
# File 'lib/ufo/cli.rb', line 102

def version
  puts Ufo::VERSION
end