[Libguestfs] [PATCH 7/8] v2v: -o rhv-upload: remove uploaded disks on failure
Richard W.M. Jones
rjones at redhat.com
Tue Sep 17 10:43:33 UTC 2019
I think we should do this slightly differently for consistency with
other classes. See here for example:
https://github.com/libguestfs/libguestfs/blob/dea9636c596acd030c9955057863cf080bdd89fb/v2v/output_openstack.ml#L395-L398
(1) Declare a val mutable in the object:
val mutable delete_disks_on_exit = true
> @@ -275,6 +290,13 @@ object
> if Python_script.run_command vmcheck_script json_params [] <> 0 then
> error (f_"failed vmchecks, see earlier errors");
>
> + (* Set up an at-exit handler so we delete the orphan disks on failure. *)
> + at_exit (
> + fun () ->
> + if disks_uuids <> [] then
(2) Change this check to:
if delete_disks_on_exit then
> + delete_disks disks_uuids
> + );
> +
> (* Create an nbdkit instance for each disk and set the
> * target URI to point to the NBD socket.
> *)
> @@ -419,7 +441,12 @@ If the messages above are not sufficient to diagnose the problem then add the
> with_open_out ovf_file (fun chan -> output_string chan ovf);
> if Python_script.run_command createvm_script json_params [ovf_file] <> 0
> then
> - error (f_"failed to create virtual machine, see earlier errors")
> + error (f_"failed to create virtual machine, see earlier errors");
> +
> + (* The virtual machine was created successfully, so there are no disks
> + * to remove manually.
> + *)
> + disks_uuids <- []
(3) Remove this hunk.
I would be happy with this patch if it was change in the way described
above.
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
More information about the Libguestfs
mailing list