GlassFish v2.1 Packages: The Untold Story
By ckamps on Jul 28, 2009
GlassFish v3 garners a lot of attention in our Update Center 2 development project because of its relatively long history of adopting the Image Packaging System and the Update Center Toolkit for its layered, multi-platform distributions. But there's also a story around the GlassFish Enterprise Server v2.1 release, Sun's premier Java Enterprise Edition 5 platform.
Rationale for Retrofitting Only Packages
Since the GlassFish v2 product offering already had a series of download and install bundles in unpackaged zip and self-extracting formats, it didn't make sense to retrofit those existing deliverables in pkg(5) format for multi-platform use and re-release the entire product distribution. However, the GlassFish team and several product teams dependent on GlassFish saw an opportunity to make the GlassFish v2.1 product and follow-on support updates available as a series of pkg(5) packages that other products could incorporate into their own pkg(5)-based distributions.
For example, the Web Space Server product's dependency on GlassFish v2.1 was satisfied by including the GlassFish v2.1 pkg(5) packages in the Web Space Server package repositories. Doing so yielded a soup-to-nut pkg(5)-based distribution of the Web Space Server + GlassFish v2.1 stack. As part of their set of initial download and install bundles, the Web Space Server team produced a bundle containing GlassFish v2.1, its dependencies and Web Space Server pre-installed using the pkg(5) packages of these components. Evaluators and customers of the Web Space Server product have benefited from this integrated initial install and ongoing update and add-on experience.
A special thanks to Christophe Ravel of the shared components team in the Sun middleware group for his instrumental work in getting the initial GlassFish v2.1 packages and their dependencies (including Message Queue, JavaDB and Ant) built for a variety of OS platforms and working with the GlassFish Sustaining team to integrate the package creation process into their existing build system. Over much of this year, the GlassFish Sustaining team has been refreshing the pkg(5) packages as they've developed update releases for the GlassFish v2.1 product. These updated packages of GlassFish v2.1 have been published to the Web Space Server support package repository for delivery to customers with support subscriptions.
Based on his experience, Christophe published a presentation, Multi-platform IPS Packaging for Software Engineers, that is part of the Image Packaging System Best Practices the Update Center project offers to projects adopting pkg(5) for layered, multi-platform use.