Files
client-tools/tools/autotest/taskmanager.pl
T
2015-08-04 12:05:18 -05:00

45 lines
1.2 KiB
Raku

use FindBin '$Bin';
require "$Bin/passfail.pl";
require "$Bin/background_process.pl";
require "$Bin/serverconsole.pl";
$taskManagerPid = 0;
sub taskmanagerStartupShutdown
{
my ($prefix) = @_;
$passFailMessage = "TaskManager startup and shutdown";
failOnFalse(backgroundProcess($prefix, "TaskManager -- -s TaskManager autoStart=false 2>/dev/null", 10, sub {system("echo \"exit\" | debug/ServerConsole -- -s ServerConsole serverPort=60000 > /dev/null");}), $passFailMessage, $passFailMessage);
}
sub clusterStartup
{
my ($prefix) = @_;
$passFailMessage = "TaskManager cluster startup";
$taskManagerPid = startBackgroundProcess($prefix, "TaskManager -- \@taskmanager.cfg 2>/dev/null", 10, sub { return 1; });
$result = "";
do
{
$result = runTaskCommand($prefix, "runState");
} until($result eq "running");
failOnFalse($taskManagerPid > 0, $passFailMessage, $passFailMessage);
do
{
$result = runCommand($prefix, "runState");
} until($result eq "running");
pass("CentralServer cluster startup");
}
sub clusterShutdown
{
my ($prefix) = @_;
do
{
$result = runTaskCommand($prefix, "exit");
} until($result eq "exiting");
}
1;