diff --git a/lib/publiccloud/ec2.pm b/lib/publiccloud/ec2.pm index 2fd5db228f39..96b1fcaeca8d 100644 --- a/lib/publiccloud/ec2.pm +++ b/lib/publiccloud/ec2.pm @@ -205,9 +205,9 @@ sub img_proof { sub cleanup { my ($self, $args) = @_; - #if for some reason the instance is not created everything below does not make sense to execute - return unless ($args->{my_instance} && $args->{my_instance}->{instance_id}); - my $instance_id = $args->{my_instance}->{instance_id}; + script_run('cd ~/terraform'); + my $instance_id = script_output('terraform output -json | jq -r ".vm_name.value[0]"', proceed_on_failure => 1); + script_run('cd'); select_host_console(force => 1); diff --git a/tests/publiccloud/run_ltp.pm b/tests/publiccloud/run_ltp.pm index ebe4b7063064..af8e9ee778f2 100644 --- a/tests/publiccloud/run_ltp.pm +++ b/tests/publiccloud/run_ltp.pm @@ -100,7 +100,7 @@ sub run { $instance = $self->{my_instance} = $args->{my_instance}; $provider = $self->{provider} = $args->{my_provider}; # required for cleanup } else { - $provider = $self->provider_factory(); + $provider = $self->{provider} = $self->provider_factory(); # required for cleanup $instance = $self->{my_instance} = $provider->create_instance(check_guestregister => is_openstack ? 0 : 1); } @@ -193,7 +193,6 @@ sub cleanup { script_run("(cd /tmp/log_instance && tar -zcf $root_dir/instance_log.tar.gz *)"); upload_logs("$root_dir/instance_log.tar.gz", failok => 1); } - $self->SUPER::cleanup(); } sub gen_ltp_env {