On Monday, 19 November 2018 20:09:34 CET Richard W.M. Jones wrote:
Previously:
$ virt-v2v -v -x -i disk fedora-28.img -o openstack -oo server-id=foo
virt-v2v: libguestfs 1.39.11fedora=29,release=1.fc29,libvirt (x86_64)
libvirt version: 4.5.0
virt-v2v: error: openstack: precheck failed, there may be a problem with
authentication, see earlier error messages
rm -rf '/var/tmp/null.dTxRFN'
Notice there is no "earlier error message".
After this commit the error changes to:
openstack: executable not found
virt-v2v: error: openstack: precheck failed, there may be a problem with
authentication, see earlier error messages
---
common/mltools/tools_utils.ml | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/common/mltools/tools_utils.ml b/common/mltools/tools_utils.ml
index ad08d05eb..298d89b4d 100644
--- a/common/mltools/tools_utils.ml
+++ b/common/mltools/tools_utils.ml
@@ -420,9 +420,11 @@ and do_run ?(echo_cmd = true) ?stdout_fd ?stderr_fd args =
Either (pid, app, stdout_fd, stderr_fd)
with
| Executable_not_found _ ->
- Or 127
- | Unix.Unix_error (errcode, _, _) when errcode = Unix.ENOENT ->
- Or 127
+ debug "%s: executable not found" app;
+ Or 127
+ | Unix.Unix_error (errcode, fn, _) when errcode = Unix.ENOENT ->
+ debug "%s: %s: executable not found" app fn;
+ Or 127
This is OK.
Though, in the specific case of output_openstack#precheck I'd still
check for the existance of the "openstack" executable first, just like
what Python_script.error_unless_python_interpreter_found does. This
way there is a better error message to cover the case described in the
commit message, even in case -v is not passed.
--
Pino Toscano