File Coverage

lib/Rex/Virtualization/VBox/shutdown.pm
Criterion Covered Total %
statement 11 21 52.3
branch 0 6 0.0
condition n/a
subroutine 4 5 80.0
pod 0 1 0.0
total 15 33 45.4


line stmt bran cond sub pod time code
1             #
2             # (c) Jan Gehring
3             #
4              
5             package Rex::Virtualization::VBox::shutdown;
6              
7 1     1   15 use v5.12.5;
  1         4  
8 1     1   5 use warnings;
  1         2  
  1         52  
9              
10             our $VERSION = '1.14.3'; # VERSION
11              
12 1     1   7 use Rex::Logger;
  1         3  
  1         7  
13 1     1   20 use Rex::Helper::Run;
  1         5  
  1         217  
14              
15             sub execute {
16 0     0 0   my ( $class, $arg1, %opt ) = @_;
17              
18 0 0         unless ($arg1) {
19 0           die("You have to define the vm name!");
20             }
21              
22 0           my $dom = $arg1;
23 0           Rex::Logger::debug("shutdown domain: $dom");
24              
25 0 0         unless ($dom) {
26 0           die("VM $dom not found.");
27             }
28              
29 0           i_run "VBoxManage controlvm \"$dom\" acpipowerbutton", fail_ok => 1;
30 0 0         if ( $? != 0 ) {
31 0           die("Error shutdown vm $dom");
32             }
33              
34             }
35              
36             1;