class BoshJobDocker::BoshJobDockerFile
Builds a Dockerfile for a BOSH job.
Attributes
docker_file[R]
Public Class Methods
new()
click to toggle source
# File lib/bosh_job_docker/bosh_job_docker_file.rb, line 8 def initialize @docker_file = DockerFile.new add_preamble end
Public Instance Methods
add_package(package)
click to toggle source
# File lib/bosh_job_docker/bosh_job_docker_file.rb, line 13 def add_package(package) docker_file.comment(package) docker_file.env('BOSH_INSTALL_TARGET', "/var/vcap/packages/#{package}") docker_file.run('mkdir $BOSH_INSTALL_TARGET') docker_file.run("cd /build/#{package} && bash packaging") docker_file.blank_line end
write(path)
click to toggle source
# File lib/bosh_job_docker/bosh_job_docker_file.rb, line 21 def write(path) @docker_file.write(path) end
Private Instance Methods
add_apt_gets()
click to toggle source
# File lib/bosh_job_docker/bosh_job_docker_file.rb, line 36 def add_apt_gets # rubocop:disable MethodLength docker_file.apt_get(%w( build-essential cmake gettext libbz2-dev libcap-dev libreadline-dev libssl-dev libxml2-dev libxslt1-dev zlib1g-dev unzip )) end
add_preamble()
click to toggle source
# File lib/bosh_job_docker/bosh_job_docker_file.rb, line 27 def add_preamble docker_file.from('ubuntu') docker_file.run('apt-get update') add_apt_gets docker_file.add('build', '/build') docker_file.run('mkdir -p /var/vcap/packages') docker_file.blank_line end