1 # simple build file to be used locally by Sam
7 $docker_squash = "https://github.com/jwilder/docker-squash/releases/download/v0.2.0/docker-squash-linux-amd64-v0.2.0.tar.gz"
9 $base_image = "discourse/base:#{$version}"
10 $image = "discourse/discourse:#{$version}"
11 $test = "discourse/discourse_test:#{$version}"
13 if ENV["USER"] != "root"
14 STDERR.puts
"Build script must be ran as root due to docker-squash"
20 PTY
.spawn(command
) do |stdin, stdout, pid
|
34 def ensure_docker_squash
35 return if File
.exist
?("docker-squash")
36 run ("wget #{$docker_squash}")
37 run ("tar -xzvf *.tar.gz")
38 run ("rm -f docker-squash-linux*")
43 def build(path
, tag
, is_base
)
44 lines
= run("cd #{path} && docker build .")
45 img
= lines
[-1]["successfully built ".length
..-1].strip
47 run("docker save #{img} | ./docker-squash -t #{tag} -verbose #{is_base && "-from root
"} | docker load")
50 build("base",$base_image,true)
51 build("discourse",$image,false)
52 build("discourse_test",$test,false)