Add image scripts
diff --git a/make_image.sh b/make_image.sh
new file mode 100755
index 0000000..9b5c10c
--- /dev/null
+++ b/make_image.sh
@@ -0,0 +1,88 @@
+#!/bin/bash
+# make_image.sh - Create Ubuntu images in various formats
+#
+# make_image.sh release format
+#
+# Supported formats: qcow (kvm), vmdk (vmserver), vdi (vbox), vhd (vpc)
+#
+# Requires sudo to root
+
+ROOTSIZE=${ROOTSIZE:-8192}
+SWAPSIZE=${SWAPSIZE:-1024}
+
+usage() {
+ echo "$0 - Create Ubuntu images"
+ echo ""
+ echo "$0 [-r rootsize] [-s swapsize] release format"
+ exit 1
+}
+
+while getopts hm:r:s: c; do
+ case $c in
+ h) usage
+ ;;
+ m) MIRROR=$OPTARG
+ ;;
+ r) ROOTSIZE=$OPTARG
+ ;;
+ s) SWAPSIZE=$OPTARG
+ ;;
+ esac
+done
+shift `expr $OPTIND - 1`
+
+RELEASE=$1
+FORMAT=$2
+
+case $RELEASE in
+ natty) ;;
+ maverick) ;;
+ lucid) ;;
+ karmic) ;;
+ jaunty) ;;
+ *) echo "Unknown release: $RELEASE"
+ usage
+esac
+
+case $FORMAT in
+ kvm|qcow2) FORMAT=qcow2
+ TARGET=kvm
+ ;;
+ vmserver|vmdk) FORMAT=vmdk
+ TARGET=vmserver
+ ;;
+ vbox|vdi) FORMAT=qcow2
+ TARGET=kvm
+ FINAL_FORMAT=vdi
+ ;;
+ vhd|vpc) FORMAT=qcow2
+ TARGET=kvm
+ FINAL_FORMAT=vpc
+ ;;
+ *) echo "Unknown format: $FORMAT"
+ usage
+esac
+
+# Install stuff if necessary
+if [ -z `which vmbuilder` ]; then
+ sudo apt-get install ubuntu-vm-builder
+fi
+
+# Build the image
+sudo vmbuilder $TARGET ubuntu --suite $RELEASE \
+ -o \
+ --rootsize=$ROOTSIZE \
+ --swapsize=$SWAPSIZE \
+ --tmpfs - \
+ --addpkg=openssh-server \
+
+# --mirror=$MIRROR \
+
+if [ -z "$FINAL_FORMAT" ]; then
+ # Get image
+ mv ubuntu-$TARGET/tmp*.$FORMAT $RELEASE.$FORMAT
+else
+ # Convert image
+ qemu-img convert -O $FINAL_FORMAT ubuntu-$TARGET/tmp*.$FORMAT $RELEASE.$FINAL_FORMAT
+fi
+rm -rf ubuntu-$TARGET