Class: Ufo::CLI::Docker

Inherits:
Ufo::Command show all
Defined in:
lib/ufo/cli/docker.rb

Instance Method Summary collapse

Methods inherited from Ufo::Command

alter_command_description, check_project!, command_help, configure_dsl_evaluator, dispatch, exit_on_failure?, help_flags, subcommand?, website

Methods included from Utils::Logging

#logger

Instance Method Details

#baseObject



31
32
33
34
35
36
37
38
39
40
41
# File 'lib/ufo/cli/docker.rb', line 31

def base
  builder = Ufo::Docker::Builder.new(options.dup.merge(
    image_namespace: "base",
    dockerfile: "Dockerfile.base"
  ))
  builder.build
  builder.push if options[:push]
  builder.update_dockerfile
  Ufo::Docker::Cleaner.new(builder.image_name, options.merge(tag_prefix: "base")).cleanup
  Ufo::Ecr::Cleaner.new(builder.image_name, options.merge(tag_prefix: "base")).cleanup
end

#buildObject



6
7
8
9
10
# File 'lib/ufo/cli/docker.rb', line 6

def build
  builder = Ufo::Docker::Builder.new(options)
  builder.build
  push if options[:push]
end

#clean(image_name) ⇒ Object



55
56
57
# File 'lib/ufo/cli/docker.rb', line 55

def clean(image_name)
  Docker::Cleaner.new(image_name, options).cleanup
end

#compileObject



14
15
16
17
# File 'lib/ufo/cli/docker.rb', line 14

def compile
  builder = Ufo::Docker::Builder.new(options)
  builder.compile
end

#nameObject



46
47
48
49
# File 'lib/ufo/cli/docker.rb', line 46

def name
  docker_image = Ufo::Docker::Builder.new(options).docker_image
  puts docker_image
end

#push(docker_image = nil) ⇒ Object



22
23
24
25
26
# File 'lib/ufo/cli/docker.rb', line 22

def push(docker_image=nil)
  # docker_image of nil results in defaulting to the last built image by ufo docker build
  pusher = Ufo::Docker::Pusher.new(docker_image, options)
  pusher.push
end