# defaults
RAM=512
DISK=20
+CPUS=1
STORAGE_POOL=default
QEMU_URI=qemu:///system
-SUITE=wheezy
+SUITE=stretch
CONSOLE='console=tty0 console=ttyS0,115200n8'
DEBUG=0
WIPE=0
fi
MAC="$1"
;;
+ (-c|--cpus)
+ shift
+ if [ -z "$1" ]; then
+ echo >&2 'E: --cpus/-c needs integer argument'
+ exit 1
+ fi
+ CPUS="$1"
+ ;;
(--debug)
DEBUG=1
set -vx
tar -C $BASEDIR/preseed/$SUITE -cf $tmpdir/commands.tar commands
extra_kargs="auto $CONSOLE \
-hostname=${HOSTNAME%%.*} \
-domain=${HOSTNAME#*.}"
+netcfg/hostname=${HOSTNAME%%.*} \
+netcfg/domain=${HOSTNAME#*.}"
extra_opts=
if [ -n "$DEBUG" ]; then
fi
if [ -z "$MAC" ]; then
- bytes=$(dd status=none if=/dev/urandom bs=3 count=1 | hexdump -v -e '/1 ":%02X"')
+ bytes=$(dd status=noxfer if=/dev/urandom bs=3 count=1 | hexdump -v -e '/1 ":%02X"')
MAC=52:54:00$bytes
fi
suite: $SUITE
ram: $RAM MiB
disk: $DISK GiB
+ cpus: $CPUS
wipe: $WIPE
console: $CONSOLE
restart: $RESTART
virt-install --connect=$QEMU_URI \
${DEBUGFLAG:-} \
-n $HOSTNAME \
+ --vcpus=$CPUS \
-r $RAM \
--disk vol=$STORAGE_POOL/virt-$HOSTNAME \
--network bridge=$BRIDGE,mac=$MAC \
--graphics=vnc \
--serial=pty \
--watchdog i6300esb,action=reset \
- -l $BASEDIR/installer-amd64 \
--os-variant=debianwheezy \
--initrd-inject=$BASEDIR/preseed/$SUITE/preseed.cfg \
--initrd-inject=$tmpdir/commands.tar \
- --prompt --noautoconsole --autostart \
--extra-args="$extra_kargs" \
+ --prompt --noautoconsole --autostart $extra_opts \
+ -l $BASEDIR/installer-amd64/$SUITE \
"$@"
virsh --connect=$QEMU_URI console $HOSTNAME
if [ $RESTART = 1 ]; then
+ sleep 5
virsh --connect=$QEMU_URI "start $HOSTNAME; console $HOSTNAME"
fi