On Tue, Nov 20, 2018 at 10:06:53AM +0100, Pino Toscano wrote:
 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. 
Yup, I'll push this one and propose an extra patch for
virt-v2v to check for the executable.
Rich.
-- 
Richard Jones, Virtualization Group, Red Hat 
http://people.redhat.com/~rjones
Read my programming and virtualization blog: 
http://rwmj.wordpress.com
Fedora Windows cross-compiler. Compile Windows programs, test, and
build Windows installers. Over 100 libraries supported.
http://fedoraproject.org/wiki/MinGW