X-Git-Url: https://git.madduck.net/code/vinst.git/blobdiff_plain/71af94ba096bed96bdf3f6978ded93d14b586ed1..9e1c6791342fb991a4b7e8d67b37a56765312322:/vinst?ds=sidebyside diff --git a/vinst b/vinst index 9eb0470..ca6015a 100755 --- a/vinst +++ b/vinst @@ -5,9 +5,10 @@ set -e # 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 @@ -97,6 +98,14 @@ while [ -n "$1" ]; do 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 @@ -122,8 +131,8 @@ tmpdir=$(mktemp -d) 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 @@ -157,7 +166,7 @@ if [ -z "$ARCH" ]; 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 @@ -167,6 +176,7 @@ cat >&2 <<_eof suite: $SUITE ram: $RAM MiB disk: $DISK GiB + cpus: $CPUS wipe: $WIPE console: $CONSOLE restart: $RESTART @@ -202,22 +212,24 @@ fi 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