提交 d9a41158 编写于 作者: J John Ferlan

virsh: Expose virConnectGetStoragePoolCapabilities

https://bugzilla.redhat.com/show_bug.cgi?id=1581670

Add a new storage pool command "pool-capabilities" to output
the storage pool capabilities.
Signed-off-by: NJohn Ferlan <jferlan@redhat.com>
ACKed-by: NMichal Privoznik <mprivozn@redhat.com>
上级 d9bf6cef
......@@ -2105,6 +2105,42 @@ cmdPoolEvent(vshControl *ctl, const vshCmd *cmd)
}
/*
* "pool-capabilities" command
*/
static const vshCmdInfo info_pool_capabilities[] = {
{.name = "help",
.data = N_("storage pool capabilities")
},
{.name = "desc",
.data = N_("Returns capabilities of storage pool support.")
},
{.name = NULL}
};
static const vshCmdOptDef opts_pool_capabilities[] = {
{.name = NULL}
};
static bool
cmdPoolCapabilities(vshControl *ctl,
const vshCmd *cmd ATTRIBUTE_UNUSED)
{
const unsigned int flags = 0; /* No flags so far */
virshControlPtr priv = ctl->privData;
VIR_AUTOFREE(char *) caps = NULL;
caps = virConnectGetStoragePoolCapabilities(priv->conn, flags);
if (!caps) {
vshError(ctl, "%s", _("failed to get storage pool capabilities"));
return false;
}
vshPrint(ctl, "%s\n", caps);
return true;
}
const vshCmdDef storagePoolCmds[] = {
{.name = "find-storage-pool-sources-as",
.handler = cmdPoolDiscoverSourcesAs,
......@@ -2226,5 +2262,11 @@ const vshCmdDef storagePoolCmds[] = {
.info = info_pool_event,
.flags = 0
},
{.name = "pool-capabilities",
.handler = cmdPoolCapabilities,
.opts = opts_pool_capabilities,
.info = info_pool_capabilities,
.flags = 0
},
{.name = NULL}
};
......@@ -389,6 +389,13 @@ supplied along with either the I<emulatorbin> or I<arch> in order to
generate output for the default I<machine>. Supplying a I<machine>
value will generate output for the specific machine.
=item B<pool-capabilities>
Print an XML document describing the storage pool capabilities for the
connected storage driver. This may be useful if you intend to create a
new storage pool and need to know the available pool types and supported
storage pool source and target volume formats as well as the required
source elements to create the pool.
=item B<inject-nmi> I<domain>
Inject NMI to the guest.
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册