invirt/packages/invirt-autoinstaller.git
16 years agoput the post-copy frobbing details in the image
Greg Price [Thu, 3 Apr 2008 06:22:54 +0000 (02:22 -0400)] 
put the post-copy frobbing details in the image

svn path=/trunk/packages/sipb-xen-guest-installer/; revision=405

16 years agotodo has moved to trac
Greg Price [Sun, 30 Mar 2008 08:48:19 +0000 (04:48 -0400)] 
todo has moved to trac

svn path=/trunk/packages/sipb-xen-guest-installer/; revision=343

16 years agosome cleanups in copying autoinstaller
Greg Price [Sun, 30 Mar 2008 08:02:48 +0000 (04:02 -0400)] 
some cleanups in copying autoinstaller

svn path=/trunk/packages/sipb-xen-guest-installer/; revision=338

16 years agocopying installer works now (maybe?)
Greg Price [Sun, 30 Mar 2008 06:49:43 +0000 (02:49 -0400)] 
copying installer works now (maybe?)

At least for the image 'ice3', which IIRC was created with
/usr/sbin/sipb-xen-make-iso.  It's an etch amd64 image.
It also had to have package nullmailer installed, replacing exim4.

svn path=/trunk/packages/sipb-xen-guest-installer/; revision=336

17 years agoPrototype fast installer using a special guest.
Greg Price [Tue, 13 Nov 2007 10:10:10 +0000 (05:10 -0500)] 
Prototype fast installer using a special guest.

Rather than poke directly in the boot sector, partition table,
etc, which caused so much pain last week (r231), we just dd
the entire disk.  Then we poke at the bits that need to change
(like secrets, the hostname, the root password, the filesystem uuids).
Since this poking is distribution-dependent, we want it to be
supplied by the image, so to make that safe we run it in a VM.

The plan is
 1. source image is dd'd (in the host) to the target image
 2. special copying-installer image is booted, with access to target
    and to a small image containing its arguments
 3. copying-installer guest reads arguments, mounts target,
    runs a script with a well-known name in target, passing arguments.

Bits I haven't done yet include
 - frob grub config in the copying-installer image so it boots
   with init = the copying-installer script (doing this manually for testing)
 - install script into copying-installer, or into my example image,
   in a sane automated way (they're checked into partial/ here)
 - all the tasks the image's script ought to actually carry out
 - make this all available from remctl and the web pages.

svn path=/trunk/packages/sipb-xen-guest-installer/sipb-xen-guest-installer/; revision=245

17 years agoprototype fast installer.
Greg Price [Sun, 4 Nov 2007 05:41:11 +0000 (01:41 -0400)] 
prototype fast installer.

To install a distribution on a new volume, we take an existing
installed volume produced with sipb-xen-make-iso, and
 1. copy GRUB's data with dd
 2. frob the partition table with sfdisk, if the disk size is different
 3. make the filesystem
 4. twiddle the hostname and root password and whatever else
 5. make the swap area
 6. boot!

In this prototype, steps 2 and 4 aren't implemented yet;
steps 1, 3, and 5 all use numbers that come from what the
sipb-xen-make-iso etch installer does rather than from
actually reading the partition table; and the whole thing
is just a program in /usr/sbin, not integrated into what
remctl / the web app invoke.

It all takes about thirty seconds (28.0s most recently),
excluding the boot.

svn path=/trunk/packages/sipb-xen-guest-installer/sipb-xen-guest-installer/; revision=231

17 years agosimplify isolinux.cfg.
Greg Price [Sun, 28 Oct 2007 08:14:48 +0000 (04:14 -0400)] 
simplify isolinux.cfg.

Once we fix the problem of rebooting with the CD mounted again,
we can remove the prompt, so the user doesn't have to touch the console.
Until then, they need an opportunity to destroy/reboot-without-CD
after the installation finishes.

svn path=/trunk/packages/sipb-xen-guest-installer/sipb-xen-guest-installer/; revision=222

17 years agopostinst script, nicer pathnames, and read password hash from a file
Greg Price [Sun, 28 Oct 2007 06:47:50 +0000 (02:47 -0400)] 
postinst script, nicer pathnames, and read password hash from a file

The postinst script has been tested by running it directly,
but I still haven't attempted actually building and installing
the package.

svn path=/trunk/packages/sipb-xen-guest-installer/sipb-xen-guest-installer/; revision=221

17 years agoUse temp directory, use DHCP, and live in sane paths.
Greg Price [Sun, 28 Oct 2007 05:08:34 +0000 (01:08 -0400)] 
Use temp directory, use DHCP, and live in sane paths.

The partial/ tree is gone now.
Files are in files/; the installer's persistent data
will go in subtrees like /srv/guest-installer/etch/.

Also, it magically takes only 15 minutes now.

svn path=/trunk/packages/sipb-xen-guest-installer/sipb-xen-guest-installer/; revision=218

17 years agoa system for building guest images on demand (partially implemented)
Greg Price [Tue, 16 Oct 2007 08:11:46 +0000 (04:11 -0400)] 
a system for building guest images on demand (partially implemented)

The plan, roughly, is
 1. we download an upstream install CD iso, mount it, copy out the contents;
 2. when a user wants a VM, the script makes a copy, applies a small static
    patch (mostly a preseed file for the installer), adds a few vm-dependent
    variables to the preseed, maybe makes some other changes here,
    then makes an iso from that;
 3. we boot a vm from the new iso, with the empty volume as /dev/hda,
    and let the installer run.

This checkin implements 2 and 3, when run in an appropriate testing
environment, but I haven't adapted it to the real environment yet.
Step 2 turns out to be surprisingly fast; much less than a second.
Step 3, unfortunately, is looking like 20 minutes, maybe 10 if we
work at tightening it.  We'll want to mitigate that somehow.

Code in the 'partial' directory is meant to be moved elsewhere
as it gets integrated.

svn path=/trunk/packages/sipb-xen-guest-installer/sipb-xen-guest-installer/; revision=201