When we build software for the VDT, we patch Globus and Apache.
To build Globus for VDT 1.10.0, we check out Globus 4.0 using the
globus_4_0_7 tag then we apply the patches that follow. If you
like, you can look at the
source code after it has been patched.
For those who are interested, you can see the exact build script
that we use to build VDT 1.8.1. This script is meant to be run in
the Metronome build and test software,
so it will NOT run out of the box for you. That said, you
might still find it useful to understand how we do the build.
Download build script
You can download the tarball with the complete set of patches here.
| Name | Description | Diff | Ticket |
| 011__gss_assist_gridmap | Enhancement by EDG/LCG: "gridmapdir" functions allow a pool of pre-created anonymous accounts to be mapped to real users (DNs) at run-time, without further intervention by a sysadmin. The functionality is disabled and does not affect any installations unless the environment variable GRIDMAPDIR points to a directory that has been initialized with the anonymous accounts (/etc/grid-security/gridmapdir). | diff | N/A |
| 013__job_manager_acct | Accounting log for job management | diff | Bugzilla 1538 |
| 014__gatekeeper_acct | Log rotation & job accounting | diff | Bugzilla 1538 |
| 017__lsf_acct.diff | Log rotation & job accounting | diff | |
| 018__script-lsf-queue | Change LSF monitoring to allow job accounting to work for failed jobs. | diff | Bugzilla 1538 |
| 019__find-lsf-tools | Find bacct for LSF tools, needed for accounting | diff | Bugzilla 1538 |
| 026__gram_protocol_io | Fix a file descriptor leak and a potential deadlock in GRAM | diff | Bugzilla 1546 |
| 028__gram_job_manager_script | Fix job race state condition in the GRAM job manager. | diff | Bugzilla 1548 |
| 036__gram_job_manager_query | Patch for race condition in job manager | diff | Bugzilla 1550 |
| 037__gram_job_manager_state | Patch for race condition in job manager | diff | Bugzilla 1551 |
| 041__jobmanager_syslog | diff | ||
| 065__prewsgram_multi_condor_log.diff | Make pre-web GRAM use one log file per Condor job instead of one large log file that can't be rotated. | diff |
Bugzilla 4199 |
| 066__disable_streaming.diff | Allow system administrators to disable streaming output in pre-ws gram by passing -disable-streaming to the jobmanager (in $GLOBUS_LOCATION/etc/globus-job-manager.conf | diff |
Bugzilla 4213 |
| 072__no-gram-reporter.diff | Disable the GRAM reporter in the slapd.conf. It's not used normally, and including it causes MDS 2 failures. | diff | |
| 078__gram_jobmanager_filter.diff | Optionally filter gram jobs based on executable name | diff | Bugzilla 4718 |
| 088__gram_condor_gratia_patch.diff | Inform Gratia of completed job, if Gratia is in use.. | diff | |
| 089__teragrid-pbs-fixes.diff | Improvements to the PBS job manager made by TeraGrid. | diff | |
| 096__condor_in_x509_proxy.diff | Tell Condor to forward the user's X509 proxy certificate to the job | diff | |
| 097__osg_grid_globus_location.diff | In an OSG installation, set a job's GLOBUS_LOCATION based on the OSG_GRID environment variable. This will not affect a non-OSG installation. | diff | |
| 099__gatekeeper_fork.diff | Add configuration knob to gatekeeper to control where it forks before starting a jobmanager. This allows admins to use xinetd to limit the number of running jobmanagers. By default, Globus's behavior has not been changed, but will only change if the configuration is changed. | diff | |
| 103__gatekeeper_act.diff | Rearrange gatekeeper accounting to facilitate interaction with LCAS/LCMAPS | diff | (VDT Ticket 2879) |
| 106__jm_grid_monitor_files.diff | Tweaked jobmanager to look for grid monitor state file in new location. | diff | |
| 108__pr_mp.diff | Fix to prevent MPI application crashes. | diff | (VDT Ticket 2958) (Globus ticket 5533) |
| 109__external_openssl.diff | Use vendor OpenSSL instead of OpenSSL that comes with Globus. Also, fixes to build against OpenSSL 0.9.8. Previously, Globus only worked with OpenSSL 0.9.7. | diff | (Globus ticket 4617) |
| 111__openssl_bootstrap.diff | Makes sure patch 109__openssl_098.diff works. | diff | |
| 112__pbs_multiple.diff | diff | ||
| 113__gridftp2.diff | Allow the GridFTP client (especially globus-url-copy) to work with a GridFTP 2 server. (Currently the GridFTP server is using protocol version 1, not 2.) | diff | |
| 114__gratia_fqan.diff | Allow Gratia to get extra information when a job is submitted. Gratia uses this to extract the FQAN (The VOMS fully qualified attribute name) from the user's proxy, if it exists. | diff | |
| 115__bugzilla_3036.diff | Support TLSv1 in GSI GSSAPI library. | diff | (Globus ticket 3036) |
| 117__job_status.diff | diff | ||
| 118__xio_0.38.diff | Globus advisory globus_xio-0.38. | diff | (Globus ticket 5503) |
VDT 1.10.0 contains Apache 2.2.4. We build it with mod_ssl, mod_proxy, mod_rewrite, mod_python and mod_jk. We also apply patches as follows:
| Name | Description | Diff |
| apache-GSI | Patch Apache to be able to accept Globus's new and RFC style proxies. | diff |
| apache-ctl | Make Apache default to a config file in $VDT_LOCATION/apache/conf/httpd.conf. | diff |
| apache-modpython | Update mod_python to work with Apache 2.2. | diff |