class Ufo::CLI

Public Instance Methods

apps() click to toggle source
# File lib/ufo/cli.rb, line 148
def apps
  Apps.new(options).list_all
end
build_docker() click to toggle source
# File lib/ufo/cli.rb, line 219
def build_docker
  builder = Docker::Builder.new(options)
  builder.build
  builder.push
  builder
end
cancel(service=:current) click to toggle source
# File lib/ufo/cli.rb, line 121
def cancel(service=:current)
  task_definition = options[:task] || service # convention
  Cancel.new(service, options).run
end
cleanup(image_name) click to toggle source
# File lib/ufo/cli.rb, line 226
def cleanup(image_name)
  Docker::Cleaner.new(image_name, options).cleanup
  Ecr::Cleaner.new(image_name, options).cleanup
end
completion(*params) click to toggle source
# File lib/ufo/cli.rb, line 203
def completion(*params)
  Completer.new(CLI, *params).run
end
completion_script() click to toggle source
# File lib/ufo/cli.rb, line 209
def completion_script
  Completer::Script.generate
end
current() click to toggle source
# File lib/ufo/cli.rb, line 132
def current
  Current.new(options).run
end
deploy(service=:current) click to toggle source
# File lib/ufo/cli.rb, line 52
def deploy(service=:current)
  service = service == :current ? Current.service! : service
  task_definition = options[:task] || service # convention
  Tasks::Builder.build(options) if options[:build]
  Tasks::Register.register(task_definition, options) if options[:register]
  ship = Ship.new(service, options.merge(task_definition: task_definition))
  ship.deploy
end
destroy(service=:current) click to toggle source
# File lib/ufo/cli.rb, line 140
def destroy(service=:current)
  task_definition = options[:task] || service # convention
  Destroy.new(service, options).bye
end
logs(service=:current) click to toggle source
# File lib/ufo/cli.rb, line 197
def logs(service=:current)
  Logs.new(service, options).run
end
ps(service=:current) click to toggle source
# File lib/ufo/cli.rb, line 169
def ps(service=:current)
  Ps.new(service, options).run
end
releases(service=:current) click to toggle source
# File lib/ufo/cli.rb, line 175
def releases(service=:current)
  Releases.new(service, options).list
end
resources(service=:current) click to toggle source
# File lib/ufo/cli.rb, line 154
def resources(service=:current)
  Info.new(service, options).run
end
rollback(service=:current, version) click to toggle source
# File lib/ufo/cli.rb, line 79
def rollback(service=:current, version)
  service = service == :current ? Current.service! : service
  rollback = Rollback.new(service, options.merge(version: version))
  rollback.deploy
end
scale(service=:current, count) click to toggle source
# File lib/ufo/cli.rb, line 160
def scale(service=:current, count)
  Scale.new(service, count, options).update
end
ship(service=:current) click to toggle source
# File lib/ufo/cli.rb, line 64
def ship(service=:current)
  service = service == :current ? Current.service! : service
  builder = build_docker

  task_definition = options[:task] || service # convention
  Tasks::Builder.ship(task_definition, options)
  ship = Ship.new(service, options.merge(task_definition: task_definition))
  ship.deploy

  cleanup(builder.image_name)
end
ships(*services) click to toggle source
# File lib/ufo/cli.rb, line 89
def ships(*services)
  builder = build_docker

  if services.empty? && !Current.services&.empty?
    services = Current.services
  end
  services.each_with_index do |service|
    service_name, task_definition_name = service.split(':')
    task_definition = task_definition_name || service_name # convention
    Tasks::Builder.ship(task_definition, options)
    ship = Ship.new(service, options.merge(task_definition: task_definition))
    ship.deploy
  end

  cleanup(builder.image_name)
end
status(service=:current) click to toggle source
# File lib/ufo/cli.rb, line 187
def status(service=:current)
  Status.new(service, options).run
end
stop(service=:current) click to toggle source
# File lib/ufo/cli.rb, line 181
def stop(service=:current)
  Stop.new(service, options).run
end
task(task_definition) click to toggle source
# File lib/ufo/cli.rb, line 112
def task(task_definition)
  Docker::Builder.build(options) unless @options[:task_only]
  Tasks::Builder.ship(task_definition, options) unless @options[:task_only]
  Task.new(task_definition, options).run
end
version() click to toggle source
# File lib/ufo/cli.rb, line 214
def version
  puts VERSION
end