Guantanamo: add list action to master process
This commit is contained in:
parent
971851633d
commit
9de4ca25b0
1 changed files with 27 additions and 3 deletions
|
@ -14,6 +14,7 @@ use ACU::Process;
|
|||
my %master_actions =
|
||||
(
|
||||
"launch" => \&master_launch,
|
||||
"list" => \&master_list,
|
||||
"register" => \&master_register,
|
||||
);
|
||||
|
||||
|
@ -23,17 +24,40 @@ sub master_register
|
|||
{
|
||||
my $args = shift;
|
||||
|
||||
if ($args->{param}{nodename}) {
|
||||
if ($args->{param}{nodename})
|
||||
{
|
||||
my $nodename = $args->{param}{nodename};
|
||||
|
||||
log INFO, "New node: $nodename";
|
||||
push @nodes, "$nodename";
|
||||
if (! grep { $_ eq $nodename } @nodes)
|
||||
{
|
||||
log INFO, "New node: $nodename";
|
||||
push @nodes, "$nodename";
|
||||
}
|
||||
else {
|
||||
log WARN, "Node $nodename alredy registered";
|
||||
}
|
||||
}
|
||||
else {
|
||||
log WARN, "nodename empty, cannot register new node";
|
||||
}
|
||||
}
|
||||
|
||||
sub master_list
|
||||
{
|
||||
my $doc = XML::LibXML::Document->new('1.0');
|
||||
my $root = $doc->createElement("process");
|
||||
|
||||
for my $target (@nodes)
|
||||
{
|
||||
my $t = $doc->createElement("target");
|
||||
$t->setAttribute("name", $target);
|
||||
$root->appendChild($t);
|
||||
}
|
||||
|
||||
$doc->setDocumentElement( $root );
|
||||
return $doc->toString();
|
||||
}
|
||||
|
||||
sub build_task_xml
|
||||
{
|
||||
my $files = shift;
|
||||
|
|
Reference in a new issue