1 / 14

Globus2 packaging

Globus2 packaging. Motivation for changes Modules Metadata Comments on Globus2 alpha2 Automatic glpkg2rpm script Future work. Andrew McNab - Manchester HEP - 2 July 2001. Motivation for changes. Modularisation avoid monolithic code release cycle

rlatimore
Download Presentation

Globus2 packaging

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Globus2 packaging • Motivation for changes • Modules • Metadata • Comments on Globus2 alpha2 • Automatic glpkg2rpm script • Future work Andrew McNab - Manchester HEP - 2 July 2001

  2. Motivation for changes • Modularisation • avoid monolithic code release cycle • allow distribution of subsets (eg client utilities only) • Allow binary releases • Simplify use of configuration files Andrew McNab - Manchester HEP - 2 July 2001

  3. Packaging modules • Packages roughly correspond to major source directories in 1.1.3 • gpt and globus_package_manager provide (Perl) management tools • Current alpha2 release also has: globus_core, _common, _gaa, _ssl_utils, _gss_api, _gss_assist, and a virtual package for openssl Andrew McNab - Manchester HEP - 2 July 2001

  4. Metadata • Each package includes metadata in XML to help automate and manage the build and installation processes: • a file list: of binaries, scripts and configuration files to be included in this package. • lists of dependencies: compilation (ie headers), linking (libraries) and runtime. Andrew McNab - Manchester HEP - 2 July 2001

  5. Comments on alpha.2 (1) • This was easier to get working than alpha.1 • Principally because all the optional Perl modules were included in the Globus distribution • Needs openssl and a Globus 1.1.3 install (for a few scripts like globus-hostname) Andrew McNab - Manchester HEP - 2 July 2001

  6. Comments on alpha.2 (2) • A few “loose” ends (eg script sources use @SH@ which is not defined by default or in Globus configure scripts) • No show-stoppers! • Builds, and produces working binaries • internal tests work • do grid-proxy-init and grid-proxy-info gives sensible results back Andrew McNab - Manchester HEP - 2 July 2001

  7. Comments on alpha.2 (3) • Current package contents easily convertible to “binary” installation formats (ie containing static files) • But, alpha.2 doesn’t come with configuration mechanisms: after install,you have the binaries, scripts and only template config files • The same configuration files are used as for 1.1.3 - eg “monolithic” ca-signing-policy.conf and not an /etc/rc.d/init.d style solution. Andrew McNab - Manchester HEP - 2 July 2001

  8. Comments/requests to Globus • The packaging metadata is very helpful (eg for making RPM’s) • The changes towards modularisation and “binary” releases are much appreciated • Please avoid post-install scripts if possible • Ideally configuration files would be modularised • certificates.d, jobmanagers.d, ... Andrew McNab - Manchester HEP - 2 July 2001

  9. Making RPM’s • These will be needed when Globus2 goes into production, both in EU DataGrid and other grid projects (eg GridPP, BabarUK) • Making working RPM’s involves specifying exactly what steps are taken • Makes it easier for other people to test their code against the alpha release, without being installation experts Andrew McNab - Manchester HEP - 2 July 2001

  10. Automating RPM’s • Since Globus now provides metadata, it should be possible to generate RPM spec files automatically. • This reduces amount of work needed to maintain RPM’s • Even makes a Babar-style nightly build possible Andrew McNab - Manchester HEP - 2 July 2001

  11. Current strategy • Manually write spec files for “special cases”: • gpt + globus_package_manager • globus_core • virtual openssl • For other packages, write a script to generate spec and RPM, starting from source code .tar.gz Andrew McNab - Manchester HEP - 2 July 2001

  12. glpkg2rpm script • Give it a package name • Extracts dependencies on other packages from source .tar.gz file • Writes out RPM .spec file • includes scripting to generate %files list from Globus metadata • Builds src + bin RPM’s using .spec Andrew McNab - Manchester HEP - 2 July 2001

  13. Current RPMs • globus_pkg-2.0-1.i386.rpm • globus_core-2.0-1.i386.rpm • globus_common-2.0-1.i386.rpm • globus_openssl-2.0-1.i386.rpm • globus_gaa-2.0-1.i386.rpm • globus_ssl_utils-2.0-1.i386.rpm • globus_gssapi_gsi-2.0-1.i386.rpm • globus_gss_assist-2.0-1.i386.rpm Andrew McNab - Manchester HEP - 2 July 2001

  14. Future work • Feed this work back to Globus • Include other alpha code that is in new packaging form (MDS2…) • Use Globus2 packages to build openssh-gsi RPM (current RPM was built using adhoc recipe) • Track new alpha releases from Globus - especially imminent Globus2/1.1.3 hybrid release. Andrew McNab - Manchester HEP - 2 July 2001

More Related