diff --git a/xCAT-server/lib/xcat/plugins/zvm.pm b/xCAT-server/lib/xcat/plugins/zvm.pm index 242c1bd7e..518f7c6f1 100644 --- a/xCAT-server/lib/xcat/plugins/zvm.pm +++ b/xCAT-server/lib/xcat/plugins/zvm.pm @@ -1253,6 +1253,15 @@ sub powerVM { $out = `ssh $hcp "$::DIR/stopvs $userId"`; xCAT::zvmUtils->printLn( $callback, "$node: $out" ); } + + # Power off virtual server (gracefully) + elsif ( $args->[0] eq 'softoff' ) { + $out = `ssh -o ConnectTimeout=10 $node "shutdown -h now"`; + sleep(25); + + $out = `ssh $hcp "$::DIR/stopvs $userId"`; + xCAT::zvmUtils->printLn( $callback, "$node: $out" ); + } # Get the status (on|off) elsif ( $args->[0] eq 'stat' ) {