mirror of
https://github.com/xcat2/xcat-core.git
synced 2025-05-21 19:22:05 +00:00
65 lines
1.3 KiB
Perl
65 lines
1.3 KiB
Perl
package xCAT_plugin::offline;
|
|
|
|
BEGIN
|
|
{
|
|
$::XCATROOT = $ENV{'XCATROOT'} ? $ENV{'XCATROOT'} : '/opt/xcat';
|
|
}
|
|
use lib "$::XCATROOT/lib/perl";
|
|
use xCAT::Table;
|
|
use Getopt::Long;
|
|
use File::Basename;
|
|
use File::Path;
|
|
use File::Copy;
|
|
use File::Find;
|
|
use Cwd;
|
|
use File::Temp;
|
|
use xCAT::SvrUtils;
|
|
use Data::Dumper;
|
|
Getopt::Long::Configure("bundling");
|
|
Getopt::Long::Configure("pass_through");
|
|
|
|
my $verbose = "0";
|
|
|
|
sub handled_commands {
|
|
return {
|
|
"offline" => "offline"
|
|
}
|
|
}
|
|
|
|
|
|
# function to handle request. Basically, get the information
|
|
# about the image and then do the action on it. Is that vague enough?
|
|
sub process_request {
|
|
my $request = shift;
|
|
my $callback = shift;
|
|
my $doreq = shift;
|
|
|
|
GetOptions(
|
|
"version|v" => \$version,
|
|
);
|
|
|
|
if ($version) {
|
|
my $version = xCAT::Utils->Version();
|
|
$callback->({ info => [$version] });
|
|
return;
|
|
}
|
|
if ($help) {
|
|
$callback->({ info => ["This command really doesn't do anything"] });
|
|
return;
|
|
}
|
|
|
|
if ($request->{node}) {
|
|
$noderange = $request->{node};
|
|
} else {
|
|
$callback->({ error => ["No nodes specified in request for offline"] });
|
|
}
|
|
|
|
|
|
my @nodes = @{$noderange};
|
|
foreach my $n (@nodes) {
|
|
$callback->({ info => ["$n: offline"] });
|
|
}
|
|
}
|
|
|
|
1;
|