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 =
|
my %master_actions =
|
||||||
(
|
(
|
||||||
"launch" => \&master_launch,
|
"launch" => \&master_launch,
|
||||||
|
"list" => \&master_list,
|
||||||
"register" => \&master_register,
|
"register" => \&master_register,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
@ -23,17 +24,40 @@ sub master_register
|
||||||
{
|
{
|
||||||
my $args = shift;
|
my $args = shift;
|
||||||
|
|
||||||
if ($args->{param}{nodename}) {
|
if ($args->{param}{nodename})
|
||||||
|
{
|
||||||
my $nodename = $args->{param}{nodename};
|
my $nodename = $args->{param}{nodename};
|
||||||
|
|
||||||
log INFO, "New node: $nodename";
|
if (! grep { $_ eq $nodename } @nodes)
|
||||||
push @nodes, "$nodename";
|
{
|
||||||
|
log INFO, "New node: $nodename";
|
||||||
|
push @nodes, "$nodename";
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
log WARN, "Node $nodename alredy registered";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
log WARN, "nodename empty, cannot register new node";
|
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
|
sub build_task_xml
|
||||||
{
|
{
|
||||||
my $files = shift;
|
my $files = shift;
|
||||||
|
|
|
||||||
Reference in a new issue