tools: virsh: metadata: do not report error on missing metadata

Similarly to `desc` and `net-desc`, return an empty string if
there is no metadata to be returned.

https://issues.redhat.com/browse/RHEL-27172

Signed-off-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
Ján Tomko
2025-04-03 14:08:30 +02:00
parent d7492f5225
commit 312088d9b6
2 changed files with 16 additions and 4 deletions
+8 -2
View File
@@ -8933,8 +8933,14 @@ cmdMetadata(vshControl *ctl, const vshCmd *cmd)
g_autofree char *data = NULL;
/* get */
if (!(data = virDomainGetMetadata(dom, VIR_DOMAIN_METADATA_ELEMENT,
uri, flags)))
return false;
uri, flags))) {
if (virGetLastErrorCode() == VIR_ERR_NO_DOMAIN_METADATA) {
virResetLastError();
data = g_strdup("");
} else {
return false;
}
}
vshPrint(ctl, "%s\n", data);
}
+8 -2
View File
@@ -604,8 +604,14 @@ cmdNetworkMetadata(vshControl *ctl, const vshCmd *cmd)
/* get */
if (!(data = virNetworkGetMetadata(net, VIR_NETWORK_METADATA_ELEMENT,
uri, flags)))
return false;
uri, flags))) {
if (virGetLastErrorCode() == VIR_ERR_NO_NETWORK_METADATA) {
virResetLastError();
data = g_strdup("");
} else {
return false;
}
}
vshPrint(ctl, "%s\n", data);
}