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

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
Libguestfs mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/libguestfs

Reply via email to