v1: https://www.redhat.com/archives/libvir-list/2018-December/msg00558.html Kept the subject the same, but the concept has been adjusted to follow issues pointed out by jtomko vis-a-vis allowing arbitrary options via XML. This series adds both the NFS and the RBD adjustments that were essentially in the referenced series from review. Changes since v1: * Patch 1: (NEW) Implements a bare-bones infrastructure for storage pool XML namespace. Could be split again, but separately the patches were too small IMO. * Patch 2: (NEW) Implementation of providing XML Namespace functions. The details of the operation are in the subsequent patch. I could combine 2 and 3, but perhaps it's easier to review separated. * Patch 3: (REWORK) Rework the previous series patch1 in order to utilize the Storage Pool XML Namespace. Adjust the description of the configuration and modify the storagepoolxml2xmltest appropriately. * Patch 4: (REWORK) Utilize the XML Namespace data to generate the command line which doesn't change since v1. * Patch 5: (REWORK) Rework the virsh code in order to generate the proper syntax to utilize Storage Pool XML Namespaces. * Patch 6: (NEW) Well, new as in this series, but it's essentially a rework of what was posted in the series jtomko referenced. The code will "prove" (to a degree) that the concept can work for multiple pool types. The "downside" is that there's no (easy) way that I could find to generate output to show the commands are executed. John Ferlan (6): conf: Introduce virStoragePoolXMLNamespace nfs: Add infrastructure to manage XML namespace options docs,tests: Add schema, description, and tests for NFS namespace storage: Add NFS storage pool mount options to command line virsh: Add source-mount-opts for pool commands rbd: Utilize storage pool namespace to manage config options docs/formatstorage.html.in | 87 ++++++++++ docs/schemas/storagepool.rng | 43 +++++ src/conf/storage_conf.c | 51 +++++- src/conf/storage_conf.h | 24 +++ src/libvirt_private.syms | 1 + src/storage/storage_backend_fs.c | 127 ++++++++++++++ src/storage/storage_backend_rbd.c | 159 +++++++++++++++++- src/storage/storage_util.c | 36 ++++ src/storage/storage_util.h | 14 ++ tests/Makefile.am | 4 +- .../pool-netfs-mountopts.argv | 1 + tests/storagepoolxml2argvtest.c | 4 + .../pool-netfs-mountopts.xml | 24 +++ .../pool-rbd-configopts.xml | 17 ++ .../pool-netfs-mountopts.xml | 24 +++ .../pool-rbd-configopts.xml | 20 +++ tests/storagepoolxml2xmltest.c | 7 + tools/virsh-pool.c | 39 ++++- tools/virsh.pod | 5 + 19 files changed, 680 insertions(+), 7 deletions(-) create mode 100644 tests/storagepoolxml2argvdata/pool-netfs-mountopts.argv create mode 100644 tests/storagepoolxml2xmlin/pool-netfs-mountopts.xml create mode 100644 tests/storagepoolxml2xmlin/pool-rbd-configopts.xml create mode 100644 tests/storagepoolxml2xmlout/pool-netfs-mountopts.xml create mode 100644 tests/storagepoolxml2xmlout/pool-rbd-configopts.xml -- 2.20.1 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list