Bug 4174 - GRAM should check for needed Perl modules
: GRAM should check for needed Perl modules
Status: RESOLVED FIXED
: GRAM
wsrf scheduler interface
: development
: PC Linux
: P3 normal
: 4.0.5
Assigned To:
:
:
:
: 4539
  Show dependency treegraph
 
Reported: 2006-01-24 11:38 by
Modified: 2007-05-03 10:51 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2006-01-24 11:38:57
GRAM does not check for all the dependencies at build time. One I have run into
a couple of times is XML/Parser.pm

It can be really hard to figure out what the problem is. The only thing in the
container log is:

2006-01-24 09:02:51,373 DEBUG perl.JobManagerScript [Thread-19,run:191]
Executing command:
/scratch/rynge/HEAD/install/libexec/globus-gridmap-and-execute -g
/etc/grid-security/grid-mapfile
/scratch/rynge/HEAD/install/libexec/globus-job-manager-
script.pl -m fork -f /scratch/rynge/HEAD/install/tmp/gram_job_mgr60085.tmp -c submit
2006-01-24 09:02:51,422 DEBUG perl.JobManagerScript [Thread-19,run:208] first
line: GRAM_SCRIPT_ERROR:21
2006-01-24 09:02:51,423 DEBUG perl.JobManagerScript [Thread-19,run:212] Read
line: GRAM_SCRIPT_ERROR:21
2006-01-24 09:02:51,424 DEBUG perl.JobManagerScript [Thread-19,run:250] checking
for anything on stderr...


There might me more perl modules which should be checked for. A sample autoconf
macro:

  AC_MSG_CHECKING(for XML::Parser Perl module)
  `$PERL -MXML::Parser -e 'exit 0;' >/dev/null 2>&1`
  if test $? != "0"; then
    AC_MSG_ERROR(failed)
    exit 1;
  fi;
  AC_MSG_RESULT(ok)
------- Comment #1 From 2006-01-25 13:24:17 -------
I added a check to the GRAM setup package which will display 

ERROR: Required perl module XML::Parser not found

if the module is not found at setup time.

joe
------- Comment #2 From 2006-02-01 11:34:51 -------
Do we need to add this to the admin guide's prereq list?
------- Comment #3 From 2006-02-01 11:41:42 -------
Probably. It will be a problem to keep track of all these tiny dependencies.
Looking at the new test package (Bug 3705), it has a bunch of perl deps as well:

Getopt::Long
Term::ANSIColor
Test::Harness::Straps
HTML::Template
IPC::Shareable
------- Comment #4 From 2007-05-01 09:35:50 -------
This is the complete set of modules referenced in GT 4.0.1 lib/perl:

use Archive::Tar;
use Archive;
use AutoLoader;
use Build;
use BuildMacros;
use Carp;
use Compress::Zlib;
use Config;
use Cwd;
use Data::Dumper;
use Digest::MD5;
use Errno;
use ExpandSource;
use Exporter;
use Fcntl;
use File::Basename;
use File::Copy;
use File::Find;
use File::Path;
use File::Spec;
use Filelist;
use Getopt::Long;
use IO::Handle;
use IO::Zlib;
use IPC::Open2;
use Inform;
use POSIX;
use Pod::Checker;
use Pod::Find;
use Pod::InputObjects;
use Pod::ParseUtils;
use Pod::Parser;
use Pod::PlainText;
use Pod::Select;
use Pod::Usage;
use Switch;
use Symbol;
use Tie::Handle;
use XML::Parser;
------- Comment #5 From 2007-05-01 09:40:39 -------
I'm reopening, this fix should be added to the 4 0 branch too.
------- Comment #6 From 2007-05-03 10:01:43 -------
I committed the check for the XML:Parser Perl module Joe did
in HEAD to the 4.0 branch.