[Fedora-livecd-list] PATCH: Disk (appliance) creator tool

Daniel P. Berrange berrange at redhat.com
Sun Feb 17 14:27:09 UTC 2008


On Sat, Feb 16, 2008 at 11:18:58PM -0600, Douglas McClendon wrote:
> Daniel P. Berrange wrote:
> >This patch adds support for another installation variant. The 
> >livecd-creator
> >produces ISO images which boot using syslinux. The image-creator creates a
> >single file containing a filesystem in which the OS is installated. This 
> >patch
> >adds a new disk-creator, which creates a single file containing a 
> >partitioned
> >disk with potentially many filesystems in which the OS is installed. 
> >Furthermore
> >it installs grub in the boot sector, so this image is immediately bootable 
> >in
> >a virtual machine.
> 
> FWIW, I advocate, (and my VirOS projects already uses), a system where 
> such a virtual appliance is a mandatory phase of livecd creation.  I 
> don't expect any buy-in to convert livecd-creator to this, but this 
> seems an appropriate time to advocate the design choice-
> 
> Basically, I see it as useful to look at the process as
> 
> distro_config
> 
> --(phase1process)-->
> 
> virtual_appliance_disk_image
> 
> --(phase2process)-->
> 
> livecd_image
> 
> Where an alternate phase2process plugin could be for example - network 
> push deploy to physical host.  Or, instantiate to virtual host.

The seperation between different processes is more or less what we
already have in the live cd code, though not as a pipeline, instead via
class inheritance. The livecd library base has the generic logic for
processing the kickstarting & doing the installation. The livecd/image/
disk creators simply subclass it to add specific code for either ISOs,
flat images, or partitioned disks, along with the particular type of
bootloader needed (syslinux vs grub).

> Basically it seems like since what livecd-creator uses internally, is 
> already _so close_ to an appliance image like this new disk-creator 
> creates already, why not just go ahead and do it (also, theoretically 
> for QA turnaround time, testing new stuff as virtappliance_diskimage is 
> much quicker than waiting for full livecd mksquashfs processing)

There is no significant time difference between any of the tools. If you
add the secret undocumented  --skip-compression and --skip-minimize
flags to livecd-creator, it'll be just as fast as the disk creator.

> Another reason why I like that pipeline breakdown, is because the sorts 
> of things that go on in phase2process can even be largely distribution 
> agnostic.  Combined with alternate phase1process plugins that support 
> other distributions, and you get quite a flexible provisioning tool.

A significant part of the phase 2 procss is dealing with the bootloader
and initrd setup which is far from distro-agnostic.

Dan.
-- 
|=- Red Hat, Engineering, Emerging Technologies, Boston.  +1 978 392 2496 -=|
|=-           Perl modules: http://search.cpan.org/~danberr/              -=|
|=-               Projects: http://freshmeat.net/~danielpb/               -=|
|=-  GnuPG: 7D3B9505   F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505  -=| 




More information about the Fedora-livecd-list mailing list