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