Module: Docker::Cli::ImageHelper

Defined in:
lib/docker/cli/image_helper.rb

Instance Method Summary collapse

Instance Method Details

#build_image(pmt, cmdFact) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/docker/cli/image_helper.rb', line 7

def build_image(pmt, cmdFact)
  
  root = Dir.getwd
  dockerfile = File.join(root, "Dockerfile")

  again = true
  while again
    if not File.exist?(dockerfile)
      dockerfile = pmt.ask(" #{dockerfile} does not exist. Please provide new location of Dockerfile: ", required: true) 
    else
      again = false
    end
  end

  again = true
  while again
    dname = pmt.ask(" Please provide name of image at local : ", required: true)
    if cmdFact.is_image_exist?(dname)
      
      reuse = pmt.yes?(" Given local image name '#{dname}' already taken. Use back the same image? 'No' to retry with new name : ")
      if reuse 
        again = false
      end
    else
      rv = cmdFact.build_image(dname, dockerfile: dockerfile)
      raise CommandFailed, "Build image command failed. Error was : #{rv.err_stream}"
      again = false
    end
  end

  dname

end