class Escualo::Session::Docker

Attributes

dockerfile[RW]

Public Class Methods

started(options = struct) click to toggle source
# File lib/escualo/session/docker_session.rb, line 50
def self.started(options = struct)
  new.tap do |it|
    it.start!(options)
  end
end

Public Instance Methods

ask(*) click to toggle source
# File lib/escualo/session/docker_session.rb, line 38
def ask(*)
  raise 'can not ask on a docker session'
end
clean_environment_variables!(*) click to toggle source
# File lib/escualo/session/docker_session.rb, line 9
def clean_environment_variables!(*)
  raise 'can not clean variables on dockerfile optimized mode' unless options.unoptimized_dockerfile
  super
end
finish!(_options) click to toggle source
# File lib/escualo/session/docker_session.rb, line 46
def finish!(_options)
  puts dockerfile
end
set_environment_variables!(variables) click to toggle source
# File lib/escualo/session/docker_session.rb, line 18
def set_environment_variables!(variables)
  return super if options.unoptimized_dockerfile
  variables.each do |key, value|
    dockerfile << "ENV #{key} #{value}\n"
  end
end
setup_environment_variables!() click to toggle source
# File lib/escualo/session/docker_session.rb, line 14
def setup_environment_variables!
  super if options.unoptimized_dockerfile
end
start!(_options) click to toggle source
# File lib/escualo/session/docker_session.rb, line 42
def start!(_options)
  @dockerfile = ''
end
tell!(command) click to toggle source
# File lib/escualo/session/docker_session.rb, line 25
def tell!(command)
  dockerfile << "RUN #{command}\n"
end
unset_environment_variables!(*) click to toggle source
# File lib/escualo/session/docker_session.rb, line 4
def unset_environment_variables!(*)
  raise 'can not unset variables on dockerfile optimized mode' unless options.unoptimized_dockerfile
  super
end
upload!(file, destination) click to toggle source
# File lib/escualo/session/docker_session.rb, line 29
def upload!(file, destination)
  dockerfile << "COPY #{file} #{destination}\n"
end
write_template!(name, template, &block) click to toggle source
# File lib/escualo/session/docker_session.rb, line 33
def write_template!(name, template, &block)
  template.write! name
  block.call name
end