virsh does not include a --wait option to shutdown as xl and xm do, so we implement it by hand.
Needs new guest_await_destroy helper. Note the guest_await_shutdown requires on_shutdown='preserve' Signed-off-by: Ian Campbell <ian.campb...@citrix.com> Acked-by: Ian Jackson <ian.jack...@eu.citrix.com> --- v3: Drop $ho parameter frm guest_await_destroy, for consistency with changes to guest_destroy. --- Osstest/TestSupport.pm | 8 +++++++- Osstest/Toolstack/libvirt.pm | 4 +++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm index 5c753b4..427ead4 100644 --- a/Osstest/TestSupport.pm +++ b/Osstest/TestSupport.pm @@ -93,7 +93,7 @@ BEGIN { guest_checkrunning guest_check_ip guest_find_ether guest_find_domid guest_check_up guest_check_up_quick guest_get_state guest_await_reboot - guest_await_shutdown guest_destroy + guest_await_shutdown guest_await_destroy guest_destroy guest_vncsnapshot_begin guest_vncsnapshot_stash guest_check_remus_ok guest_editconfig host_involves_pcipassthrough host_get_pcipassthrough_devs @@ -1331,6 +1331,12 @@ sub guest_destroy ($) { toolstack($ho)->destroy($gho); } +sub guest_await_destroy ($$) { + my ($gho, $timeout) = @_; + my $ho = $gho->{Host}; + return guest_await_state($ho,$gho, "destroy", "", $timeout); +} + sub guest_create ($) { my ($gho) = @_; my $ho = $gho->{Host}; diff --git a/Osstest/Toolstack/libvirt.pm b/Osstest/Toolstack/libvirt.pm index 471b42e..28c5cb1 100644 --- a/Osstest/Toolstack/libvirt.pm +++ b/Osstest/Toolstack/libvirt.pm @@ -59,8 +59,10 @@ sub consolecmd ($$) { sub shutdown_wait ($$$) { my ($self,$gho,$timeout) = @_; + my $ho = $self->{Host}; my $gn = $gho->{Name}; - die "libvirt shutdown wait not implemented yet." + target_cmd_root($ho, "virsh shutdown $gn", 30); + guest_await_destroy($gho,$timeout); } sub migrate_check ($) { -- 2.1.4 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel