+Patch to LB deployment modul (with build workarounds, for using).
+
Index: org.glite.deployment.lb/config/scripts/glite-lb-config.py
===================================================================
RCS file: /cvs/jra1mw/org.glite.deployment.lb/config/scripts/glite-lb-config.py,v
+<property name="build.package.name" value="glite-rgma-servicetool-config" />
+<property name="build.package.prefix" value="glite-rgma-servicetool" />
</project>
-Index: org.glite.jp.client/config/startup
-===================================================================
-RCS file: /cvs/jra1mw/org.glite.jp.client/config/startup,v
-retrieving revision 1.2
-diff -u -r1.2 startup
---- org.glite.jp.client/config/startup 31 Mar 2006 09:02:19 -0000 1.2
-+++ org.glite.jp.client/config/startup 3 Apr 2006 18:59:49 -0000
-@@ -41,10 +41,14 @@
- jpdump_maildir="--dump-mdir $GLITE_LB_EXPORT_JPDUMP_MAILDIR "
- [ -d "$GLITE_LB_EXPORT_JPDUMP_MAILDIR" ] || mkdir "$GLITE_LB_EXPORT_JPDUMP_MAILDIR" && chown $GLITE_USER:$GLITE_GROUP "$GLITE_LB_EXPORT_JPDUMP_MAILDIR"
- [ -n "$GLITE_LB_EXPORT_JPPS" ] && jpps="--jpps $GLITE_LB_EXPORT_JPPS "
-+ if [ -n "$GLITE_LB_EXPORT_JOBSDIR_KEEP" ]; then
-+ keep_jobs="--store ${GLITE_LB_EXPORT_JOBSDIR_KEEP} "
-+ [ -d $GLITE_LB_EXPORT_JOBSDIR_KEEP ] || mkdir -p $GLITE_LB_EXPORT_JOBSDIR_KEEP
-+ fi
-
- echo -n Starting glite-jp-importer ...
- su - $GLITE_USER -c "$GLITE_LOCATION/bin/glite-jp-importer \
-- -i $pidfile $jpreg_maildir $jpdump_maildir $jpps $creds" \
-+ -i $pidfile $jpreg_maildir $jpdump_maildir $jpps $keep_jobs $creds" \
- && echo " done" || echo " FAILED"
- }
-
-Index: org.glite.jp.client/examples/glite-jp-importer.sh
-===================================================================
-RCS file: /cvs/jra1mw/org.glite.jp.client/examples/glite-jp-importer.sh,v
-retrieving revision 1.3
-diff -u -r1.3 glite-jp-importer.sh
---- org.glite.jp.client/examples/glite-jp-importer.sh 16 Mar 2006 15:08:50 -0000 1.3
-+++ org.glite.jp.client/examples/glite-jp-importer.sh 3 Apr 2006 18:59:49 -0000
-@@ -21,11 +21,9 @@
- echo "Please specify the Job Provanance Primary Storage server."
- exit 1
- fi
--# bookkeeping server
--if [ -z "$GLITE_LB_EXPORT_BKSERVER" ]; then
-- echo "Please specify the Book Keeping server."
-- exit 1
--fi
-+# book keeping server
-+GLITE_LB_SERVER_PORT=${GLITE_LB_SERVER_PORT:-9000}
-+GLITE_LB_EXPORT_BKSERVER=${GLITE_LB_EXPORT_BKSERVER:-localhost:$GLITE_LB_SERVER_PORT}
- # certificates
- if [ -z "$X509_USER_CERT" -o -z "$X509_USER_KEY" ]; then
- echo "Please set X509_USER_CERT and X509_USER_KEY."
-@@ -41,25 +39,30 @@
- GLITE_LB_EXPORT_JPREG_MAILDIR=/tmp/jpreg
- echo "GLITE_LB_EXPORT_JPREG_MAILDIR not specified (-J arguent of the bkserver), used $GLITE_LB_EXPORT_JPREG_MAILDIR"
- fi
-+# pidfile
-+[ -n "$GLITE_JP_IMPORTER_PIDFILE" ] && pidfile="-i $GLITE_JP_IMPORTER_PIDFILE "
-
- CERT_ARGS="-c $X509_USER_CERT -k $X509_USER_KEY"
- GLITE_LB_EXPORT_JPDUMP_MAILDIR=${GLITE_LB_EXPORT_JPDUMP_MAILDIR:-/tmp/jpdump}
--GLITE_LB_EXPORT_DUMPDIR_OLD=${GLITE_LB_EXPORT_DUMPDIR_OLD:-$GLITE_LB_EXPORT_DUMPDIR.old}
--GLITE_LB_EXPORT_EXPORTDIR=${GLITE_LB_EXPORT_EXPORTDIR:-/tmp/lbexport}
-+GLITE_LB_EXPORT_JOBSDIR=${GLITE_LB_EXPORT_JOBSDIR:-/tmp/lbexport}
- PREFIX=${PREFIX:-`dirname $0`/..}
- LOGDIR=$GLITE_LOCATION_VAR
--GLITE_LB_EXPORT_PURGE_ARGS=${GLITE_LB_EXPORT_PURGE_ARGS:--a 1h -c 1h -n 1h -o 1d}
-+GLITE_LB_EXPORT_PURGE_ARGS=${GLITE_LB_EXPORT_PURGE_ARGS:---aborted 1d --cleared 1d --cancelled 1d --other 7d}
-
-
- [ -d $GLITE_LB_EXPORT_JPDUMP_MAILDIR ] || mkdir -p $GLITE_LB_EXPORT_JPDUMP_MAILDIR
- [ -d $GLITE_LB_EXPORT_DUMPDIR ] || mkdir -p $GLITE_LB_EXPORT_DUMPDIR
--[ -d $GLITE_LB_EXPORT_DUMPDIR_OLD ] || mkdir -p $GLITE_LB_EXPORT_DUMPDIR_OLD
--[ -d $GLITE_LB_EXPORT_EXPORTDIR ] || mkdir -p $GLITE_LB_EXPORT_EXPORTDIR
-+[ -n "$GLITE_LB_EXPORT_DUMPDIR_KEEP" -a ! -d $GLITE_LB_EXPORT_DUMPDIR_KEEP ] && mkdir -p $GLITE_LB_EXPORT_DUMPDIR_KEEP
-+[ -d $GLITE_LB_EXPORT_JOBSDIR ] || mkdir -p $GLITE_LB_EXPORT_JOBSDIR
-+if [ -n "$GLITE_LB_EXPORT_JOBSDIR_KEEP" ]; then
-+ keep_jobs="--store ${GLITE_LB_EXPORT_JOBSDIR_KEEP} "
-+ [ -d $GLITE_LB_EXPORT_JOBSDIR_KEEP ] || mkdir -p $GLITE_LB_EXPORT_JOBSDIR_KEEP
-+fi
- [ -d $LOGDIR ] || mkdir -p $LOGDIR
-
- echo "Using cert args $CERT_ARGS"
-
--$PREFIX/bin/glite-jp-importer -r $GLITE_LB_EXPORT_JPREG_MAILDIR -d $GLITE_LB_EXPORT_JPDUMP_MAILDIR $CERT_ARGS -g -p $GLITE_LB_EXPORT_JPPS > $LOGDIR/jp-importer.log 2>&1 &
-+$PREFIX/bin/glite-jp-importer --reg-mdir $GLITE_LB_EXPORT_JPREG_MAILDIR --dump-mdir $GLITE_LB_EXPORT_JPDUMP_MAILDIR $CERT_ARGS -g --jpps $GLITE_LB_EXPORT_JPPS $pidfile$keep_jobs> $LOGDIR/jp-importer.log 2>&1 &
- JP_PID=$!
- trap "kill $JP_PID; exit 0" SIGINT
-
-@@ -68,8 +71,12 @@
-
- for file in $GLITE_LB_EXPORT_DUMPDIR/*; do
- if [ -s $file ]; then
-- $PREFIX/sbin/glite-lb-lb_dump_exporter -d $file -s $GLITE_LB_EXPORT_EXPORTDIR -m $GLITE_LB_EXPORT_JPDUMP_MAILDIR
-- mv $file $GLITE_LB_EXPORT_DUMPDIR_OLD
-+ $PREFIX/sbin/glite-lb-lb_dump_exporter -d $file -s $GLITE_LB_EXPORT_JOBSDIR -m $GLITE_LB_EXPORT_JPDUMP_MAILDIR
-+ if [ -n "$GLITE_LB_EXPORT_DUMPDIR_KEEP" ]; then
-+ mv $file $GLITE_LB_EXPORT_DUMPDIR_KEEP
-+ else
-+ rm $file
-+ fi
- else
- rm $file
- fi
-Index: org.glite.jp.client/src/jpimporter.c
-===================================================================
-RCS file: /cvs/jra1mw/org.glite.jp.client/src/jpimporter.c,v
-retrieving revision 1.8
-diff -u -r1.8 jpimporter.c
---- org.glite.jp.client/src/jpimporter.c 16 Jan 2006 17:20:26 -0000 1.8
-+++ org.glite.jp.client/src/jpimporter.c 3 Apr 2006 18:59:49 -0000
-@@ -12,6 +12,7 @@
- #include <errno.h>
- #include <syslog.h>
- #include <fcntl.h>
-+#include <libgen.h>
-
- #include "glite/lb/lb_maildir.h"
- #include "glite/security/glite_gsplugin.h"
-@@ -66,6 +67,7 @@
- static char *jpps = GLITE_JPPS;
- static char reg_mdir[PATH_MAX] = GLITE_REG_IMPORTER_MDIR;
- static char dump_mdir[PATH_MAX] = GLITE_DUMP_IMPORTER_MDIR;
-+static char *store = NULL;
- static struct soap *soap;
-
- static time_t cert_mtime;
-@@ -87,6 +89,7 @@
- { "dump-mdir", 1, NULL, 'd'},
- { "pidfile", 1, NULL, 'i'},
- { "poll", 1, NULL, 't'},
-+ { "store", 1, NULL, 's'},
- { NULL, 0, NULL, 0}
- };
-
-@@ -105,6 +108,7 @@
- "\t-d, --dump-mdir path to the 'LB maildir' subtree for LB dumps\n"
- "\t-i, --pidfile file to store master pid\n"
- "\t-t, --poll maildir polling interval (in seconds)\n",
-+ "\t-s, --store keep uploaded jobs in this directory\n",
- me);
- }
-
-@@ -157,6 +161,7 @@
- case 'C': cadir = optarg; break;
- case 'p': jpps = optarg; break;
- case 't': poll = atoi(optarg); break;
-+ case 's': store = optarg; break;
- case 'r': strcpy(reg_mdir, optarg); break;
- case 'd': strcpy(dump_mdir, optarg); break;
- case 'i': strcpy(pidfile, optarg); break;
-@@ -187,6 +192,12 @@
-
- edg_wll_MaildirInit(reg_mdir);
- edg_wll_MaildirInit(dump_mdir);
-+ if (store && *store) {
-+ if (mkdir(store, 0750) != 0 && errno != EEXIST) {
-+ fprintf(stderr, "Can't create directory %s: %s\n", store, strerror(errno));
-+ store = NULL;
-+ }
-+ }
-
- if ( !debug ) {
- if ( daemon(1,0) == -1 ) { perror("deamon()"); exit(1); }
-@@ -401,7 +412,9 @@
- static int readnew = 1;
- char *msg = NULL,
- *fname = NULL,
-- *aux;
-+ *aux,
-+ *bname;
-+ char fspec[PATH_MAX];
- int ret;
- int fhnd;
- msg_pattern_t tab[] = {
-@@ -469,6 +482,20 @@
- ret = soap_call___jpsrv__CommitUpload(soap, tab[_jpps].val?:jpps, "", &cu_in, &empty);
- if ( (ret = check_soap_fault(soap, ret)) ) break;
- dprintf(("[%s] Dump upload succesfull\n", name));
-+ if (store && *store) {
-+ bname = strdup(tab[_file].val);
-+ snprintf(fspec, sizeof fspec, "%s/%s", store, basename(bname));
-+ free(bname);
-+ if (rename(tab[_file].val, fspec) != 0)
-+ fprintf(stderr, "moving %s to %s failed: %s\n", tab[_file].val, fspec, strerror(errno));
-+ else
-+ dprintf(("[%s] moving %s to %s OK\n", name, tab[_file].val, fspec));
-+ } else {
-+ if (unlink(tab[_file].val) != 0)
-+ fprintf(stderr, "removing %s failed: %s\n", tab[_file].val, strerror(errno));
-+ else
-+ dprintf(("[%s] %s removed\n", name, tab[_file].val));
-+ }
- } while (0);
-
- edg_wll_MaildirTransEnd(dump_mdir, fname, ret? LBMD_TRANS_FAILED_RETRY: LBMD_TRANS_OK);
-Index: org.glite.lb.server/config/startup
-===================================================================
-RCS file: /cvs/jra1mw/org.glite.lb.server/config/startup,v
-retrieving revision 1.13
-diff -u -r1.13 startup
---- org.glite.lb.server/config/startup 15 Mar 2006 18:12:21 -0000 1.13
-+++ org.glite.lb.server/config/startup 3 Apr 2006 18:59:49 -0000
-@@ -44,7 +44,7 @@
-
- [ -z "$creds" ] && echo $0: WARNING: No credentials specified. Using default lookup which is dangerous. >&2
-
-- [ -n "$GLITE_LB_SERVER_PORT" ] && port="-p $GLITE_LB_SERVER_PORT"
-+ [ -n "$GLITE_LB_SERVER_PORT" ] && port="-p $GLITE_LB_SERVER_PORT -w $((GLITE_LB_SERVER_PORT+3))"
-
- echo -n Starting glite-lb-bkserver ...
- su - $GLITE_USER -c "$GLITE_LOCATION/bin/glite-lb-bkserverd \
-Index: org.glite.lb.client/Makefile
-===================================================================
-RCS file: /cvs/jra1mw/org.glite.lb.client/Makefile,v
-retrieving revision 1.55
-diff -u -r1.55 Makefile
---- org.glite.lb.client/Makefile 23 Mar 2006 16:38:44 -0000 1.55
-+++ org.glite.lb.client/Makefile 3 Apr 2006 19:04:06 -0000
-@@ -292,7 +292,7 @@
- for p in ${EXAMPLES} ${EXAMPLES_CL} ${sh_PROGS} ; do \
- ${INSTALL} -m 755 "$$p" "${PREFIX}/examples/glite-lb-$$p"; \
- done
-- ${INSTALL} -m 755 ${top_srcdir}/examples/export.sh "${PREFIX}/examples/glite-lb-export.sh"
-+ ${INSTALL} -m 755 ${top_srcdir}/src/export.sh "${PREFIX}/sbin/glite-lb-export.sh"
- ${INSTALL} -m 644 ${MAN_GZ} ${PREFIX}/share/man/man1
-
- clean:
-Index: org.glite.lb.client/examples/export.sh
-===================================================================
-RCS file: org.glite.lb.client/examples/export.sh
-diff -N org.glite.lb.client/examples/export.sh
---- org.glite.lb.client/examples/export.sh 30 Mar 2006 15:23:51 -0000 1.3
-+++ /dev/null 1 Jan 1970 00:00:00 -0000
-@@ -1,58 +0,0 @@
--#! /bin/bash
--
--#
--# script for exporing jobs from bkserver which should be periodically run
--# together with running jp-importer
--#
--# it uses configuration from enviroment ==> may require a configuration wrapper
--#
--
--#autodetect the prefix
--PREFIX=${GLITE_LOCATION:-`dirname $0`/..}
--
--if [ -n "$GLITE_HOST_CERT" -a -n "$GLITE_HOST_KEY" ] ;then
-- creds="-c '$GLITE_HOST_CERT' -k '$GLITE_HOST_KEY'"
-- X509_USER_CERT="$GLITE_HOST_CERT"
-- X509_USER_KEY="$GLITE_HOST_KEY"
--fi
--if test -z "$creds"; then
-- if su - $GLITE_USER -c "test -r /etc/grid-security/hostkey.pem -a -r /etc/grid-security/hostcert.pem"; then
-- echo "$0: WARNING: /etc/grid-security/hostkey.pem readable by $GLITE_USER"
-- creds="-c /etc/grid-security/hostcert.pem -k /etc/grid-security/hostkey.pem"
-- X509_USER_CERT=/etc/grid-security/hostcert.pem
-- X509_USER_KEY=/etc/grid-security/hostkey.pem
-- fi
--fi
--
--
--[ -z "$creds" ] && echo $0: WARNING: No credentials specified. Using default lookup which is dangerous. >&2
--
--
--
--# dump directory of bkserver
--GLITE_LB_EXPORT_DUMPDIR=${GLITE_LB_EXPORT_DUMPDIR:-/tmp/dump}
--GLITE_LB_EXPORT_DUMPDIR_OLD=${GLITE_LB_EXPORT_DUMPDIR_OLD:-$GLITE_LB_EXPORT_DUMPDIR.old}
--# maildir dump directory for jp importer
--GLITE_LB_EXPORT_JPDUMP_MAILDIR=${GLITE_LB_EXPORT_JPDUMP_MAILDIR:-/tmp/jpdump}
--# directory with exported data (file per job)
--GLITE_LB_EXPORT_EXPORTDIR=${GLITE_LB_EXPORT_EXPORTDIR:-/tmp/lbexport}
--# purge args (timeouts)
--GLITE_LB_EXPORT_PURGE_ARGS=${GLITE_LB_EXPORT_PURGE_ARGS:--a 1h -c 1h -n 1h -o 1d}
--# Book Keeping Server
--GLITE_LB_EXPORT_BKSERVER=${GLITE_LB_EXPORT_BKSERVER:-localhost:9000}
--
--[ -d $GLITE_LB_EXPORT_JPDUMP_MAILDIR ] || mkdir -p $GLITE_LB_EXPORT_JPDUMP_MAILDIR
--[ -d $GLITE_LB_EXPORT_DUMPDIR ] || mkdir -p $GLITE_LB_EXPORT_DUMPDIR
--[ -d $GLITE_LB_EXPORT_DUMPDIR_OLD ] || mkdir -p $GLITE_LB_EXPORT_DUMPDIR_OLD
--[ -d $GLITE_LB_EXPORT_EXPORTDIR ] || mkdir -p $GLITE_LB_EXPORT_EXPORTDIR
--
--X509_USER_CERT="$X509_USER_CERT" X509_USER_KEY="$X509_USER_KEY" $PREFIX/sbin/glite-lb-purge $GLITE_LB_EXPORT_PURGE_ARGS -l -m $GLITE_LB_EXPORT_BKSERVER
--
--for file in $GLITE_LB_EXPORT_DUMPDIR/*; do
-- if [ -s $file ]; then
-- $PREFIX/sbin/glite-lb-lb_dump_exporter -d $file -s $GLITE_LB_EXPORT_EXPORTDIR -m $GLITE_LB_EXPORT_JPDUMP_MAILDIR
-- mv $file $GLITE_LB_EXPORT_DUMPDIR_OLD
-- else
-- rm $file
-- fi
--done
-Index: org.glite.lb.client/src/export.sh
-===================================================================
-RCS file: org.glite.lb.client/src/export.sh
-diff -N org.glite.lb.client/src/export.sh
---- /dev/null 1 Jan 1970 00:00:00 -0000
-+++ org.glite.lb.client/src/export.sh 3 Apr 2006 19:04:06 -0000
-@@ -0,0 +1,63 @@
-+#! /bin/bash
-+
-+#
-+# script for exporing jobs from bkserver which should be periodically run
-+# together with running jp-importer
-+#
-+# it uses configuration from enviroment ==> may require a configuration wrapper
-+#
-+
-+#autodetect the prefix
-+PREFIX=${GLITE_LOCATION:-`dirname $0`/..}
-+
-+if [ -n "$GLITE_HOST_CERT" -a -n "$GLITE_HOST_KEY" ] ;then
-+ creds="-c '$GLITE_HOST_CERT' -k '$GLITE_HOST_KEY'"
-+ X509_USER_CERT="$GLITE_HOST_CERT"
-+ X509_USER_KEY="$GLITE_HOST_KEY"
-+fi
-+if test -z "$creds"; then
-+ if su - $GLITE_USER -c "test -r /etc/grid-security/hostkey.pem -a -r /etc/grid-security/hostcert.pem"; then
-+ echo "$0: WARNING: /etc/grid-security/hostkey.pem readable by $GLITE_USER"
-+ creds="-c /etc/grid-security/hostcert.pem -k /etc/grid-security/hostkey.pem"
-+ X509_USER_CERT=/etc/grid-security/hostcert.pem
-+ X509_USER_KEY=/etc/grid-security/hostkey.pem
-+ fi
-+fi
-+
-+
-+[ -z "$creds" ] && echo $0: WARNING: No credentials specified. Using default lookup which is dangerous. >&2
-+
-+
-+
-+# dump directory of bkserver
-+GLITE_LB_EXPORT_DUMPDIR=${GLITE_LB_EXPORT_DUMPDIR:-/tmp/dump}
-+GLITE_LB_EXPORT_DUMPDIR_KEEP=${GLITE_LB_EXPORT_DUMPDIR_KEEP:-""}
-+# maildir dump directory for jp importer
-+GLITE_LB_EXPORT_JPDUMP_MAILDIR=${GLITE_LB_EXPORT_JPDUMP_MAILDIR:-/tmp/jpdump}
-+# directory with exported data (file per job)
-+GLITE_LB_EXPORT_JOBSDIR=${GLITE_LB_EXPORT_JOBSDIR:-/tmp/lbexport}
-+# purge args (timeouts)
-+GLITE_LB_EXPORT_PURGE_ARGS=${GLITE_LB_EXPORT_PURGE_ARGS:--a 1h -c 1h -n 1h -o 1d}
-+# Book Keeping Server
-+GLITE_LB_SERVER_PORT=${GLITE_LB_SERVER_PORT:-9000}
-+GLITE_LB_EXPORT_BKSERVER=${GLITE_LB_EXPORT_BKSERVER:-localhost:$GLITE_LB_SERVER_PORT}
-+
-+[ -d $GLITE_LB_EXPORT_JPDUMP_MAILDIR ] || mkdir -p $GLITE_LB_EXPORT_JPDUMP_MAILDIR
-+[ -d $GLITE_LB_EXPORT_DUMPDIR ] || mkdir -p $GLITE_LB_EXPORT_DUMPDIR
-+[ -d $GLITE_LB_EXPORT_DUMPDIR_KEEP ] || mkdir -p $GLITE_LB_EXPORT_DUMPDIR_KEEP
-+[ -d $GLITE_LB_EXPORT_JOBSDIR ] || mkdir -p $GLITE_LB_EXPORT_JOBSDIR
-+
-+X509_USER_CERT="$X509_USER_CERT" X509_USER_KEY="$X509_USER_KEY" $PREFIX/sbin/glite-lb-purge $GLITE_LB_EXPORT_PURGE_ARGS -l -m $GLITE_LB_EXPORT_BKSERVER
-+
-+for file in $GLITE_LB_EXPORT_DUMPDIR/*; do
-+ if [ -s $file ]; then
-+ $PREFIX/sbin/glite-lb-lb_dump_exporter -d $file -s $GLITE_LB_EXPORT_JOBSDIR -m $GLITE_LB_EXPORT_JPDUMP_MAILDIR
-+ if [ -n "$GLITE_LB_EXPORT_DUMPDIR_KEEP" ]; then
-+ mv $file $GLITE_LB_EXPORT_DUMPDIR_KEEP
-+ else
-+ rm $file
-+ fi
-+ else
-+ rm $file
-+ fi
-+done