From f7e92d5179e6b400c34b897fcbdfd8a61b08b68f Mon Sep 17 00:00:00 2001 From: Eric Price Date: Mon, 28 Jul 2008 03:20:22 -0400 Subject: [PATCH 1/1] Change autoinstaller host to be only arguments to sipb-database svn path=/trunk/packages/sipb-xen-autoinstaller/; revision=760 --- debian/changelog | 6 ++ debian/control.in | 6 -- debian/sipb-xen-autoinstaller-host.install | 1 - guest/etc/init.d/rcS.sipb-xen | 38 +++++++++--- guest/usr/sbin/sipb-xen-install | 13 ---- host/etc/xen/autoinstall.cfg | 45 -------------- host/usr/sbin/sipb-xen-install | 22 ------- host/usr/sbin/sipb-xen-lvcopy | 90 ---------------------------- host/usr/sbin/sipb-xen-make-iso | 29 --------- 9 files changed, 36 insertions(+), 214 deletions(-) delete mode 100644 debian/sipb-xen-autoinstaller-host.install delete mode 100644 guest/usr/sbin/sipb-xen-install delete mode 100644 host/etc/xen/autoinstall.cfg delete mode 100644 host/usr/sbin/sipb-xen-install delete mode 100755 host/usr/sbin/sipb-xen-lvcopy delete mode 100755 host/usr/sbin/sipb-xen-make-iso diff --git a/debian/changelog b/debian/changelog index 9ae3aed..abb993d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +sipb-xen-autoinstaller (2.4) unstable; urgency=low + + * Switch to using just sipb-database options on the host + + -- Eric Price Mon, 28 Jul 2008 03:18:00 -0400 + sipb-xen-autoinstaller (2.3) unstable; urgency=low * Fix a couple bugs. diff --git a/debian/control.in b/debian/control.in index 120a32f..2646c7a 100644 --- a/debian/control.in +++ b/debian/control.in @@ -13,9 +13,3 @@ Depends: ${misc:Depends}, patch, xen-tools, busybox-static, lvm2 Conflicts: sysvinit, upstart Description: SIPB Xen automatic guest-image installer system (guest) This is our automatic guest-image installer system. - -Package: sipb-xen-autoinstaller-host -Architecture: all -Depends: ${misc:Depends}, sipb-xen-host-master -Description: SIPB Xen automatic guest-image installer system (host) - This is our automatic guest-image installer system. diff --git a/debian/sipb-xen-autoinstaller-host.install b/debian/sipb-xen-autoinstaller-host.install deleted file mode 100644 index 260c50b..0000000 --- a/debian/sipb-xen-autoinstaller-host.install +++ /dev/null @@ -1 +0,0 @@ -host/* . diff --git a/guest/etc/init.d/rcS.sipb-xen b/guest/etc/init.d/rcS.sipb-xen index d786d7d..9431cd6 100644 --- a/guest/etc/init.d/rcS.sipb-xen +++ b/guest/etc/init.d/rcS.sipb-xen @@ -1,16 +1,38 @@ -#!/bin/sh +#!/bin/bash for x in $(cat /proc/cmdline); do case $x in - ip=*) - /usr/lib/klibc/bin/ipconfig -d ${x#ip=} - ;; - noinstall) - exit 0 - ;; + ip=*) + /usr/lib/klibc/bin/ipconfig -d ${x#ip=} + ;; + mirror=*) + MIRROR=${x#mirror=} + ;; + dist=*) + DIST=${x#dist=} + ;; + arch=*) + ARCH=${x#arch=} + ;; + imagesize=*) + IMAGESIZE=${x#imagesize=} + ;; + noinstall) + exit 0 + ;; esac done mount -t tmpfs none /var/log mount -t tmpfs none /tmp -sipb-xen-install + + +TARGET=/dev/hda +ARCH=${ARCH-amd64} +IP=$(ifconfig eth0 | sed -n 's/.*inet addr:\([0-9\.]*\).*/\1/p') +HOSTNAME=$(hostname) + +echo ,${IMAGESIZE}$',L,*\n,,S\n;\n;' | sfdisk -uM -H 255 -S 63 $TARGET + +xen-create-image --image-dev ${TARGET}1 --swap-dev ${TARGET}2 --fs ext3 --ide --arch $ARCH --dist $DIST --hostname $HOSTNAME --mirror $MIRROR --ip=$IP --netmask=255.255.0.0 --gateway=18.181.0.1 --cache=yes + busybox poweroff exit 0 diff --git a/guest/usr/sbin/sipb-xen-install b/guest/usr/sbin/sipb-xen-install deleted file mode 100644 index 5f467ff..0000000 --- a/guest/usr/sbin/sipb-xen-install +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash - -TARGET=/dev/hda - -# Read in the environment variables -# For some strange reason, . $TARGET doesn't work reliably. -eval `grep -a -m1 -B 100 ^return$ $TARGET | grep -v return` - -ARCH=amd64 - -echo ,${IMAGESIZE}$',L,*\n,,S\n;\n;' | sfdisk -uM -H 255 -S 63 $TARGET - -xen-create-image --image-dev ${TARGET}1 --swap-dev ${TARGET}2 --fs ext3 --ide --arch $ARCH --dist $DIST --hostname $HOSTNAME --mirror $MIRROR --ip=$IP --netmask=255.255.0.0 --gateway=18.181.0.1 --cache=yes diff --git a/host/etc/xen/autoinstall.cfg b/host/etc/xen/autoinstall.cfg deleted file mode 100644 index 88db3fd..0000000 --- a/host/etc/xen/autoinstall.cfg +++ /dev/null @@ -1,45 +0,0 @@ -# -# Configuration file for the Xen instance foobar, created -# by xen-tools 3.7 on Sat Jun 21 16:24:54 2008. -# - -# -# Kernel + memory size -# -#bootloader = '/usr/lib/xen-default/bin/pygrub' -kernel = '/boot/vmlinuz-2.6.24-19-xen' -ramdisk = '/boot/initrd.img-2.6.24-19-xen' -memory = '256' - - -# -# Hostname -# -name = 'd_foobar2' - - -# -# Disk device(s). -# -disk = [ - 'phy:/dev/xenvg/%s_hda,hdb,r' % name, - 'phy:/dev/xenvg/d_%s_hda,hda,w' % target, - ] - -root = '/dev/hdb1' -extra = 'ro noresume ip=18.181.0.216::18.181.0.1:255.255.0.0:foobar2:eth0:off' - -# -# Networking -# -vif = [ 'ip=18.181.0.216,mac=00:16:3e:00:2c:ee,script=vif-bridge' ] - -# -# Behaviour -# -on_poweroff = 'destroy' -on_reboot = 'restart' -on_crash = 'destroy' - - - diff --git a/host/usr/sbin/sipb-xen-install b/host/usr/sbin/sipb-xen-install deleted file mode 100644 index ad72827..0000000 --- a/host/usr/sbin/sipb-xen-install +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/bash - -export PATH - -HOSTNAME="$2" -DIST="$3" -MIRROR="$4" -IMAGESIZE="$5" -IP="$6" - -VOLUME=/dev/mapper/xenvg-d_${HOSTNAME}_hda - -cat > $VOLUME <>sys.stderr, argv[0]+': bad argument list' - return 2 - break - duplicate_by_vm(*args, **kwargs) - elif subcommand == 'test': - pass - else: - print >>sys.stderr, argv[0]+": unknown subcommand: "+subcommand - return 2 - return 0 - -if __name__ == '__main__': - sys.exit(main(*sys.argv)) diff --git a/host/usr/sbin/sipb-xen-make-iso b/host/usr/sbin/sipb-xen-make-iso deleted file mode 100755 index 9b959cb..0000000 --- a/host/usr/sbin/sipb-xen-make-iso +++ /dev/null @@ -1,29 +0,0 @@ -#!/usr/bin/env python - -import sys -import os -import shutil -import tempfile -from subprocess import call - -data_dir = '/srv/guest-installer' - -def make_debian_cd(name, tmptree, passhashfile): - basetree = os.path.join(data_dir, name) - cdtree = os.path.join(tmptree, 'cdrom') - shutil.copytree(os.path.join(basetree, 'cdrom'), cdtree, symlinks=True) - new_preseed = file(os.path.join(cdtree, 'preseed.cfg'), 'w') - old_preseed = file(os.path.join(basetree, 'preseed.cfg')) - new_preseed.write(old_preseed.read()) - passhash = file(passhashfile).read() - new_preseed.write('d-i passwd/root-password-crypted password '+passhash+'\n') - new_preseed.close() - output_iso = os.path.join(tmptree, 'install.iso') - call('''mkisofs -r -V "SIPB-Xen_Custom_Install_CD" -cache-inodes -J -l - -b isolinux/isolinux.bin -c isolinux/boot.cat - -no-emul-boot -boot-load-size 4 -boot-info-table'''.split() - + ['-o', output_iso, cdtree]) - return output_iso - -if __name__ == '__main__': - print make_debian_cd(*sys.argv[1:]) -- 1.7.9.5