More vmbuild hacks.
[cdist.git] / vmbuild
1 #!/bin/bash
2 set -e
3
4 if [ "$1" == "" -o "$2" == "" ]; then
5     echo "Syntax: $0 <target> <checkout> [<output-dir>]"
6     exit 1
7 fi
8
9 IFS='-' read distro version bits <<< $1
10
11 checkout=$2
12 output=$3
13
14 if [ "$bits" == "32" ]; then
15     port=2000
16 elif [ "$bits" == "64" ]; then
17     port=2001
18 else
19     echo "Unrecognised bit depth $bits"
20     exit 1
21 fi
22
23 nohup vboxheadless --startvm fedora-22-$bits &
24 vbox=$!
25 sleep 10
26 ssh -p $port carl@localhost "rm -rf fedora-*"
27 ssh -p $port carl@localhost cdist -p dcpomatic -c $checkout -t host package
28 if [ "$output" != "" ]; then
29     scp -P $port carl@localhost:fedora-22-$bits/* $output/
30 fi
31 ssh -p $port carl@localhost "sudo /sbin/poweroff"
32
33 set +e
34 while [[ ( -d /proc/$vbox ) && ( -z `grep zombie /proc/$vbox/status` ) ]]; do
35     sleep 1
36 done