-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathsetup_qa_vm_jenkins_job.sh
More file actions
54 lines (42 loc) · 1.26 KB
/
setup_qa_vm_jenkins_job.sh
File metadata and controls
54 lines (42 loc) · 1.26 KB
1
2
3
4
5
6
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# we can move SRC_IMAGE and IMG_ROOT_DEVICE into Job Parameters if we want to use different source images
export SRC_IMAGE="http://cloud-images.ubuntu.com/precise/current/precise-server-cloudimg-amd64-disk1.img"
export IMG_ROOT_DEVICE="/dev/sda"
export MNT="/mnt/rallyimg"
sudo mkdir -p $MNT
wget -q -N "$SRC_IMAGE"
IMG=`echo $SRC_IMAGE | awk -F/ '{ print $NF }'`
cp $IMG base.img
sudo guestmount -a base.img -m $IMG_ROOT_DEVICE $MNT
sudo mount -o bind /proc $MNT/proc
sudo mount -o bind /sys $MNT/sys
sudo mount -o bind /dev $MNT/dev
curl -s https://raw2.github.com/adidenko/scripts/master/setup_qa_vm_image.sh > setup_stuff.sh || \
(
sudo umount $MNT/sys $MNT/proc $MNT/dev
sudo umount $MNT
exit 1
)
sudo cp setup_stuff.sh $MNT/usr/local/bin/setup_stuff.sh || \
(
sudo umount $MNT/sys $MNT/proc $MNT/dev
sudo umount $MNT
exit 1
)
sudo chmod 755 $MNT/usr/local/bin/setup_stuff.sh || \
(
sudo umount $MNT/sys $MNT/proc $MNT/dev
sudo umount $MNT
exit 1
)
# Run installation script
sudo chroot $MNT /usr/local/bin/setup_stuff.sh || \
(
sudo umount $MNT/sys $MNT/proc $MNT/dev
sudo umount $MNT
exit 1
)
sudo umount $MNT/sys $MNT/proc $MNT/dev
sudo umount $MNT
# now we have base.img image with our stuff
echo DONE
ls -la base.img