Release notes for Globus RPM's 2.0 beta-21

Description

The Beta-21 set of RPM's have source and binary packaging of Globus 2.0 beta (ie the current version that Globus have released to the gt2 list, including some source packages from their src_test rather than src directory) for Redhat Linux 6.2 (may well work on RH6.1, but some problems - eg ncftp - on RH7.1)

Downloading

You can get this version from the WP6 Repository at http://datagrid.in2p3.fr/distribution/globus/beta-21/

Configuration

You should install the globus_*-edgconfig RPM's to configure Globus (although the globus setup packages are included if you wanted to configure things manually.)

See http://datagrid.in2p3.fr/distribution/globus/edgconfig/

Resolved issues / additions

This is a snapshot of the CHANGELOG file from the above beta-21 directory. Please consult that file for further updates before using this software.

%changelog
* Wed Dec  5 2001 Andrew McNab <mcnab@hep.man.ac.uk>
- Apply ftp://ftp.wu-ftpd.org
  /pub/wu-ftpd-attic/wu-ftpd-2.6.1-patches/ftpglob.patch to fix 
  security problem with Globus wuftpd (Patch1) 
  Anders' prefixes patch is now Patch2.
* Wed Dec  5 2001 Andrew McNab <mcnab@hep.man.ac.uk>
- ==== Change to Release 21a FOR WUFTPD ONLY ====
* Tue Dec  4 2001 Andrew McNab <mcnab@hep.man.ac.uk>
- Enable ldbm support in globus_openldap with --enable-ldbm in
  pkg_data_src.gpt (Patch1)
- Modify gridmapdir patch to globus_gss_assist.../gridmap.c (Patch1)
  so that the location of the gridmapdir is now taken from the 
  GRIDMAPDIR environment variable, rather than always being fixed as
  /etc/grid-security/gridmapdir (there is now no default: if GRIDMAPDIR
  is not set, then the gridmapdir mechanism is not used.)
- Add export of GRIDMAPDIR to existing Patch1 to grid-info-slapd in 
  globus_mds_common.
- Add patch from Anders Waananen <waananen@nbi.dk> (Patch1) to 
  globus_gram_reporter to make job command environment variables
  consistent (ie insert _GRAM_) This anticipates something to appear
  in a future official release of Globus 2.0beta.
* Mon Dec  3 2001 Andrew McNab <mcnab@hep.man.ac.uk>
- Modify patches for EDG WP1 Logging and Book Keeping from alpha 
  releases to work with Globus2 beta. These are STATICALLY linked 
  with globus_gram_job_manager (Patch1 and Patch2) These based on 
  patches from Miroslav Ruda <ruda@ics.muni.cz> and now depend on 
  logging_dev-1.0.0-3.i386.rpm at build time.
* Mon Dec  3 2001 Andrew McNab <mcnab@hep.man.ac.uk>
- ==== Change to Release 21 ====
* Mon Dec  3 2001 Andrew McNab <mcnab@hep.man.ac.uk>
- Verified that large (~30MB) grid ftp transfers work with the beta 
  version: previously they caused server and/or client to hang.
* Tue Nov 27 2001 Andrew McNab <mcnab@hep.man.ac.uk>
- Make a patch to globus-user-env.sh suggested by Flavia Donno 
  <flavia.donno@pi.infn.it> (bug #91) for benefit of zsh etc
  (The beta's globus-user-env.sh already appears to fix bug #109)
- Include patch to globus-script-condor-poll from
  santiago.gonzalez@ific.uv.es (bug #108)
* Wed Nov 21 2001 Andrew McNab <mcnab@hep.man.ac.uk>
- Add patch from Anders Waananen <waananen@nbi.dk> to
  prefix globus_gsi_wuftpd config files with globus-
* Tue Nov 20 2001 Andrew McNab <mcnab@hep.man.ac.uk>
- Add globus.conf patch back in to globus_mds_common
- Add gridmapdir patch back in to globus_gss_assist
- Add extra %build lines to make /opt/globus/var and add it to
  %files globus_common-gcc32dbg_rtl  in globus_common
* Mon Nov 19 2001 Andrew McNab <mcnab@hep.man.ac.uk>
- Start this changelog file, which will be common to all Globus 2.0
  RPMs in the Testbed 1 Globus distribution.
- With release 20 of the RPMs, I am starting from the Globus 2.0 
  beta bundles uploaded on November 15 to 
         ftp://ftp.globus.org/pub/gt2/beta/bundles/src/
  and then adding in some of the patches developed during alpha 
  testing. These will be noted above in this changelog.
* Mon Nov 19 2001 Andrew McNab <mcnab@hep.man.ac.uk>
- ==== Change to Release 20 ====

Build Procedure

(You probably don't need to know this, but if you are curious...)

The first RPM package, globus_gpt, is produced using a hand written SPEC file. This has all the Globus package management machinery, Perl modules etc.

We then take the source tar file of each of the other Globus packages from Globus and then process this with some scripts to generate an RPM SPEC file. rpm is then used to produce a source RPM and several binary RPM's for the different subpackages of this package:

The contents of each subpackage is defined by the metadata supplied with each Globus package as filelists, from /opt/globus/etc/globus_packages/*

We also construct RPM dependency symbols from Globus metadata of the form: GLOBUSPKG-FLAVOR_SUBPKG, eg globus_gssapi_gsi-gcc32dbg_dev

The SPEC files includes dependency headers referencing other Globus (sub)packages:

This means you cannot start building if a build requirement not installed, and you cannot install if a runtime requirement not installed.

Remember: you can get the rpm command to do the work of sorting out dependency order for you by putting all the binary RPM's on the same command line. The file noconflicts.txt in the beta-21 directory contains a no-conflicts set of RPMS, so you should be able to install with: rpm -i `cat noconflicts.txt`

How to rebuild something using a source RPM

(There seems to be some confusion about this, so here are step by step instructions on using the source RPM's.)

First install the source RPM in question: rpm -i whatever-src.rpm

You now have its SPEC file in /usr/src/redhat/SPECS and the source tar files and patches in /usr/src/redhat/SOURCES

You can edit the spec file, including adding additional patches, by adding Patch: lines and putting the patches into /usr/src/redhat/SOURCES

You can also replace the source tar file at this stage (you will need to change its name in the spec file if the name is different.)

When you are finished, just do rpm -ba whatever.spec to rebuild a new source RPM (in /usr/src/redhat/SRPMS) and binary RPM's for each subpackage (in /usr/src/redhat/RPMS/i386)

You can then install these RPM's on your development or testing machines.