-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild-all.sh
58 lines (45 loc) · 1.61 KB
/
build-all.sh
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
54
55
56
57
export ARCH=i386
br_ver="2015.05"
mkdir -p ../download
ln -snf ../download download
( cd download && wget http://buildroot.uclibc.org/downloads/buildroot-${br_ver}.tar.gz )
tar -xvf download/buildroot-${br_ver}.tar.gz
ln -snf buildroot-${br_ver} buildroot
./bin/mkcabundle > src/etc/ssl/certs/ca-certificates.crt
( cd buildroot && QUILT_PATCHES=$PWD/../patches-buildroot quilt push -a )
make ARCH=i386 br-source
make ARCH=i386 OUT_D=$PWD/output/i386
kver="3.19.0-20.20~14.04.1"
./bin/grab-kernels "$kver"
./bin/bundle -v --arch=$ARCH output/$ARCH/rootfs.tar download/kernel-$ARCH.deb output/$ARCH/images
VERSION=current
CURDIR=$(pwd)
export KERNEL=$CURDIR/images/cirros-$VERSION-$ARCH-vmlinuz
export INITRD=$CURDIR/images/cirros-$VERSION-$ARCH-initrd
BLANK=images/cirros-$VERSION-$ARCH-blank.img
mkdir -p images
chown ps:ps images
mv output/i386/images/kernel $KERNEL
mv output/i386/images/initramfs $INITRD
mv output/i386/images/blank.img $BLANK
export VM_NAME=cirros$$
IMAGES_BASE=$CURDIR/images
cp $BLANK images/$VM_NAME.img
export VM_DISK=$IMAGES_BASE/$VM_NAME.img
chown ps:ps $IMAGES_BASE/$VM_NAME.img
su -c 'virt-install -r 256 \
-n $VM_NAME \
--vcpus=1 \
--import \
--autostart \
--memballoon virtio \
--network bridge=virbr0 \
--boot kernel=$KERNEL,initrd=$INITRD,kernel_args="ds=nocloud hostname=test-all ipv4_addr=10.1.0.2 ipv4_mask=255.255.255.0 ipv4_gw=10.1.0.1" \
--disk $VM_DISK \
--graphics vnc,listen=0.0.0.0 --noautoconsole \
--serial tcp,host=127.0.0.1:5701,mode=bind,protocol=telnet' ps
#virsh vncdisplay $VM_NAME &
vncviewer :0 &
telnet 127.0.0.1 5701
virsh undefine $VM_NAME
virsh destroy $VM_NAME