Features/OpenStack using libguestfs

= Feature Name = OpenStack using libguestfs

Summary
Expand the operations and formats of virtual disk images supported by openstack, by using libguestfs

Owner

 * Name: Pádraig Brady,  Richard Jones
 * Email: pbrady@redhat.com, rjones@redhat.com

Current status

 * Targeted release: [Fedora 17]
 * Last updated: 20 Dec 2011
 * Percentage of completion: 100%

Detailed Description
libguestfs supports many virtual disk formats and has support for operations like resizing and file injection, that is useful to openstack, which is currently limited to raw or qcow images.

Benefit to Fedora
Expanding the range of virtual disk images, makes Fedora a more attractive platform for openstack development and deployment. It also aligns with RHEL 6 which doesn't support the default openstack virt image access method (qemu-nbd)

Scope
The change is isolated to the openstack-nova package.

How To Test
The openstack file injection logic that uses libguestfs is triggered when a VM instance is created. So the easiest thing is to follow the Test_Day:2011-10-20_OpenStack_Test_Day up to and including QA:Testcase_launch_an_instance_on_OpenStack and verify that the ssh keys have been inserted.

For low level testing of this specific logic one can do this:

runuser -s /bin/bash nova -c "python" from nova.virt import disk def _(string): return string #To avoid gettext issues at interactive prompt disk.inject_data("/path/to/a/virtual/disk/image")

Note doing the above within a VM is supported, albeit slower.

User Experience
There is no interface change to the the user.

Dependencies
The feature depends on libguestfs-mount which is already available. Any issues requiring updates to that package are avoided.

Contingency Plan
None necessary.

Documentation
There is no user visible change, hence no documentation change required. For completeness here are the 2 upstream commits:

https://review.openstack.org/gitweb?p=openstack%2Fnova.git;a=commit;h=f97c6652

https://review.openstack.org/gitweb?p=openstack%2Fnova.git;a=commit;h=66348596

Release Notes

 * Openstack; Expanded support for virtual disk image formats

Comments and Discussion

 * See Talk:Features/OpenStack_using_libguestfs