[Thincrust-devel] Re: [virt-devel] oVirt Node image build process

Perry Myers pmyers at redhat.com
Wed Nov 5 02:14:16 UTC 2008


Daniel P. Berrange wrote:
> On Tue, Nov 04, 2008 at 02:31:51PM -0500, Mike Bonnet wrote:
>> We're once again revisiting the oVirt Node image build process.  Given
>> then current constraints on time and resources, it appears that building
>> the image in a disposable VM is the best solution.
>>
>> http://et.devel.redhat.com/wiki/index.php/OVirt_Node_Build_and_Packaging#Appliances_Built_in_Disposable_Virtual_Machines_as_Images.2FISOs
>>
>> RCM has a Xen host available to run VMs on.  We'll install a new
>> RHEL-5.2 guest there for use as the pristine build environment.  Once it
>> is installed we'll create an LVM r/w snapshot of the guest image and
>> reconfigure the guest to run from the snapshot.  Builds will then be run
>> as root in the snapshot-based guest (by RCM or an oVirt developer),
>> including installing whatever packages are necessary from dist-5E-ovirt.
>> After the images are created they will be uploaded to the DistCVS
>> lookaside cache and referenced in the specfile as Source.  When the
>> build is complete and the images uploaded, the LVM snapshot will be
>> discarded.
>>
>> To ensure reproduceability of the image build, imformation about the
>> build environment will be uploaded to DistCVS along with the image.
>> These will include the output of "rpm -qa" on the builder, and the
>> complete image build logs.
> 
> The rpm -qa output of the guest OS is good, but while I remember, we must
> also make sure we save the list of RPMs used by the livecd-creator itself
> when building the images. We'll need this info in order to determine
> whether a RPM security update requires us to re-generate a new image.
> 
> This probably needs the live-creator to output an explicit report of
> what it installed.

Agreed.  cc'ing thincrust-devel so that David Huff can add this to his 
list of things todo for the November code freeze.

What we want is an option for livecd-creator to output a list of RPMs 
installed in the livecd.  appliance-creator should also expose this 
functionality.

Also... You've been working on functionality to build a tarball containing 
the SRPMS used in an appliance for appliance-creator, but we need this 
functionality for livecd-tools as well since we can't use the 
appliance-creator to build the oVirt Node.  (Because the oVirt Node is a 
livecd ISO and not a disk image).

Perry

>> Image builds will require RCM intervention, including creation of the
>> LVM snapshot and startup of the build guest.  Since official builds will
>> be relatively infrequent, this was considered acceptable.  Regular
>> development/testing builds will be done by developers in their own
>> environment.  If a build problem is found that is unique to the guest
>> environment, developers may have access to the guest, with the knowledge
>> that the guest environment will be refreshed from the pristine image
>> before the next build.
>>
>> If there are any questions or comments about this approach, please let
>> me know.
> 
> This looks like the optimal approach given our time constraints & current
> toolchain functionality.
> 
> Daniel


-- 
|=-        Red Hat, Engineering, Emerging Technologies, Boston        -=|
|=-                     Email: pmyers at redhat.com                      -=|
|=-         Office: +1 412 474 3552   Mobile: +1 703 362 9622         -=|
|=- GnuPG: E65E4F3D 88F9 F1C9 C2F3 1303 01FE 817C C5D2 8B91 E65E 4F3D -=|




More information about the Thincrust-devel mailing list