Archived
1
0
Fork 0

Guantanamo: add list action to master process

This commit is contained in:
Mercier Pierre-Olivier 2013-11-30 22:24:34 +01:00
parent 971851633d
commit 9de4ca25b0

View file

@ -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;