diff options
author | Yves-Alexis Perez <corsac@debian.org> | 2013-02-07 13:27:27 +0100 |
---|---|---|
committer | Yves-Alexis Perez <corsac@debian.org> | 2013-02-07 13:27:27 +0100 |
commit | 7585facf05d927eb6df3929ce09ed5e60d905437 (patch) | |
tree | e4d14b4dc180db20356b6b01ce0112f3a2d7897e /testing/scripts/build-baseimage | |
parent | c1343b3278cdf99533b7902744d15969f9d6fdc1 (diff) | |
download | vyos-strongswan-7585facf05d927eb6df3929ce09ed5e60d905437.tar.gz vyos-strongswan-7585facf05d927eb6df3929ce09ed5e60d905437.zip |
Imported Upstream version 5.0.2
Diffstat (limited to 'testing/scripts/build-baseimage')
-rwxr-xr-x | testing/scripts/build-baseimage | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/testing/scripts/build-baseimage b/testing/scripts/build-baseimage new file mode 100755 index 000000000..1355d7a05 --- /dev/null +++ b/testing/scripts/build-baseimage @@ -0,0 +1,79 @@ +#!/bin/bash + +echo "Building base image" + +DIR=$(dirname `readlink -f $0`) +. $DIR/../testing.conf +. $DIR/function.sh + +[ `id -u` -eq 0 ] || die "You must be root to run $0" + +check_commands debootstrap mkfs.ext3 partprobe qemu-img qemu-nbd sfdisk + +# package includes/excludes +INC=build-essential,gperf,libgmp-dev,libldap2-dev,libcurl4-openssl-dev,ethtool +INC=$INC,libxml2-dev,libtspi-dev,libsqlite3-dev,openssh-server,tcpdump,psmisc +INC=$INC,openssl,vim,sqlite3,conntrack,gdb,cmake,libxerces-c2-dev,libltdl-dev +INC=$INC,liblog4cxx10-dev,libboost-thread-dev,libboost-system-dev,git-core +INC=$INC,less,acpid,acpi-support-base +SERVICES="apache2 dbus isc-dhcp-server slapd" +INC=$INC,${SERVICES// /,} +EXC=iptables + +CACHEDIR=$BUILDDIR/cache +APTCACHE=$LOOPDIR/var/cache/apt/archives + +mkdir -p $LOOPDIR +mkdir -p $CACHEDIR +mkdir -p $IMGDIR +rm -f $BASEIMG + +echo "`date`, building $BASEIMG" >>$LOGFILE + +load_qemu_nbd + +log_action "Creating base image $BASEIMG" +execute "qemu-img create -f $IMGEXT $BASEIMG ${BASEIMGSIZE}M" + +log_action "Connecting image to NBD device $NBDEV" +execute "qemu-nbd -c $NBDEV $BASEIMG" +do_on_exit qemu-nbd -d $NBDEV + +log_action "Partitioning disk" +sfdisk /dev/nbd0 -D -uM >>$LOGFILE 2>&1 << EOF +; +EOF +if [ $? != 0 ] +then + log_status 1 + exit 1 +else + log_status 0 +fi +partprobe $NBDEV + +log_action "Creating ext3 filesystem" +execute "mkfs.ext3 $NBDPARTITION" + +log_action "Mounting $NBDPARTITION to $LOOPDIR" +execute "mount $NBDPARTITION $LOOPDIR" +do_on_exit graceful_umount $LOOPDIR + +log_action "Using $CACHEDIR as archive for apt" +mkdir -p $APTCACHE +execute "mount -o bind $CACHEDIR $APTCACHE" +do_on_exit graceful_umount $APTCACHE + +log_action "Running debootstrap ($BASEIMGSUITE, $BASEIMGARCH)" +execute "debootstrap --arch=$BASEIMGARCH --include=$INC --exclude $EXC $BASEIMGSUITE $LOOPDIR $BASEIMGMIRROR" + +for service in $SERVICES +do + log_action "Stopping service $service" + execute_chroot "/etc/init.d/$service stop" + log_action "Disabling service $service" + execute_chroot "update-rc.d -f $service remove" +done + +log_action "Disabling root password" +execute_chroot "passwd -d root" |