Re: [Libvir] PATCH: 16/16: website documentation

2008-02-11 Thread Daniel P. Berrange
This patch adds a new 'storage.html' page to the website giving examples of the XML format for each pool type, the XML format for volumes, a description of all XML elements, and other storage pool specific information. libvir.html | 576 +++

Re: [Libvir] PATCH: 15/16: stub test driver

2008-02-11 Thread Daniel P. Berrange
This just stubs out an empty no-op storage driver impl for the test driver. This is basically to prevent the ensure the test suite does not try to contact the daemon for storage APIs, which would cause tests to fail. This needs to be extended to provide a fully-fledged test impl of the storage API

Re: [Libvir] PATCH: 14/16: disk partition backend

2008-02-11 Thread Daniel P. Berrange
This implements a storage pool for partitioning local disks. It uses parted as the tool for reading & writing disk partitions. Since parted is GPLv3, we cannot link against the code directly. So, this driver calls out to the regular 'parted' command line tool for creationg/deletion. For listing of

Re: [Libvir] PATCH: 13/16: iSCSI backend

2008-02-11 Thread Daniel P. Berrange
This provides a storage pool using the iSCSI protocol. Since there is no API for iSCSI it is implemented by simply shelling out to the iscsiadm command line tool. A pool corresponds to a single target on the iSCSI server. Starting a pool logs into the server and maps the target's LUNs into the loca

Re: [Libvir] PATCH: 12/16: logical volume backend

2008-02-11 Thread Daniel P. Berrange
This patch implements a storage pool based on logical volume management. The underlying implementation calls out to LVM on Linux. A future implementation for Solaris would use the ZFS pool support to achieve the same functionality. The LVM impl uses the LVM command line tools, in particular lvs, an

Re: [Libvir] PATCH: 11/16: directory/fs/netfs backend

2008-02-11 Thread Daniel P. Berrange
This patch implements 3 storage pools in one go. This provides the base level 'directory' storage pool, where an existing directory contains files as volumes. This is guarenteed to be available on any OS since it just uses plain POSIX apis for creation/deletion. If qemu-img or qcow2-create command

Re: [Libvir] PATCH: 10/16: general purpose helper APIs

2008-02-11 Thread Daniel P. Berrange
This patch provides a couple of helper APIs used by the forthcoming driver backends. - virStorageBackendUpdateVolInfo - take a filename and virStorageVolPtr and update the capacity/allocation information based on the file stat() results. Also update the permissions data on owner/mode

Re: [Libvir] PATCH: 8/16: virsh convenience commands

2008-02-11 Thread Daniel P. Berrange
This patch adds 3 extra commands to virsh to allow storage pools and volumes to be defined & created without using XML. These have the names 'pool-define-as', 'pool-create-as', 'vol-create-as'. virsh will take the args to these commands and build suitable XML to pass into the libvirt APIs. This is

Re: [Libvir] PATCH: 7/16: virsh core commands

2008-02-11 Thread Daniel P. Berrange
This patch adds new virsh commands for all the libvirt storage APIs allowing their use from the shell. The style follows that of the existing domain & network commands, so I won't bother listing them in great detail. The only complexity is in dealing with the vol-XXX commands. These can accept eit

Re: [Libvir] PATCH: 6/16: python API

2008-02-11 Thread Daniel P. Berrange
This extends the generator / manual bindings to implement all the storage APIs. Most are handle automatically, and those which are not, pretty much follow the existing pattern for virDomain and virNetwork APIs. generator.py | 93 +- libvir.c | 293 ++

Re: [Libvir] PATCH: 5/16: remote driver client

2008-02-11 Thread Daniel P. Berrange
This patch adds support for the storage APIs to the remote driver client end. As with the network driver, things are configured such that all virtualization drivers will end up delegating to the remote driver for storage APIs. There's not much interesting to say about this patch since it just follo

Re: [Libvir] PATCH: 1/16: public API

2008-02-11 Thread Daniel P. Berrange
This defines the public API for the storage pool and volume support. The naming of the APIs follows the example set by the network and domain APIs whereever the logical functions match. The main change since previous iterations is the addition of an explicit API for virStoragePoolBuild and virStora

[Libvir] PATCH: 0/16: Storage management APIs

2008-02-11 Thread Daniel P. Berrange
The patch series that follows provides storage management APIs for dealing with local directories, local filesystems, remote filesystems, logical volumes (LVM), disk partitioning, and iSCSI. It will also soon support SCSI host adapters (including NPIV). I'll include comments inline with each patch

[Libvir] [PATCH] Pull useless-if-before-free from gnulib, and update.

2008-02-11 Thread Jim Meyering
I added a slightly improved useless-if-before-free to gnulib, so this patch makes bootstrap pull the script from there. It also pulls in a vasnprintf module improvement: it works around a just-discovered bug in HPUX 10.20's printf(3) implementation: http://thread.gmane.org/gmane.comp.gnu.coreut