--- vm-builder-0.11.3.orig/debian/python-vm-builder.manpages +++ vm-builder-0.11.3/debian/python-vm-builder.manpages @@ -0,0 +1 @@ +vmbuilder.1 --- vm-builder-0.11.3.orig/debian/copyright +++ vm-builder-0.11.3/debian/copyright @@ -0,0 +1,28 @@ +This package was debianized by Soren Hansen on +Thu, 28 Aug 2008 05:14:27 +0200 + +It lives at https://launchpad.net/vmbuilder + +Copyright: + Copyright (C) 2007-2008 Canonical Ltd. + +Authors: + Soren Hansen + +License: + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +For the full license, see '/usr/share/common-licenses/GPL-3'. + +The same license and copyright applies to the Debian packaging. --- vm-builder-0.11.3.orig/debian/compat +++ vm-builder-0.11.3/debian/compat @@ -0,0 +1 @@ +5 --- vm-builder-0.11.3.orig/debian/python-vm-builder-ec2.install +++ vm-builder-0.11.3/debian/python-vm-builder-ec2.install @@ -0,0 +1 @@ +debian/tmp/usr/lib/python*/*-packages/VMBuilder/plugins/ec2 --- vm-builder-0.11.3.orig/debian/control +++ vm-builder-0.11.3/debian/control @@ -0,0 +1,76 @@ +Source: vm-builder +Section: utils +Priority: optional +Maintainer: Soren Hansen +Build-Depends: cdbs, + debhelper (>= 5.0.38), + python-all (>= 2.3.5-11), + python-central (>= 0.5.6), + python-epydoc, + quilt +Standards-Version: 3.8.3 +XS-Python-Version: >= 2.5 +XS-Upstream-Vcs-Bzr: http://bazaar.launchpad.net/~ubuntu-virt/vmbuilder/trunk + +Package: python-vm-builder +Architecture: all +Depends: ${misc:Depends}, + ${python:Depends}, + qemu-kvm | qemu-kvm-extras, + debootstrap (>= 1.0.9), + parted, + kpartx, + ubuntu-keyring, + python-cheetah, + rsync +Recommends: python-libvirt, + devscripts +XB-Python-Version: ${python:Versions} +Description: VM builder + Script that automates the process of creating a ready to use Linux based VM. + The currently supported hypervisors are: + . + * KVM + * Xen + * VMWare + . + The currently supported distros are: + . + * Ubuntu Dapper, Gutsy, Hardy, Intrepid, Jaunty, and Karmic. + . + You can pass command line options to add extra packages, remove packages, + choose which version of Ubuntu, which mirror etc. On recent hardware + with plenty of RAM, tmpdir in /dev/shm or using a tmpfs, and a local mirror, + you can bootstrap a vm in less than a minute. + +Package: ubuntu-vm-builder +Architecture: all +Depends: ${misc:Depends}, + ${python:Depends}, + python-vm-builder +XB-Python-Version: ${python:Versions} +Description: Ubuntu VM builder + Script which automates the process of creating a ready to use VM based on + Ubuntu. You can pass command line options to add extra packages, remove + packages, choose which version of Ubuntu, which mirror to use etc. + . + On recent hardware with plenty of RAM, tmpdir in /dev/shm or using a tmpfs, + and a local mirror, you can bootstrap a vm in less than a minute. + +Package: python-vm-builder-ec2 +Architecture: all +Depends: ${misc:Depends}, + ${python:Depends}, + python-vm-builder, + ec2-ami-tools, + python-boto +XB-Python-Version: ${python:Versions} +Description: EC2 Ubuntu VM builder + Ubuntu vmbuilder module that automates the process of create a ready to use + EC2 image (AMI) based on Ubuntu. You can pass command line options to add + extra packages, remove packages, choose which version of Ubuntu, which + mirror to use etc. + . + VMBuilder module to build, upload and register EC2 images. You will + need to have an Amazon EC2 account in order to use this package. + --- vm-builder-0.11.3.orig/debian/rules +++ vm-builder-0.11.3/debian/rules @@ -0,0 +1,21 @@ +#!/usr/bin/make -f + +DEB_PYTHON_SYSTEM = pycentral +include /usr/share/cdbs/1/rules/debhelper.mk +include /usr/share/cdbs/1/rules/patchsys-quilt.mk +include /usr/share/cdbs/1/class/python-distutils.mk + +# For when we add the extra package +#DEB_DH_INSTALL_SOURCEDIR = debian/tmp + +#makebuilddir/python-vm-builder:: +# if test -d .bzr; then if ! bzr diff -q > /dev/null; then echo 'ERROR! Uncommitted changes!!!' ; /bin/false ; fi; fi + +build/python-vm-builder:: doc-stamp + +doc-stamp: + epydoc --no-private VMBuilder + touch $@ + +cleanbuilddir/python-vm-builder:: + rm -rf html doc-stamp --- vm-builder-0.11.3.orig/debian/python-vm-builder.install +++ vm-builder-0.11.3/debian/python-vm-builder.install @@ -0,0 +1,12 @@ +debian/tmp/etc +debian/tmp/usr/bin/vmbuilder +debian/tmp/usr/lib/python*/*-packages/VMBuilder/*.py +debian/tmp/usr/lib/python*/*-packages/VMBuilder/plugins/*.py +debian/tmp/usr/lib/python*/*-packages/VMBuilder/plugins/cli +debian/tmp/usr/lib/python*/*-packages/VMBuilder/plugins/firstscripts +debian/tmp/usr/lib/python*/*-packages/VMBuilder/plugins/kvm +debian/tmp/usr/lib/python*/*-packages/VMBuilder/plugins/libvirt +debian/tmp/usr/lib/python*/*-packages/VMBuilder/plugins/postinst +debian/tmp/usr/lib/python*/*-packages/VMBuilder/plugins/ubuntu +debian/tmp/usr/lib/python*/*-packages/VMBuilder/plugins/xen +debian/tmp/usr/lib/python*/*-packages/VMBuilder/plugins/vmware --- vm-builder-0.11.3.orig/debian/pycompat +++ vm-builder-0.11.3/debian/pycompat @@ -0,0 +1 @@ +2 --- vm-builder-0.11.3.orig/debian/python-vm-builder.docs +++ vm-builder-0.11.3/debian/python-vm-builder.docs @@ -0,0 +1 @@ +html --- vm-builder-0.11.3.orig/debian/ubuntu-vm-builder.install +++ vm-builder-0.11.3/debian/ubuntu-vm-builder.install @@ -0,0 +1,2 @@ +ubuntu-vm-builder usr/bin +debian/python-vm-builder.py usr/share/apport/package-hooks --- vm-builder-0.11.3.orig/debian/changelog +++ vm-builder-0.11.3/debian/changelog @@ -0,0 +1,473 @@ +vm-builder (0.11.3-0ubuntu8) lucid; urgency=low + + * debian/patches/ext4-support.diff: add ext4 (upstream commit + lp:vmbuilder/0.11 r364, LP: #494804) + * debian/patches/lucid-release.diff: add Ubuntu Lucid to the list of + buildable distros. + + -- Kees Cook Tue, 16 Feb 2010 13:54:30 -0800 + +vm-builder (0.11.3-0ubuntu7) lucid; urgency=low + + * debian/python-vm-builder.py, debian/python-vm-builder.py, + debian/ubuntu-vm-builder.install: Install apport hooks, apart + of the server-lucid-apport-hooks specification. + + -- Chuck Short Tue, 02 Feb 2010 14:15:31 -0500 + +vm-builder (0.11.3-0ubuntu6) lucid; urgency=low + + * Fix "network" patch to use "#if" instead of "if"; introduced in + 0.11.3-0ubuntu2. + + -- Loïc Minier Thu, 21 Jan 2010 16:33:52 +0100 + +vm-builder (0.11.3-0ubuntu5) lucid; urgency=low + + * Drop grub dependency; vm-builder was actually fixed to install grub in the + guest instead while I wasn't looking; sorry for the confusion. + + -- Loïc Minier Tue, 19 Jan 2010 13:28:41 +0100 + +vm-builder (0.11.3-0ubuntu4) lucid; urgency=low + + * Add Karmic in description; thanks Daniele E. Domenichelli; LP: #485065. + + -- Loïc Minier Sun, 17 Jan 2010 22:41:27 +0100 + +vm-builder (0.11.3-0ubuntu3) lucid; urgency=low + + * New patch, ssk-key-type-error, add parentheses as operator priority caused + a TypeError in the format string of the user chown call in the + install_authorized_keys() function; LP: #436835. + * Add rsync dependency; LP: #314833. + * Wrap build-deps and deps to get cleaner diffs. + * Use Priority: optional. + * Use launchpad.net/vmbuilder instead of code.l.n in copyright. + * Downgrade devscripts dep to a Recommends as I believe this is only needed + for rmadison in a Xen specific codepath, and it's rather heavy to install + devscripts on servers; this needs to be confirmed though. + * Depend on grub (legacy) as this is currently a hard requirement; + LP: #331595. + * Depend on qemu-kvm | qemu-kvm-extras instead of kvm | qemu as these are + transitional packages nowadays. + * New patch, ip-mask-typo, fixes typo in IP mask handling; LP: #313575; from + r355. + * Build-dep on python-all, not python-all-dev. + * Bump up Standards-Version to 3.8.3. + * Change Vcs-Bzr to XS-Upstream-Vcs-Bzr as the packaging is not kept in Bzr. + * Add watch file. + * Remove leftover VMBuilder/vcsversion.py.debdiff. + * Move changes from 0.10-0ubuntu2 to sleep a little to leave a chance to + loop devices to settle down to a new patch, settle-down-disk. + + -- Loïc Minier Sun, 17 Jan 2010 21:21:38 +0100 + +vm-builder (0.11.3-0ubuntu2) lucid; urgency=low + + * network.diff: + - allows the user to specify which virtual network the built VM is connected to (LP: #351509) + + -- Nigel Babu Wed, 09 Dec 2009 04:17:37 +0530 + +vm-builder (0.11.3-0ubuntu1) karmic; urgency=low + + * New upstream (bugfix only) release. (LP: #458587) + + -- Soren Hansen Fri, 23 Oct 2009 00:14:13 +0200 + +vm-builder (0.11.2-0ubuntu1) karmic; urgency=low + + * New upstream (bugfix-only) release. (LP: #410886, #439868, #426438, #429169, #423497) + + -- Soren Hansen Thu, 22 Oct 2009 15:07:36 +0200 + +vm-builder (0.11.1-0ubuntu1) karmic; urgency=low + + * New upstream release. + * Replace cdbs patchsys with quilt. + * All patches incorporated upstream. + + -- Soren Hansen Tue, 22 Sep 2009 13:09:50 +0200 + +vm-builder (0.11-0ubuntu2) karmic; urgency=low + + * Add simple-patchsys. + * Drop Vcs-Bzr as the repo doesn't include packaging. + * New patch, 60_blkid_support, allows blkid and not only vol_id as the + latter is gone in karmic; from r316; LP: #395950. + * New patch, 61_ec2-exception, allow creating VMs when the EC2 plugin isn't + used; from r324; LP: #403216. + * New patch, 62_parted-swap-syntax, fixed creation of swap partition with + new parted syntax; thanks Dominic Evans; from the debdiff in LP #403216. + * Add ${misc:Depends} to Depends. + + -- Loïc Minier Thu, 30 Jul 2009 19:54:46 +0200 + +vm-builder (0.11-0ubuntu1) karmic; urgency=low + + * New upstream release. + + -- Soren Hansen Tue, 09 Jun 2009 10:10:54 +0200 + +vm-builder (0.10-0ubuntu2) jaunty; urgency=low + + * fix traceback due to kpartx failure (LP: #342359) + - VMBuilder/disk.py: sleep a few seconds to give the loopback devices + a chance to settle down, then try to unmount. If it fails, try a few + more times and if still fails, error out as before + * fix FTBFS due to python2.6 transition (LP: #354849) + - debian/python-vm-builder-ec2.install: use python2.6/dist-packages path + - debian/python-vm-builder.install: use python2.6/dist-packages path + + -- Jamie Strandboge Fri, 10 Apr 2009 10:23:19 -0500 + +vm-builder (0.10-0ubuntu1) jaunty; urgency=low + + * New upstream release. + + -- Soren Hansen Thu, 19 Feb 2009 00:28:02 +0100 + +vm-builder (0.9-0ubuntu6) UNRELEASED; urgency=low + + [ Jamie Strandboge ] + * fix creation of Dapper VMs (LP: #305186) by moving existing + copy_settings() from plugins/ubuntu/dapper.py to plugins/ubuntu/edgy.py + and creating a Dapper specific copy_settings(). This was introduced in + fix for (LP: #292573). + + [ Michael Vogt ] + * when --ssh-key is given, install openssh-server + + -- Jamie Strandboge Thu, 04 Dec 2008 08:48:39 -0600 + +vm-builder (0.9-0ubuntu5) jaunty; urgency=low + + * add Jaunty support + + -- Jamie Strandboge Wed, 03 Dec 2008 17:41:12 -0600 + +vm-builder (0.9-0ubuntu4) jaunty; urgency=low + + [ Nicolas Barcet ] + * Integrate ec2 postinstall script + * Add --install-mirror to fix LP: #291639 + * Implement --iso to fix LP: #291590 + * Install openssh-server cleanly LP: #293039 + * Xen kernel and ramdisk are now dynamically discovered rather than + hard coded + * Add --xen-kernel and --xen-ramdisk to override automatic discovery + * Add --net-virtio and --net-bridge option to libvirt plugin + * The libvirt plugin now errors out if used with something else than KVM, as + nothing else is supported yet. + * For FSIMAGE type file system, --part now accepts a third argument which + allows to specify the device the partition should be mapped to. If the + size is set to 0, it is considered a "dummy" partition that should not be + created, only added to fstab. + + [ Chuck Short ] + * Add retry option when uploading to Amazon + * Install server and standard seed by default + * Add ec2 examples for first login and first boot + + [ Eric Hammond ] + * Fix post_install bugs LP: #292888, LP: #292891 & LP: #292901 + * Fix regression on locale settings LP: #292573 + + -- Soren Hansen Mon, 01 Dec 2008 10:31:35 +0100 + +vm-builder (0.9-0ubuntu3.1) intrepid-security; urgency=low + + * SECURITY UPDATE: vm-builder creates predictable root password when + creating virtual machines (LP: #296841) + - VMBuilder/plugins/ubuntu/dapper.py: invoke chpasswd with '-e' + - CVE-2008-XXXX (to be filled in) + + -- Jamie Strandboge Tue, 11 Nov 2008 16:05:56 -0600 + +vm-builder (0.9-0ubuntu3) intrepid; urgency=low + + [ Johan Euphrosine ] + * Fix exception when suite provided does not exist (LP: #281801) + and provide unit test for it. + + [ Chuck Short ] + * Added parameters required for EC2 plugin. + * Use ec2_name instead of hostname when submitting an AMI. + * Update xen_kernel_path and xen_ramdisk_path for intrepid. + * Default to amazon kernels/ramdisk pairs for now. + * Split out ec2 module into its own package. (LP: #284762) + + [ Nicolas Barcet ] + * Error out if domain is undefined (LP: #280125) + * Fix --dest so that it is actually used now (LP: #280091) + * Fix -c handling, values are now used (LP: #279159) + * Create /var/run/network to fix bug LP: #276365 + * Handle fsimage type vms (Xen) in fstab and (hopefully) libvirt (LP: #282109) + * Components where not parsed correctly (LP: #283263) + * preflight_check() was called twice in a row in vm.py for no aparant + reasons + * Change default suite to intrepid + * Intrepid needs groot=uuid, else update-grub tries to outsmart us later on + and it won't boot as it cannot guess the uuid right. + * Couple fixes when calling devletters, which is a function + * Double parenthesis removed in devicemap.tmpl + * Added function isDomain to fix bug LP: #284746 + * Documented unusual conf name value in help to fix bug LP: #284614 + * Fixed a bug in set_defaults occuring on reading untyped value from the + configuration file + * Match ec2 vocabulary by adding option name and clarifying help + (LP: #284765, LP: #285170, LP: #285165) + * Added a check for xen hypervisor when ec2 is selected (LP: #285191) + * Added checks for presence of bucket, access key and secret key for ec2 + (LP: #284757) + * Older suite need 128 bit inode for grub to recognize os. Thanks to Albert + Damen for the pointer (LP: #285093) + * The libvirt plugin now errors out if used with something else than KVM, as + nothing else is supported yet. + * Write out disk info in vmware's .vmx, converting it to use template while + at it (LP: #286487) + * Add 'config.version = "8"' to vmware.tmpl to fix LP: #286531 + + [ Mathias Gug ] + * Fix --templates option. + + [ Soren Hansen ] + * Create /var/{run,lock} on the root filesystem, just like d-i. + + -- Soren Hansen Fri, 24 Oct 2008 13:15:23 +0200 + +vm-builder (0.9-0ubuntu2) intrepid; urgency=low + + [ Nicolas Barcet ] + * Added hint for more help (LP: #269323) + * Added firstscripts plugin to fix regression on --firstboot and --firstlogin (LP: #268957) + * Added postinst plugin to fix regression on --exec and add --copy (LP: #268955) + * Added man page. + + [ Soren Hansen ] + * Include ubuntu-vm-builder package. (LP: #277272) + * Read additional config file given by '-c'. (LP: #276813) + * Fix regression from ubuntu-vm-builder: Make output from subprocess + non-buffered. + * Let --overwrite apply for libvirt as well. (LP: #276322) + + -- Soren Hansen Fri, 03 Oct 2008 18:52:06 +0200 + +vm-builder (0.9-0ubuntu1) intrepid; urgency=low + + [Nicolas Barcet ] + * Fixed regression on --ip and friends (LP: #268920) + * Added missing dependancy on dpkg-dev (LP: #270324) + * Fixed regression on --part (LP: #268718) + + -- Soren Hansen Wed, 24 Sep 2008 09:58:35 +0200 + +vm-builder (0.8.1-0ubuntu3) intrepid; urgency=low + + [Soren Hansen ] + * Re-add VMWare support. (LP: #268140) + * Fixed sources.list generation for Ubuntu. (LP: #268155) + * Added configuration file handling. (LP: #268170) + * Fix up Xen support (device and configuration file creation). (LP: #268142) + + -- Soren Hansen Tue, 09 Sep 2008 17:01:02 +0200 + +vm-builder (0.8.1-0ubuntu2) intrepid; urgency=low + + * Apply patch to only conditionally import libvirt. Fixes FTBFS. + + -- Soren Hansen Thu, 04 Sep 2008 09:50:27 +0200 + +vm-builder (0.8.1-0ubuntu1) intrepid; urgency=low + + * Added lots of inline documentation. + * Build documentation using epydoc. + * Moved libvirt support to a separate plugin. (LP: #264605) + * Deploy directly to libvirt (regression from ubuntu-vm-builder). (LP: #264604) + * Updated debian/{copyright,control} to reflect move on Launchpad. + * No longer a native package. + + -- Soren Hansen Thu, 04 Sep 2008 09:33:29 +0200 + +vm-builder (0.8) intrepid; urgency=low + + * Rewrote the entire thing in Python. + + -- Soren Hansen Sat, 05 Jul 2008 00:23:20 +0200 + +ubuntu-vm-builder (0.7~ppa2) intrepid; urgency=low + + [Thierry Carrez] + * Patch to fix lilo prompt (fix LP: #206763) + + [Loic Minier] + * Add support for "security mirror"; --security-mirror flag, SECURITY_MIRROR + config; defaults to security.u.c/ubuntu for official arches and to + ports.ubuntu.com/ubuntu-ports for lpia. + + [Nicolas Barcet] + * Merge --in-place option from Hardy. + * Fix case when domain is not defined on the host, thanks to Thierry Carrez + (LP: #237580) + * Fix console-setup the good way (by copying /etc/console-setup) thanks + again to Thierry Carrez (LP: #237616) + * Fix config-handler to not break with --arch option + * Change config handler to use default and etc configurations as well + * Make VMHOSTNAME more meaningfull by default + + -- Nicolas Barcet Tue, 18 Jun 2008 18:59:18 +0200 + +ubuntu-vm-builder (0.7~ppa1) intrepid; urgency=low + + [Michael Vogt] + * Add Intrepid to the suites + + [Loic Minier] + * Fix unchecked usage of $SUDO_USER which might be unset when creating the + configuration. + * Set LIBVIRT URL to the empty string if it isn't set in the env. + + [Nick Barcet] + * Added -c option to specify an alternate configuration file + + -- Nicolas Barcet Fri, 31 May 2008 00:14:00 +0200 + +ubuntu-vm-builder (0.4-0ubuntu0.3) hardy-proposed; urgency=low + + * Add --in-place option that will allow ubuntu-vm-builder to function when + $TMPDIR is nodev and/or nosuid. (LP: #228744) + + -- Soren Hansen Tue, 03 Jun 2008 14:43:51 +0200 + +ubuntu-vm-builder (0.6) intrepid; urgency=low + + * Release into Ubuntu proper. + + -- Soren Hansen Wed, 28 May 2008 11:36:02 +0200 + +ubuntu-vm-builder (0.5ubuntu1~ppa4) intrepid; urgency=low + + [Loic Minier] + * Call sh -c "$EXEC_SCRIPT" instead of "$EXEC_SCRIPT"; allows to pass + arguments to the script; also remove check that EXEC_SCRIPT exists. + + [Nick Barcet] + * Adding an error handler to fix LP: #217950 + * Lots of sanitization to allow for error handler + * Add an interrupt handler to cleanup if user interrupts script + * Stop on error in user script to fix LP: #228675 + * --ssh-key adds key to root and --ssh-user-key adds key to user + * Added --raw option to install on raw devices/files. + WARNING: the variables used in template files for disk definition have been + modified. Please insure that locally created templates are updated to + reflect this change. + * Add --firstboot and --firstlogin options + * First login always execute "sudo dpkg-reconfigure console-setup" so + that the local keyboard setting is taken into account. + * Adding the --iso parameter to create image from an iso. This requires + suite and kernel-flavour parameters to match what is available on the iso, + obviously. + * Include hostname in default destination directory if defined + * Do not use a tmpfs by default anymore + * Place the working directory in the same directory as dest if using --tmp - + * Added --tmpfs option to specify usage of a tmpfs for the working directory + * VM specific parameters do not need to be the last ones anymore + * Unknown parameters now return an error and prints usage + * Added --overwrite for overwriting of destination directory and libvirt + domain + * Added ~/.ubuntu-vm-builder config handling + * Man page improvements and reorganization + + [Soren Hansen] + * Fix for LP: #234062 ssh root login broken + + -- Nicolas Barcet Fri, 26 May 2008 00:01:00 +0200 + +ubuntu-vm-builder (0.4ubuntu2~ppa7) hardy; urgency=low + + [ Michael Vogt ] + * patch the way do_avoid_starting_daemons() to write a policy-rc.d file in + the same way as pbuilder does (LP: #228372) + + [ Nick Barcet ] + * Added function do_copy_settings to fix bug LP: #221231 + * Fix missing ipv6 entries in host file (LP: #230299) + * Fix issue with template arguments fetching (LP: #228268) + * Create the /etc/apt/sources.list properly (LP: #218195) + * Use a tmpfs for $WORKINGDIR to avoid case when file system is mounted + with no suid (LP: #228744) + * Unproper letters variable initialization (LP: #230312) + * Option --net failed other than for Class C (LP: #232361) + + [ Loic Minier ] + * Fix v / --verbose getopt parsing. (LP: #230319) + * Compute the default ARCH with dpkg --print-architecture. (LP: #230323) + * Add support for lpia. + - Allow lpia arch, lpia and lpiacompat kernel flavours. + - Use http://ports.ubuntu.com/ubuntu-ports as default mirror for lpia. + - Update help/documentation. + * Check Release files against the archive keyring; depend on ubuntu-keyring. + (LP: #230334) + + [ Soren Hansen ] + * Fix root ssh login. (LP: #234062) + * Fix network address handling. (LP: #232361) Thanks to Kevin Traas + for the patch. + + -- Soren Hansen Fri, 23 May 2008 09:52:22 +0200 + +ubuntu-vm-builder (0.4-0ubuntu0.1) hardy-security; urgency=low + + * SECURITY UPDATE: adjust ubuntu-vm-builder to lock root account by default + + -- Nicolas Barcet Mon, 28 Apr 2008 14:02:01 +0200 + +ubuntu-vm-builder (0.4) hardy; urgency=low + + [ Soren Hansen ] + * FFe reference: (LP: #208161) + * Replace start-stop-daemon for a while to fix problems with daemons + expecting to be able to listen on certaing ports, etc. + * Unmount volatile tmpfs from lrm. + * Make /opt opt-in. + * Make default rootsize 4096 (to match documentation). + * New grub installer code. + * Fix syntax error in kernel flavour check. + * Massive refactoring. + * Make more intelligent default choices based on chosen suite, architecture, + kernel flavour, etc. + * Further quieting of the process. + + [ Nick Barcet ] + * Added template support for vmware and qemu/kvm. + * Fix a bug reported by soren where loop devices could accendentally be + overwritten. Was also preventing concurrent runs of the script. + * Further quieting of the process. + + -- Soren Hansen Wed, 02 Apr 2008 11:52:35 +0200 + +ubuntu-vm-builder (0.3) hardy; urgency=low + + * Fix perl locale warnings. + * Add missing --libvirt option. (LP: #194242) + * Add edgy to the list of supported distros (adding the appropriate quirks). + * Don't default to virtual kernel flavour when not installing i386. (LP: + #194240) + * Remove references to JeOS. (LP: #194233) + * Give more useful error messages when people pass unuseful options. + * Make the building process much less verbose (and hence less scary). + + -- Soren Hansen Wed, 12 Mar 2008 01:01:35 +0100 + +ubuntu-vm-builder (0.2) hardy; urgency=low + + * New release. + + -- Soren Hansen Thu, 21 Feb 2008 00:34:20 +0100 + +ubuntu-vm-builder (0.1) hardy; urgency=low + + * Initial upload to Ubuntu. + + -- Soren Hansen Thu, 14 Feb 2008 15:41:51 +0100 --- vm-builder-0.11.3.orig/debian/watch +++ vm-builder-0.11.3/debian/watch @@ -0,0 +1,2 @@ +version=3 +https://launchpad.net/vmbuilder/+download http://launchpad.net/vmbuilder/.*/VMBuilder-(.+).tar.gz --- vm-builder-0.11.3.orig/debian/python-vm-builder.py +++ vm-builder-0.11.3/debian/python-vm-builder.py @@ -0,0 +1,19 @@ +#!/usr/bin/python + +'''VMBuilder Apport interface + +Copyright (C) 2010 Canonical Ltd. +Author: Chuck Short + +This program is free software, you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the Licenes, or (at your option) any later version. See http://www.gnu.org/copyleft/gpl.html for the full text of the license. +''' + +import os +import subprocess +from apport.hookutils import * + +def add_info(report, ui): + attach_related_packages(report, ['qemu-kvm', 'debootstrap', 'parted', 'kpartx', 'ubuntu-keyring', 'rsync']) + + ui.information("Please attach the command line that you used to generate your virtual machine") + --- vm-builder-0.11.3.orig/debian/python-vm-builder-ec2.docs +++ vm-builder-0.11.3/debian/python-vm-builder-ec2.docs @@ -0,0 +1 @@ +examples --- vm-builder-0.11.3.orig/debian/patches/ext4-support.diff +++ vm-builder-0.11.3/debian/patches/ext4-support.diff @@ -0,0 +1,151 @@ +Description: add ext4 support to the releases that should be using it. +Author: Kees Cook +Bug: https://bugs.launchpad.net/vmbuilder/+bug/494804 + +Index: vm-builder-0.11.3/AUTHORS +=================================================================== +--- vm-builder-0.11.3.orig/AUTHORS 2010-02-16 13:57:29.384338845 -0800 ++++ vm-builder-0.11.3/AUTHORS 2010-02-16 13:57:37.161836364 -0800 +@@ -2,3 +2,4 @@ + + Other contributors: + * Nicolas Barcet ++ * Kees Cook +Index: vm-builder-0.11.3/VMBuilder/disk.py +=================================================================== +--- vm-builder-0.11.3.orig/VMBuilder/disk.py 2010-02-16 13:57:29.394338284 -0800 ++++ vm-builder-0.11.3/VMBuilder/disk.py 2010-02-16 13:57:37.161836364 -0800 +@@ -1,7 +1,7 @@ + # + # Uncomplicated VM Builder +-# Copyright (C) 2007-2009 Canonical Ltd. +-# ++# Copyright (C) 2007-2010 Canonical Ltd. ++# + # See AUTHORS for list of contributors + # + # This program is free software: you can redistribute it and/or modify +@@ -33,6 +33,7 @@ + TYPE_EXT3 = 1 + TYPE_XFS = 2 + TYPE_SWAP = 3 ++TYPE_EXT4 = 4 + + class Disk(object): + def __init__(self, vm, size='5G', preallocated=False, filename=None): +@@ -236,7 +237,7 @@ + @rtype: string + @return: the filesystem type of the partition suitable for passing to parted + """ +- return { TYPE_EXT2: 'ext2', TYPE_EXT3: 'ext2', TYPE_XFS: 'ext2', TYPE_SWAP: 'linux-swap(new)' }[self.type] ++ return { TYPE_EXT2: 'ext2', TYPE_EXT3: 'ext2', TYPE_EXT4: 'ext2', TYPE_XFS: 'ext2', TYPE_SWAP: 'linux-swap(new)' }[self.type] + + def create(self, disk): + """Adds partition to the disk image (does not mkfs or anything like that)""" +@@ -273,13 +274,7 @@ + self.device = device + self.dummy = dummy + +- try: +- if int(type) == type: +- self.type = type +- else: +- self.type = str_to_type(type) +- except ValueError, e: +- self.type = str_to_type(type) ++ self.set_type(type) + + self.mntpnt = mntpnt + +@@ -318,13 +313,13 @@ + def mkfs_fstype(self): + if self.vm.suite in ['dapper', 'edgy', 'feisty', 'gutsy']: + logging.debug('%s: 128 bit inode' % self.vm.suite) +- return { TYPE_EXT2: ['mkfs.ext2', '-F'], TYPE_EXT3: ['mkfs.ext3', '-I 128', '-F'], TYPE_XFS: ['mkfs.xfs'], TYPE_SWAP: ['mkswap'] }[self.type] ++ return { TYPE_EXT2: ['mkfs.ext2', '-F'], TYPE_EXT3: ['mkfs.ext3', '-I 128', '-F'], TYPE_EXT4: ['mkfs.ext4', '-I 128', '-F'], TYPE_XFS: ['mkfs.xfs'], TYPE_SWAP: ['mkswap'] }[self.type] + else: + logging.debug('%s: 256 bit inode' % self.vm.suite) +- return { TYPE_EXT2: ['mkfs.ext2', '-F'], TYPE_EXT3: ['mkfs.ext3', '-F'], TYPE_XFS: ['mkfs.xfs'], TYPE_SWAP: ['mkswap'] }[self.type] ++ return { TYPE_EXT2: ['mkfs.ext2', '-F'], TYPE_EXT3: ['mkfs.ext3', '-F'], TYPE_EXT4: ['mkfs.ext4', '-F'], TYPE_XFS: ['mkfs.xfs'], TYPE_SWAP: ['mkswap'] }[self.type] + + def fstab_fstype(self): +- return { TYPE_EXT2: 'ext2', TYPE_EXT3: 'ext3', TYPE_XFS: 'xfs', TYPE_SWAP: 'swap' }[self.type] ++ return { TYPE_EXT2: 'ext2', TYPE_EXT3: 'ext3', TYPE_EXT4: 'ext4', TYPE_XFS: 'xfs', TYPE_SWAP: 'swap' }[self.type] + + def fstab_options(self): + return 'defaults' +@@ -363,7 +358,16 @@ + def get_index(self): + """Index of the disk (starting from 0)""" + return self.vm.filesystems.index(self) +- ++ ++ def set_type(self, type): ++ try: ++ if int(type) == type: ++ self.type = type ++ else: ++ self.type = str_to_type(type) ++ except ValueError, e: ++ self.type = str_to_type(type) ++ + def parse_size(size_str): + """Takes a size like qemu-img would accept it and returns the size in MB""" + try: +@@ -385,6 +389,7 @@ + + str_to_type_map = { 'ext2': TYPE_EXT2, + 'ext3': TYPE_EXT3, ++ 'ext4': TYPE_EXT4, + 'xfs': TYPE_XFS, + 'swap': TYPE_SWAP, + 'linux-swap': TYPE_SWAP } +Index: vm-builder-0.11.3/VMBuilder/plugins/ubuntu/distro.py +=================================================================== +--- vm-builder-0.11.3.orig/VMBuilder/plugins/ubuntu/distro.py 2010-02-16 13:57:29.414338368 -0800 ++++ vm-builder-0.11.3/VMBuilder/plugins/ubuntu/distro.py 2010-02-16 13:57:37.173087106 -0800 +@@ -1,7 +1,7 @@ + # + # Uncomplicated VM Builder +-# Copyright (C) 2007-2009 Canonical Ltd. +-# ++# Copyright (C) 2007-2010 Canonical Ltd. ++# + # See AUTHORS for list of contributors + # + # This program is free software: you can redistribute it and/or modify +@@ -143,6 +143,9 @@ + self.get_ec2_ramdisk() + self.apply_ec2_settings() + ++ if getattr(self.suite, 'set_filesystem_types', False): ++ self.suite.set_filesystem_types() ++ + def install(self, destdir): + self.destdir = destdir + self.suite.install(destdir) +Index: vm-builder-0.11.3/VMBuilder/plugins/ubuntu/karmic.py +=================================================================== +--- vm-builder-0.11.3.orig/VMBuilder/plugins/ubuntu/karmic.py 2010-02-16 13:57:29.434338173 -0800 ++++ vm-builder-0.11.3/VMBuilder/plugins/ubuntu/karmic.py 2010-02-16 13:57:37.173087106 -0800 +@@ -1,7 +1,7 @@ + # + # Uncomplicated VM Builder +-# Copyright (C) 2007-2009 Canonical Ltd. +-# ++# Copyright (C) 2007-2010 Canonical Ltd. ++# + # See AUTHORS for list of contributors + # + # This program is free software: you can redistribute it and/or modify +@@ -29,3 +29,10 @@ + + def pre_install(self): + self.vm.install_file('/etc/hosts', contents='') ++ ++ def set_filesystem_types(self): ++ # Default for Karmic and later is ext4 ++ for disk in self.vm.disks: ++ for partition in disk.partitions: ++ if partition.parted_fstype() == "ext2": ++ partition.set_type('ext4') --- vm-builder-0.11.3.orig/debian/patches/ip-mask-typo.diff +++ vm-builder-0.11.3/debian/patches/ip-mask-typo.diff @@ -0,0 +1,12 @@ +--- a/VMBuilder/vm.py 2009-10-22 22:13:31 +0000 ++++ b/VMBuilder/vm.py 2009-10-28 15:13:00 +0000 +@@ -301,7 +301,7 @@ + if (ipclass > 0) and (ipclass <= 127): + mask = 0xFF + elif (ipclass > 128) and (ipclass < 192): +- mask = OxFFFF ++ mask = 0xFFFF + elif (ipclass < 224): + mask = 0xFFFFFF + else: + --- vm-builder-0.11.3.orig/debian/patches/settle-down-disk.diff +++ vm-builder-0.11.3/debian/patches/settle-down-disk.diff @@ -0,0 +1,36 @@ +--- vm-builder-0.11.3.orig/VMBuilder/disk.py ++++ vm-builder-0.11.3/VMBuilder/disk.py +@@ -24,6 +24,7 @@ + import stat + import string + import tempfile ++import time + import VMBuilder + from VMBuilder.util import run_cmd + from VMBuilder.exception import VMBuilderUserError, VMBuilderException +@@ -141,7 +142,25 @@ + """ + Destroy all mapping devices + """ ++ # first sleep to give the loopback devices a chance to settle down ++ time.sleep(3) ++ ++ tries = 0 ++ max_tries = 3 ++ while tries < max_tries: ++ try: ++ run_cmd('kpartx', '-d', self.filename, ignore_fail=False) ++ break ++ except: ++ pass ++ tries += 1 ++ time.sleep(3) ++ ++ if tries >= max_tries: ++ # try it one last time ++ logging.info("Could not unmount '%s' after '%d' attempts. Final attempt" % (self.filename, tries)) + run_cmd('kpartx', '-d', self.filename, ignore_fail=ignore_fail) ++ + for part in self.partitions: + self.mapdev = None + --- vm-builder-0.11.3.orig/debian/patches/ssh-key-type-error.diff +++ vm-builder-0.11.3/debian/patches/ssh-key-type-error.diff @@ -0,0 +1,12 @@ +--- a/VMBuilder/plugins/ubuntu/dapper.py 2009-10-22 22:04:37 +0000 ++++ b/VMBuilder/plugins/ubuntu/dapper.py 2009-12-17 14:05:45 +0000 +@@ -147,7 +147,7 @@ + os.mkdir('%s/home/%s/.ssh' % (self.destdir, self.vm.user), 0700) + shutil.copy(self.vm.ssh_user_key, '%s/home/%s/.ssh/authorized_keys' % (self.destdir, self.vm.user)) + os.chmod('%s/home/%s/.ssh/authorized_keys' % (self.destdir, self.vm.user), 0644) +- self.run_in_target('chown', '-R', '%s:%s' % (self.vm.user,)*2, '/home/%s/.ssh/' % (self.vm.user)) ++ self.run_in_target('chown', '-R', '%s:%s' % ((self.vm.user,)*2), '/home/%s/.ssh/' % (self.vm.user)) + + if self.vm.ssh_user_key or self.vm.ssh_key: + if not self.vm.addpkg: + --- vm-builder-0.11.3.orig/debian/patches/network.diff +++ vm-builder-0.11.3/debian/patches/network.diff @@ -0,0 +1,31 @@ +Description: Allows the user to specify which virtual network the built VM is connected to. +Bug-Ubuntu: 351509 +Origin: other, https://bugs.edge.launchpad.net/ubuntu/+source/vm-builder/+bug/351509 +Author: Jack Coulter +Index: vm-builder-0.11.3/VMBuilder/plugins/libvirt/__init__.py +=================================================================== +--- vm-builder-0.11.3.orig/VMBuilder/plugins/libvirt/__init__.py 2009-10-08 15:53:02.000000000 +0530 ++++ vm-builder-0.11.3/VMBuilder/plugins/libvirt/__init__.py 2009-12-09 03:52:08.477044465 +0530 +@@ -26,6 +26,7 @@ + group = self.vm.setting_group('libvirt integration') + group.add_option('--libvirt', metavar='URI', help='Add VM to given URI') + group.add_option('--bridge', metavar="BRIDGE", help='Set up bridged network connected to BRIDGE.') ++ group.add_option('--network', metavar='NETWORK', default='default', help='Set up a network connection to virtual network NETWORK.') + self.vm.register_setting_group(group) + + def all_domains(self): +Index: vm-builder-0.11.3/VMBuilder/plugins/libvirt/templates/libvirtxml.tmpl +=================================================================== +--- vm-builder-0.11.3.orig/VMBuilder/plugins/libvirt/templates/libvirtxml.tmpl 2009-10-08 15:53:02.000000000 +0530 ++++ vm-builder-0.11.3/VMBuilder/plugins/libvirt/templates/libvirtxml.tmpl 2009-12-09 03:52:08.507038722 +0530 +@@ -23,7 +23,9 @@ + #if $mac + + #end if +- ++#if $network ++ ++#end if + #end if + #if $virtio_net + --- vm-builder-0.11.3.orig/debian/patches/lucid-release.diff +++ vm-builder-0.11.3/debian/patches/lucid-release.diff @@ -0,0 +1,47 @@ +Description: add Lucid to the list of buildable distros. +Author: Kees Cook + +Index: vm-builder-0.11.3/VMBuilder/plugins/ubuntu/distro.py +=================================================================== +--- vm-builder-0.11.3.orig/VMBuilder/plugins/ubuntu/distro.py 2010-02-16 13:59:37.033087060 -0800 ++++ vm-builder-0.11.3/VMBuilder/plugins/ubuntu/distro.py 2010-02-16 14:00:18.550586573 -0800 +@@ -29,7 +29,7 @@ + class Ubuntu(Distro): + name = 'Ubuntu' + arg = 'ubuntu' +- suites = ['dapper', 'gutsy', 'hardy', 'intrepid', 'jaunty', 'karmic'] ++ suites = ['dapper', 'gutsy', 'hardy', 'intrepid', 'jaunty', 'karmic', 'lucid'] + + # Maps host arch to valid guest archs + valid_archs = { 'amd64' : ['amd64', 'i386', 'lpia' ], +Index: vm-builder-0.11.3/VMBuilder/plugins/ubuntu/lucid.py +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ vm-builder-0.11.3/VMBuilder/plugins/ubuntu/lucid.py 2010-02-16 14:00:03.570588037 -0800 +@@ -0,0 +1,26 @@ ++# ++# Uncomplicated VM Builder ++# Copyright (C) 2010 Canonical Ltd. ++# ++# See AUTHORS for list of contributors ++# ++# This program is free software: you can redistribute it and/or modify ++# it under the terms of the GNU General Public License version 3, as ++# published by the Free Software Foundation. ++# ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++# GNU General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program. If not, see . ++# ++import suite ++import logging ++import VMBuilder.disk as disk ++from VMBuilder.util import run_cmd ++from VMBuilder.plugins.ubuntu.karmic import Karmic ++ ++class Lucid(Karmic): ++ pass --- vm-builder-0.11.3.orig/debian/patches/series +++ vm-builder-0.11.3/debian/patches/series @@ -0,0 +1,6 @@ +settle-down-disk.diff +network.diff +ssh-key-type-error.diff +ip-mask-typo.diff +ext4-support.diff +lucid-release.diff