[Ovirt-devel] [PATCH node-image] Enhancements to fake node creation script to assist with testing
Perry Myers
pmyers at redhat.com
Tue Jan 20 03:01:45 UTC 2009
Signed-off-by: Perry Myers <pmyers at redhat.com>
---
create-ovirt-iso-nodes | 52 +++++++++++++++++++++++++++++++++++++++--------
1 files changed, 43 insertions(+), 9 deletions(-)
diff --git a/create-ovirt-iso-nodes b/create-ovirt-iso-nodes
index 80d6743..4d3876f 100755
--- a/create-ovirt-iso-nodes
+++ b/create-ovirt-iso-nodes
@@ -29,6 +29,10 @@ IMGDIR_DEFAULT=/var/lib/libvirt/images
imgdir=$IMGDIR_DEFAULT
NODEIMG_DEFAULT=/usr/share/ovirt-node-image/ovirt-node-image.iso
nodeimg=$NODEIMG_DEFAULT
+NUM_DISKS_DEFAULT=1
+RANGE_DEFAULT="6-9"
+RAM_DEFAULT=512
+VCPUS_DEFAULT=1
NODE_DISK_FMT=qcow2
NODE_DISK_SIZE=6144M
@@ -38,20 +42,31 @@ gen_fake_managed_node() {
local nodeimg=$2
local last_mac=$(( 54 + $num ))
+ local os_variant=fedora10
+ if [ "$no_virtio" = 1 ]; then
+ os_variant=fedora8
+ fi
+
echo "Creating fake node$num using $nodeimg..."
virsh destroy node$num > /dev/null 2>&1
virsh undefine node$num > /dev/null 2>&1
- rm -f $imgdir/node${i}-sda.$NODE_DISK_FMT
- qemu-img create -f $NODE_DISK_FMT $imgdir/node${i}-sda.$NODE_DISK_FMT \
- $NODE_DISK_SIZE
+
+ rm -f $imgdir/node${num}-*
+
+ local disks=
+ for ((i=0;i<$num_disks;i+=1)); do
+ qemu-img create -f $NODE_DISK_FMT \
+ $imgdir/node${num}-${i}.$NODE_DISK_FMT $NODE_DISK_SIZE
+ disks="$disks --disk path=$imgdir/node${num}-${i}.$NODE_DISK_FMT"
+ done
+
# FIXME: virt-install should be changed to have a --nostart parameter
# that just defines the VM w/o starting it.
- virt-install --name=node$num --ram=512 --vcpus=1 \
- --disk path=$imgdir/node${i}-sda.$NODE_DISK_FMT \
+ virt-install --name=node$num --ram=$ram --vcpus=$vcpus $disks \
--cdrom=$nodeimg --livecd \
--network=bridge:$BRIDGENAME --mac=00:16:3e:12:34:$last_mac \
--vnc --accelerate --hvm --noautoconsole \
- --os-type=linux --os-variant=fedora10 \
+ --os-type=linux --os-variant=$os_variant \
--force --noreboot
virsh destroy node$num > /dev/null 2>&1
echo "node$num created"
@@ -60,18 +75,34 @@ gen_fake_managed_node() {
usage() {
case $# in 1) warn "$1"; try_h; exit 1;; esac
cat <<EOF
-Usage: $ME [-d image_dir] [-n node.iso]
+Usage: $ME [-d image_dir] [-n node.iso] [-c num_disks] [-s start-stop]
+ [-v vcpus] [-r ram] [-x]
-n: node.iso to boot (default: $NODEIMG_DEFAULT)
-d: directory to place virtual disk (default: $IMGDIR_DEFAULT)
+ -c: number of disks per fake node (default: $NUM_DISKS_DEFAULT)
+ -s: node range (default: $RANGE_DEFAULT)
+ -v: vcpus per node (default: $VCPUS_DEFAULT)
+ -r: ram in MB per node (default: $RAM_DEFAULT)
+ -x: toggle virtio devices off
-h: display this help and exit
EOF
}
err=0 help=0
-while getopts :d:n:h c; do
+no_virtio=0
+num_disks=$NUM_DISKS_DEFAULT
+range=$RANGE_DEFAULT
+ram=$RAM_DEFAULT
+vcpus=$VCPUS_DEFAULT
+while getopts :d:n:s:c:v:r:xh c; do
case $c in
n) nodeimg=$OPTARG;;
d) imgdir=$OPTARG;;
+ c) num_disks=$OPTARG;;
+ s) range=$OPTARG;;
+ v) vcpus=$OPTARG;;
+ r) ram=$OPTARG;;
+ x) no_virtio=1;;
h) help=1;;
'?') err=1; warn "invalid option: \`-$OPTARG'";;
:) err=1; warn "missing argument to \`-$OPTARG' option";;
@@ -92,6 +123,9 @@ test -f $nodeimg || die "could not find $nodeimg"
cp $nodeimg $imgdir
# define the fake managed nodes we will use.
-for i in `seq 6 9` ; do
+range_start=$(echo $range | cut -d '-' -f 1)
+range_stop=$(echo $range | cut -d '-' -f 2)
+
+for i in `seq $range_start $range_stop` ; do
gen_fake_managed_node $i $imgdir/$(basename $nodeimg)
done
--
1.6.0.6
More information about the ovirt-devel
mailing list