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



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

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

#initObject



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

def init
  Init.new(options).setup
end

#scale(service, count) ⇒ Object



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

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

#ship(service) ⇒ Object



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

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



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

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



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

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

#versionObject



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

def version
  puts Ufo::VERSION
end