[ -n "$GLITE_LB_SERVER_PIDFILE" ] && pidfile=$GLITE_LB_SERVER_PIDFILE ||
pidfile=$GLITE_LOCATION_VAR/glite-lb-bkserverd.pid
[ -z "$GLITE_LB_NOTIF_SOCK" ] && GLITE_LB_NOTIF_SOCK="/tmp/glite-lb-notif.sock"
+[ -n "$GLITE_JP_IMPORTER_PIDFILE" ] && jp_importer_pidfile=$GLITE_JP_IMPORTER_PIDFILE ||
+ jp_importer_pidfile=$GLITE_LOCATION_VAR/glite-jp-importer.pid
unset creds port
[ -d "$GLITE_LB_EXPORT_PURGEDIR" ] || mkdir -p "$GLITE_LB_EXPORT_PURGEDIR" && chown $GLITE_USER:$GLITE_GROUP -R "$GLITE_LB_EXPORT_PURGEDIR"
if [ x"$GLITE_LB_EXPORT_ENABLED" = x"true" ]; then
+ if [ ! -x $GLITE_LOCATION/bin/glite-jp-importer ]; then
+ echo "glite-jp-importer needed for export to Job Provenace, install glite-jp-client package too."
+ exit 1
+ fi
+
+ # registrations
[ -z "$GLITE_LB_EXPORT_JPREG_MAILDIR" ] && GLITE_LB_EXPORT_JPREG_MAILDIR=$GLITE_LOCATION_VAR/jpreg
+ jpreg_maildir="--reg-mdir $GLITE_LB_EXPORT_JPREG_MAILDIR"
+ lbreg_maildir="--jpreg-dir $GLITE_LB_EXPORT_JPREG_MAILDIR"
[ -d "$GLITE_LB_EXPORT_JPREG_MAILDIR" ] || mkdir -p "$GLITE_LB_EXPORT_JPREG_MAILDIR" && chown $GLITE_USER:$GLITE_GROUP -R "$GLITE_LB_EXPORT_JPREG_MAILDIR"
- maildir="--jpreg-dir $GLITE_LB_EXPORT_JPREG_MAILDIR"
+
+ # dumps
+ [ -z "$GLITE_LB_EXPORT_JPDUMP_MAILDIR" ] && GLITE_LB_EXPORT_JPDUMP_MAILDIR=$GLITE_LOCATION_VAR/jpdump
+ jpdump_maildir="--dump-mdir $GLITE_LB_EXPORT_JPDUMP_MAILDIR"
+ [ -d "$GLITE_LB_EXPORT_JPDUMP_MAILDIR" ] || mkdir -p "$GLITE_LB_EXPORT_JPDUMP_MAILDIR" && chown $GLITE_USER:$GLITE_GROUP -R "$GLITE_LB_EXPORT_JPDUMP_MAILDIR"
+
+ # sandboxes
+ [ -z "$GLITE_LB_EXPORT_SANDBOX_MAILDIR" ] && GLITE_LB_EXPORT_SANDBOX_MAILDIR=$GLITE_LOCATION_VAR/sandbox
+ sandbox_maildir="--sandbox-mdir $GLITE_LB_EXPORT_SANDBOX_MAILDIR"
+ [ -d "$GLITE_LB_EXPORT_SANDBOX_MAILDIR" ] || mkdir -p "$GLITE_LB_EXPORT_SANDBOX_MAILDIR" && chown $GLITE_USER:$GLITE_GROUP -R "$GLITE_LB_EXPORT_SANDBOX_MAILDIR"
+
+ # target Job Provenance
+ [ -n "$GLITE_LB_EXPORT_JPPS" ] && jpps="--jpps $GLITE_LB_EXPORT_JPPS"
fi
if test -r "$GLITE_LOCATION/etc/LB-super-users"; then
fi
fi
- echo -n Starting glite-lb-bkserver ...
+ echo -n Starting glite-lb-bkserverd ...
su - $GLITE_USER -c "$GLITE_LOCATION/bin/glite-lb-bkserverd \
--notif-il-sock=$GLITE_LB_NOTIF_SOCK \
--notif-il-fprefix=$GLITE_LB_NOTIF_FPREFIX \
- $super $creds -i $pidfile $port $wport $dumpdir $purgedir $maildir \
+ $super $creds -i $pidfile $port $wport $dumpdir $purgedir $lbreg_maildir\
$GLITE_LB_SERVER_OTHER_OPTIONS" \
&& echo " done" || echo " FAILED"
else
echo Warning: glite-lb-notif-interlogd not installed, LB notifications will not work
fi
+
+ if test x"$GLITE_LB_EXPORT_ENABLED" = x"true" ; then
+ su - $GLITE_USER -c "$GLITE_LOCATION/bin/glite-jp-importer \
+ -i $jp_importer_pidfile $jpreg_maildir $jpdump_maildir $sandbox_maildir \
+ $jpps $creds $GLITE_JP_IMPORTER_ARGS" \
+ && echo " done" || echo " FAILED"
+ fi
}
-stop()
+stop_daemon()
{
- echo -n Stopping glite-lb-notif-interlogd ...
- killall glite-lb-notif-interlogd
- echo done
- if [ -f $pidfile ]; then
- pid=`cat $pidfile`
+ name="$1"
+ pidfile="$2"
+
+ if [ -f "$pidfile" ]; then
+ pid=`cat "$pidfile"`
kill $pid
- echo -n Stopping glite-lb-bkserverd \($pid\) ...
+ echo -n Stopping $name \($pid\) ...
try=0
while ps p $pid >/dev/null 2>&1; do
sleep 1;
echo " done"
rm -f $pidfile
else
- echo $pidfile does not exist - glite-lb-bkserverd not running? >&2
+ echo $pidfile does not exist - $name not running? >&2
return 1
fi
}
+status_daemon()
+{
+ name="$1"
+ pidfile="$2"
+
+ if [ -f "$pidfile" ]; then
+ pid=`cat "$pidfile"`
+ if ps p $pid >/dev/null 2>&1; then
+ echo $name running as $pid
+ else
+ echo $name not running
+ return 1
+ fi
+ else
+ echo $name not running
+ return 1
+ fi
+
+ return 0
+}
+
+stop()
+{
+ echo -n Stopping glite-lb-notif-interlogd ...
+ killall glite-lb-notif-interlogd
+ echo done
+
+ stop_daemon "glite-lb-bkserverd" $pidfile
+ if test x"$GLITE_LB_EXPORT_ENABLED" = x"true"; then
+ stop_daemon "glite-jp-importer" $jp_importer_pidfile
+ fi
+}
+
status()
{
retval=0
retval=1
fi
- if [ -f $pidfile ]; then
- pid=`cat $pidfile`
- if ps p $pid >/dev/null 2>&1; then
- echo glite-lb-bkserverd running as $pid
- else
- echo glite-lb-bkserverd not running
- retval=1
- fi
- else
- echo glite-lb-bkserverd not running
- retval=1
+ status_daemon "glite-lb-bkserverd" "$pidfile" || retval=1
+ if test x"$GLITE_LB_EXPORT_ENABLED" = x"true"; then
+ status_daemon "glite-jp-importer" "$jp_importer_pidfile" || retval=1
fi
return $retval