[libvirt] [PATCH v2 00/17] Add support to list Storage Driver backend capabilities

John Ferlan posted 17 patches 5 years, 2 months ago
Test syntax-check passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/20190212152816.3454-1-jferlan@redhat.com
docs/docs.html.in                             |   1 +
docs/format.html.in                           |   1 +
docs/formatstoragecaps.html.in                | 108 +++++++
docs/index.html.in                            |   1 +
docs/news.xml                                 |  12 +
docs/schemas/storagepoolcaps.rng              |  88 ++++++
docs/storage.html.in                          |   8 +-
include/libvirt/libvirt-storage.h             |   4 +
libvirt.spec.in                               |   1 +
mingw-libvirt.spec.in                         |   2 +
src/conf/Makefile.inc.am                      |   2 +
src/conf/capabilities.c                       |  74 +++++
src/conf/capabilities.h                       |  15 +
src/conf/storage_capabilities.c               | 135 +++++++++
src/conf/storage_capabilities.h               |  41 +++
src/conf/storage_conf.c                       | 131 +++++++--
src/conf/storage_conf.h                       |   7 +
src/conf/virstorageobj.h                      |   5 +
src/driver-storage.h                          |   5 +
src/libvirt-storage.c                         |  40 +++
src/libvirt_private.syms                      |   8 +
src/libvirt_public.syms                       |   5 +
src/remote/remote_driver.c                    |   1 +
src/remote/remote_protocol.x                  |  15 +-
src/remote_protocol-structs                   |   7 +
src/storage/storage_backend.c                 |  16 ++
src/storage/storage_backend.h                 |   3 +
src/storage/storage_driver.c                  |  44 +++
tests/Makefile.am                             |   7 +
.../storagepoolcapsschemadata/poolcaps-fs.xml | 268 ++++++++++++++++++
.../poolcaps-full.xml                         | 268 ++++++++++++++++++
tests/storagepoolcapstest.c                   | 124 ++++++++
tests/storagevolxml2xmlout/vol-sheepdog.xml   |   1 -
tests/virschematest.c                         |   1 +
tools/virsh-pool.c                            |  42 +++
tools/virsh.pod                               |   7 +
36 files changed, 1473 insertions(+), 25 deletions(-)
create mode 100644 docs/formatstoragecaps.html.in
create mode 100644 docs/schemas/storagepoolcaps.rng
create mode 100644 src/conf/storage_capabilities.c
create mode 100644 src/conf/storage_capabilities.h
create mode 100644 tests/storagepoolcapsschemadata/poolcaps-fs.xml
create mode 100644 tests/storagepoolcapsschemadata/poolcaps-full.xml
create mode 100644 tests/storagepoolcapstest.c
[libvirt] [PATCH v2 00/17] Add support to list Storage Driver backend capabilities
Posted by John Ferlan 5 years, 2 months ago
v1: https://www.redhat.com/archives/libvir-list/2019-January/msg00479.html

Changes since v1:

 * The first 4 patches were already R-by'd and pushed.

 * From v1, rework patch 5 & 6 into what now is patches 8 & 9. The
   format of the output for what results in the output for the
   connectGetCapabilities (virConnectGetCapabilities).

 * From v1, drop patch 7

 * In v2, patches 1-7 are new as a result of work done for patches 10-17.
   patches 1-5 were posted upstream, but left unreviewed:

   https://www.redhat.com/archives/libvir-list/2019-February/msg00333.html

   These essentially ensure the volOptions and poolOptions don't list
   or use something unexpected per documentation. The doc patch is a
   simple update to add some missing text and fix an entry

 * Patches 10-17 are new to implement the ability to get/format the
   Storage Driver backend capabilities via:

       storageConnectGetStoragePoolCapabilities
       virConnectGetStoragePoolCapabilities

   similar to how virConnectGetDomainCapabilities returns domain specific
   output. The output is essentially what is provided in the poolOptions
   and volOptions from storage_conf as valid values for format type fields
   for pool and/or volume as well as an enumerated list for the required
   source elements for creation. Whether the latter is useful or not was
   not clear, but since it is something that can cause a creation error
   when missing, I figured it'd be useful.  The new virsh command follows
   then domcapabilities nomenclature.

John Ferlan (17):
  conf: Remove volOptions for VIR_STORAGE_POOL_SHEEPDOG
  conf: Remove volOptions for VIR_STORAGE_POOL_RBD
  conf: Remove volOptions for VIR_STORAGE_POOL_SCSI
  conf: Remove volOptions for VIR_STORAGE_POOL_ISCSI[_DIRECT]
  conf: Remove volOptions for VIR_STORAGE_POOL_MPATH
  conf: Remove defaultFormat from VIR_STORAGE_POOL_ZFS
  docs: Fix a few storage.html.in typos
  conf: Introduce storage pool functions into capabilities
  storage: Process storage pool capabilities
  docs: Add schema for storage pool capabilities
  conf: Add storage pool capability formatting
  tests: Introduce storage pool capabilites test
  docs: Add description for Storage Pool Capabilities
  libvirt: Introduce virConnectGetStoragePoolCapabilities
  storage: Introduce storageConnectGetStoragePoolCapabilities
  virsh: Expose virConnectGetStoragePoolCapabilities
  docs: Add news article

 docs/docs.html.in                             |   1 +
 docs/format.html.in                           |   1 +
 docs/formatstoragecaps.html.in                | 108 +++++++
 docs/index.html.in                            |   1 +
 docs/news.xml                                 |  12 +
 docs/schemas/storagepoolcaps.rng              |  88 ++++++
 docs/storage.html.in                          |   8 +-
 include/libvirt/libvirt-storage.h             |   4 +
 libvirt.spec.in                               |   1 +
 mingw-libvirt.spec.in                         |   2 +
 src/conf/Makefile.inc.am                      |   2 +
 src/conf/capabilities.c                       |  74 +++++
 src/conf/capabilities.h                       |  15 +
 src/conf/storage_capabilities.c               | 135 +++++++++
 src/conf/storage_capabilities.h               |  41 +++
 src/conf/storage_conf.c                       | 131 +++++++--
 src/conf/storage_conf.h                       |   7 +
 src/conf/virstorageobj.h                      |   5 +
 src/driver-storage.h                          |   5 +
 src/libvirt-storage.c                         |  40 +++
 src/libvirt_private.syms                      |   8 +
 src/libvirt_public.syms                       |   5 +
 src/remote/remote_driver.c                    |   1 +
 src/remote/remote_protocol.x                  |  15 +-
 src/remote_protocol-structs                   |   7 +
 src/storage/storage_backend.c                 |  16 ++
 src/storage/storage_backend.h                 |   3 +
 src/storage/storage_driver.c                  |  44 +++
 tests/Makefile.am                             |   7 +
 .../storagepoolcapsschemadata/poolcaps-fs.xml | 268 ++++++++++++++++++
 .../poolcaps-full.xml                         | 268 ++++++++++++++++++
 tests/storagepoolcapstest.c                   | 124 ++++++++
 tests/storagevolxml2xmlout/vol-sheepdog.xml   |   1 -
 tests/virschematest.c                         |   1 +
 tools/virsh-pool.c                            |  42 +++
 tools/virsh.pod                               |   7 +
 36 files changed, 1473 insertions(+), 25 deletions(-)
 create mode 100644 docs/formatstoragecaps.html.in
 create mode 100644 docs/schemas/storagepoolcaps.rng
 create mode 100644 src/conf/storage_capabilities.c
 create mode 100644 src/conf/storage_capabilities.h
 create mode 100644 tests/storagepoolcapsschemadata/poolcaps-fs.xml
 create mode 100644 tests/storagepoolcapsschemadata/poolcaps-full.xml
 create mode 100644 tests/storagepoolcapstest.c

-- 
2.20.1

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH v2 00/17] Add support to list Storage Driver backend capabilities
Posted by Michal Privoznik 5 years, 1 month ago
On 2/12/19 4:27 PM, John Ferlan wrote:
> v1: https://www.redhat.com/archives/libvir-list/2019-January/msg00479.html
> 
> Changes since v1:
> 
>   * The first 4 patches were already R-by'd and pushed.
> 
>   * From v1, rework patch 5 & 6 into what now is patches 8 & 9. The
>     format of the output for what results in the output for the
>     connectGetCapabilities (virConnectGetCapabilities).
> 
>   * From v1, drop patch 7
> 
>   * In v2, patches 1-7 are new as a result of work done for patches 10-17.
>     patches 1-5 were posted upstream, but left unreviewed:
> 
>     https://www.redhat.com/archives/libvir-list/2019-February/msg00333.html
> 
>     These essentially ensure the volOptions and poolOptions don't list
>     or use something unexpected per documentation. The doc patch is a
>     simple update to add some missing text and fix an entry
> 
>   * Patches 10-17 are new to implement the ability to get/format the
>     Storage Driver backend capabilities via:
> 
>         storageConnectGetStoragePoolCapabilities
>         virConnectGetStoragePoolCapabilities
> 
>     similar to how virConnectGetDomainCapabilities returns domain specific
>     output. The output is essentially what is provided in the poolOptions
>     and volOptions from storage_conf as valid values for format type fields
>     for pool and/or volume as well as an enumerated list for the required
>     source elements for creation. Whether the latter is useful or not was
>     not clear, but since it is something that can cause a creation error
>     when missing, I figured it'd be useful.  The new virsh command follows
>     then domcapabilities nomenclature.
> 
> John Ferlan (17):
>    conf: Remove volOptions for VIR_STORAGE_POOL_SHEEPDOG
>    conf: Remove volOptions for VIR_STORAGE_POOL_RBD
>    conf: Remove volOptions for VIR_STORAGE_POOL_SCSI
>    conf: Remove volOptions for VIR_STORAGE_POOL_ISCSI[_DIRECT]
>    conf: Remove volOptions for VIR_STORAGE_POOL_MPATH
>    conf: Remove defaultFormat from VIR_STORAGE_POOL_ZFS
>    docs: Fix a few storage.html.in typos
>    conf: Introduce storage pool functions into capabilities
>    storage: Process storage pool capabilities
>    docs: Add schema for storage pool capabilities
>    conf: Add storage pool capability formatting
>    tests: Introduce storage pool capabilites test
>    docs: Add description for Storage Pool Capabilities
>    libvirt: Introduce virConnectGetStoragePoolCapabilities
>    storage: Introduce storageConnectGetStoragePoolCapabilities
>    virsh: Expose virConnectGetStoragePoolCapabilities
>    docs: Add news article
> 
>   docs/docs.html.in                             |   1 +
>   docs/format.html.in                           |   1 +
>   docs/formatstoragecaps.html.in                | 108 +++++++
>   docs/index.html.in                            |   1 +
>   docs/news.xml                                 |  12 +
>   docs/schemas/storagepoolcaps.rng              |  88 ++++++
>   docs/storage.html.in                          |   8 +-
>   include/libvirt/libvirt-storage.h             |   4 +
>   libvirt.spec.in                               |   1 +
>   mingw-libvirt.spec.in                         |   2 +
>   src/conf/Makefile.inc.am                      |   2 +
>   src/conf/capabilities.c                       |  74 +++++
>   src/conf/capabilities.h                       |  15 +
>   src/conf/storage_capabilities.c               | 135 +++++++++
>   src/conf/storage_capabilities.h               |  41 +++
>   src/conf/storage_conf.c                       | 131 +++++++--
>   src/conf/storage_conf.h                       |   7 +
>   src/conf/virstorageobj.h                      |   5 +
>   src/driver-storage.h                          |   5 +
>   src/libvirt-storage.c                         |  40 +++
>   src/libvirt_private.syms                      |   8 +
>   src/libvirt_public.syms                       |   5 +
>   src/remote/remote_driver.c                    |   1 +
>   src/remote/remote_protocol.x                  |  15 +-
>   src/remote_protocol-structs                   |   7 +
>   src/storage/storage_backend.c                 |  16 ++
>   src/storage/storage_backend.h                 |   3 +
>   src/storage/storage_driver.c                  |  44 +++
>   tests/Makefile.am                             |   7 +
>   .../storagepoolcapsschemadata/poolcaps-fs.xml | 268 ++++++++++++++++++
>   .../poolcaps-full.xml                         | 268 ++++++++++++++++++
>   tests/storagepoolcapstest.c                   | 124 ++++++++
>   tests/storagevolxml2xmlout/vol-sheepdog.xml   |   1 -
>   tests/virschematest.c                         |   1 +
>   tools/virsh-pool.c                            |  42 +++
>   tools/virsh.pod                               |   7 +
>   36 files changed, 1473 insertions(+), 25 deletions(-)
>   create mode 100644 docs/formatstoragecaps.html.in
>   create mode 100644 docs/schemas/storagepoolcaps.rng
>   create mode 100644 src/conf/storage_capabilities.c
>   create mode 100644 src/conf/storage_capabilities.h
>   create mode 100644 tests/storagepoolcapsschemadata/poolcaps-fs.xml
>   create mode 100644 tests/storagepoolcapsschemadata/poolcaps-full.xml
>   create mode 100644 tests/storagepoolcapstest.c
> 


ACK after you fix virsh command name, and what you already pointed out 
s/5.1.0/5.2.0/g. Sorry for late review.

Michal

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH v2 00/17] Add support to list Storage Driver backend capabilities
Posted by John Ferlan 5 years, 2 months ago
ping -

Tks,

John

On 2/12/19 10:27 AM, John Ferlan wrote:
> v1: https://www.redhat.com/archives/libvir-list/2019-January/msg00479.html
> 
> Changes since v1:
> 
>  * The first 4 patches were already R-by'd and pushed.
> 
>  * From v1, rework patch 5 & 6 into what now is patches 8 & 9. The
>    format of the output for what results in the output for the
>    connectGetCapabilities (virConnectGetCapabilities).
> 
>  * From v1, drop patch 7
> 
>  * In v2, patches 1-7 are new as a result of work done for patches 10-17.
>    patches 1-5 were posted upstream, but left unreviewed:
> 
>    https://www.redhat.com/archives/libvir-list/2019-February/msg00333.html
> 
>    These essentially ensure the volOptions and poolOptions don't list
>    or use something unexpected per documentation. The doc patch is a
>    simple update to add some missing text and fix an entry
> 
>  * Patches 10-17 are new to implement the ability to get/format the
>    Storage Driver backend capabilities via:
> 
>        storageConnectGetStoragePoolCapabilities
>        virConnectGetStoragePoolCapabilities
> 
>    similar to how virConnectGetDomainCapabilities returns domain specific
>    output. The output is essentially what is provided in the poolOptions
>    and volOptions from storage_conf as valid values for format type fields
>    for pool and/or volume as well as an enumerated list for the required
>    source elements for creation. Whether the latter is useful or not was
>    not clear, but since it is something that can cause a creation error
>    when missing, I figured it'd be useful.  The new virsh command follows
>    then domcapabilities nomenclature.
> 
> John Ferlan (17):
>   conf: Remove volOptions for VIR_STORAGE_POOL_SHEEPDOG
>   conf: Remove volOptions for VIR_STORAGE_POOL_RBD
>   conf: Remove volOptions for VIR_STORAGE_POOL_SCSI
>   conf: Remove volOptions for VIR_STORAGE_POOL_ISCSI[_DIRECT]
>   conf: Remove volOptions for VIR_STORAGE_POOL_MPATH
>   conf: Remove defaultFormat from VIR_STORAGE_POOL_ZFS
>   docs: Fix a few storage.html.in typos
>   conf: Introduce storage pool functions into capabilities
>   storage: Process storage pool capabilities
>   docs: Add schema for storage pool capabilities
>   conf: Add storage pool capability formatting
>   tests: Introduce storage pool capabilites test
>   docs: Add description for Storage Pool Capabilities
>   libvirt: Introduce virConnectGetStoragePoolCapabilities
>   storage: Introduce storageConnectGetStoragePoolCapabilities
>   virsh: Expose virConnectGetStoragePoolCapabilities
>   docs: Add news article
> 
>  docs/docs.html.in                             |   1 +
>  docs/format.html.in                           |   1 +
>  docs/formatstoragecaps.html.in                | 108 +++++++
>  docs/index.html.in                            |   1 +
>  docs/news.xml                                 |  12 +
>  docs/schemas/storagepoolcaps.rng              |  88 ++++++
>  docs/storage.html.in                          |   8 +-
>  include/libvirt/libvirt-storage.h             |   4 +
>  libvirt.spec.in                               |   1 +
>  mingw-libvirt.spec.in                         |   2 +
>  src/conf/Makefile.inc.am                      |   2 +
>  src/conf/capabilities.c                       |  74 +++++
>  src/conf/capabilities.h                       |  15 +
>  src/conf/storage_capabilities.c               | 135 +++++++++
>  src/conf/storage_capabilities.h               |  41 +++
>  src/conf/storage_conf.c                       | 131 +++++++--
>  src/conf/storage_conf.h                       |   7 +
>  src/conf/virstorageobj.h                      |   5 +
>  src/driver-storage.h                          |   5 +
>  src/libvirt-storage.c                         |  40 +++
>  src/libvirt_private.syms                      |   8 +
>  src/libvirt_public.syms                       |   5 +
>  src/remote/remote_driver.c                    |   1 +
>  src/remote/remote_protocol.x                  |  15 +-
>  src/remote_protocol-structs                   |   7 +
>  src/storage/storage_backend.c                 |  16 ++
>  src/storage/storage_backend.h                 |   3 +
>  src/storage/storage_driver.c                  |  44 +++
>  tests/Makefile.am                             |   7 +
>  .../storagepoolcapsschemadata/poolcaps-fs.xml | 268 ++++++++++++++++++
>  .../poolcaps-full.xml                         | 268 ++++++++++++++++++
>  tests/storagepoolcapstest.c                   | 124 ++++++++
>  tests/storagevolxml2xmlout/vol-sheepdog.xml   |   1 -
>  tests/virschematest.c                         |   1 +
>  tools/virsh-pool.c                            |  42 +++
>  tools/virsh.pod                               |   7 +
>  36 files changed, 1473 insertions(+), 25 deletions(-)
>  create mode 100644 docs/formatstoragecaps.html.in
>  create mode 100644 docs/schemas/storagepoolcaps.rng
>  create mode 100644 src/conf/storage_capabilities.c
>  create mode 100644 src/conf/storage_capabilities.h
>  create mode 100644 tests/storagepoolcapsschemadata/poolcaps-fs.xml
>  create mode 100644 tests/storagepoolcapsschemadata/poolcaps-full.xml
>  create mode 100644 tests/storagepoolcapstest.c
> 

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH v2 00/17] Add support to list Storage Driver backend capabilities
Posted by John Ferlan 5 years, 1 month ago
ping^2?  Yes, there are patches that indicate 5.1.0 that would need to
be changed to 5.2.0 that I've already changed in my local branch.

Tks,

John

On 2/12/19 10:27 AM, John Ferlan wrote:
> v1: https://www.redhat.com/archives/libvir-list/2019-January/msg00479.html
> 
> Changes since v1:
> 
>  * The first 4 patches were already R-by'd and pushed.
> 
>  * From v1, rework patch 5 & 6 into what now is patches 8 & 9. The
>    format of the output for what results in the output for the
>    connectGetCapabilities (virConnectGetCapabilities).
> 
>  * From v1, drop patch 7
> 
>  * In v2, patches 1-7 are new as a result of work done for patches 10-17.
>    patches 1-5 were posted upstream, but left unreviewed:
> 
>    https://www.redhat.com/archives/libvir-list/2019-February/msg00333.html
> 
>    These essentially ensure the volOptions and poolOptions don't list
>    or use something unexpected per documentation. The doc patch is a
>    simple update to add some missing text and fix an entry
> 
>  * Patches 10-17 are new to implement the ability to get/format the
>    Storage Driver backend capabilities via:
> 
>        storageConnectGetStoragePoolCapabilities
>        virConnectGetStoragePoolCapabilities
> 
>    similar to how virConnectGetDomainCapabilities returns domain specific
>    output. The output is essentially what is provided in the poolOptions
>    and volOptions from storage_conf as valid values for format type fields
>    for pool and/or volume as well as an enumerated list for the required
>    source elements for creation. Whether the latter is useful or not was
>    not clear, but since it is something that can cause a creation error
>    when missing, I figured it'd be useful.  The new virsh command follows
>    then domcapabilities nomenclature.
> 
> John Ferlan (17):
>   conf: Remove volOptions for VIR_STORAGE_POOL_SHEEPDOG
>   conf: Remove volOptions for VIR_STORAGE_POOL_RBD
>   conf: Remove volOptions for VIR_STORAGE_POOL_SCSI
>   conf: Remove volOptions for VIR_STORAGE_POOL_ISCSI[_DIRECT]
>   conf: Remove volOptions for VIR_STORAGE_POOL_MPATH
>   conf: Remove defaultFormat from VIR_STORAGE_POOL_ZFS
>   docs: Fix a few storage.html.in typos
>   conf: Introduce storage pool functions into capabilities
>   storage: Process storage pool capabilities
>   docs: Add schema for storage pool capabilities
>   conf: Add storage pool capability formatting
>   tests: Introduce storage pool capabilites test
>   docs: Add description for Storage Pool Capabilities
>   libvirt: Introduce virConnectGetStoragePoolCapabilities
>   storage: Introduce storageConnectGetStoragePoolCapabilities
>   virsh: Expose virConnectGetStoragePoolCapabilities
>   docs: Add news article
> 
>  docs/docs.html.in                             |   1 +
>  docs/format.html.in                           |   1 +
>  docs/formatstoragecaps.html.in                | 108 +++++++
>  docs/index.html.in                            |   1 +
>  docs/news.xml                                 |  12 +
>  docs/schemas/storagepoolcaps.rng              |  88 ++++++
>  docs/storage.html.in                          |   8 +-
>  include/libvirt/libvirt-storage.h             |   4 +
>  libvirt.spec.in                               |   1 +
>  mingw-libvirt.spec.in                         |   2 +
>  src/conf/Makefile.inc.am                      |   2 +
>  src/conf/capabilities.c                       |  74 +++++
>  src/conf/capabilities.h                       |  15 +
>  src/conf/storage_capabilities.c               | 135 +++++++++
>  src/conf/storage_capabilities.h               |  41 +++
>  src/conf/storage_conf.c                       | 131 +++++++--
>  src/conf/storage_conf.h                       |   7 +
>  src/conf/virstorageobj.h                      |   5 +
>  src/driver-storage.h                          |   5 +
>  src/libvirt-storage.c                         |  40 +++
>  src/libvirt_private.syms                      |   8 +
>  src/libvirt_public.syms                       |   5 +
>  src/remote/remote_driver.c                    |   1 +
>  src/remote/remote_protocol.x                  |  15 +-
>  src/remote_protocol-structs                   |   7 +
>  src/storage/storage_backend.c                 |  16 ++
>  src/storage/storage_backend.h                 |   3 +
>  src/storage/storage_driver.c                  |  44 +++
>  tests/Makefile.am                             |   7 +
>  .../storagepoolcapsschemadata/poolcaps-fs.xml | 268 ++++++++++++++++++
>  .../poolcaps-full.xml                         | 268 ++++++++++++++++++
>  tests/storagepoolcapstest.c                   | 124 ++++++++
>  tests/storagevolxml2xmlout/vol-sheepdog.xml   |   1 -
>  tests/virschematest.c                         |   1 +
>  tools/virsh-pool.c                            |  42 +++
>  tools/virsh.pod                               |   7 +
>  36 files changed, 1473 insertions(+), 25 deletions(-)
>  create mode 100644 docs/formatstoragecaps.html.in
>  create mode 100644 docs/schemas/storagepoolcaps.rng
>  create mode 100644 src/conf/storage_capabilities.c
>  create mode 100644 src/conf/storage_capabilities.h
>  create mode 100644 tests/storagepoolcapsschemadata/poolcaps-fs.xml
>  create mode 100644 tests/storagepoolcapsschemadata/poolcaps-full.xml
>  create mode 100644 tests/storagepoolcapstest.c
> 

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list