I'll admit to being totally confused by the interactions of the various BDII components - they are horribly complex and interwoven collection of scripts / providers / plugins / programs. I understand that counselling is available for those who spend too long working with them.
anyway - attempts to get a new plugin to simply provide the NGS software failed horribly and I ended up patching /opt/lcg/libexec/lcg-info-dynamic-software
--- lcg-info-dynamic-software.orig 2007-11-22 14:25:02.000000000 +0000
+++ lcg-info-dynamic-software 2008-10-10 22:02:15.000000000 +0100
@@ -1,8 +1,10 @@
#!/usr/bin/perl -w
use strict;
+use IO::Dir;
my $path="/opt/edg/var/info";
+my $ngspath="/usr/ngs";
my @output; # ldif output that is sent to std out.
my @dirs; # The contents of the path
my @ldif_file; # Content of the static ldif file
@@ -23,7 +25,7 @@
exit 1
}
-#Finds the installed software
+#Finds the installed software (glite)
@dirs=`ls $path`;
foreach(@dirs){
chomp;
@@ -40,6 +42,13 @@
}
}
+# Do the same for the NGS software
+my @tags = sort grep { /^[A-Z0-9]+_?/ } ( IO::Dir->new($ngspath)->read );
+for my $t (@tags) {
+ push @exp_soft, "GlueHostApplicationSoftwareRunTimeEnvironment: NGS-$t\n";
+ push @exp_soft, "GlueHostApplicationSoftwareRunTimeEnvironment: $t\n";
+}
+
#Produces the output from the static ldif file and the install software.
for (@ldif_file){
if(/dn:\s+GlueSubClusterUniqueID=/){
No comments:
Post a Comment