Friday Jan 22, 2010

Update Center Toolkit 2.3 Update 1 Release

The Update Center project team is pleased to announce the release of version 2.3 Update 1 of the toolkit.  Highlights of key issues addressed in this release include:

  • Desktop Notifier
    • Always uses the latest available version of the toolkit when multiple images are present.
    • Continues to check for updates even when invalid images and repository access errors are encountered.
  • Compatibility
    • Update Tool GUI and Desktop Notifier are better prepared to handle incompatible images emerging with version 2.4 of the toolkit.
  • Java Bootstrap
    • No longer causes out of date catalog cache requiring "pkg refresh" as a workaround.
    • No longer overwrites existing publisher UUIDs.
    • Initialization property optin.usage.reporting has been retired.
  • pkg(5) Java API
    • Enables setting publisher UUID even when no UUID exists in the publisher configuration.
    • Automatically sets publisher UUID when not already set.
  • Other
    • makeimage developer tool works properly with file URLs on Mac OS X.
    • Various localization gaps addressed.

Developers can obtain the release on the download page and review the detailed list of changes in the release notes.

Wednesday Nov 18, 2009

Update Center Toolkit 2.3 Release

The Update Center team is pleased to announce the availability of release 2.3 of the Update Center Toolkit. The focus for this release has been to improve the overall quality of the toolkit by reducing the bug backlog. This release also includes the following new features:

  • Support for the AIX operating system (command line only) and the Windows 7 operating system (user folder only)
  • A new version of pkg(5) that is aligned with OpenSolaris build 122. This version includes a new transport library based on libcURL.
  • Support for package icons in updatetool (see pkg.icon.24px)
  • Ability for updatetool to show only a few recent versions rather than all or one.
  • Support for an "excludedirs" capability in the makepkgs tool
  • Support for specifying a default ownership for files when using makepkgs
  • The copypkgs tool can copy packages to/from a pkg.depotd server
  • The HTML templates for pkg.depotd support showing only the most recent version of packages
  • Improved on-line help for the software update interface
  • Improved startup time for the software update interface when started from the notifier
  • Support for promoting new software applications via the software update interface

Downloads and release notes for the 2.3 release are now available as are updated screenshots of the graphical user interfaces.

This release will make its debut in the GlassFish v3 release that is scheduled for later this year.

Thursday Nov 12, 2009

GlassFish v3 Prelude Rolls Out Update Center Toolkit 2.2 Update 2

GlassFish v3 Prelude is the highest volume adopter of Update Center and the pkg(5) system on multiple OS platforms, but has been running with an older version of the Update Center Toolkit (2.0) since Prelude shipped a year ago.  Last week the GlassFish team pushed Update Center Toolkit 2.2 Update 2 to the Prelude repositories and we are starting to see significant uptake. With UC 2.2 Update 2 customers will see a more streamlined update experience as well as a number of other improvements.

In addition to updating the UC toolkit packages the Prelude team upgraded their repository runtimes resulting in an improved web UI for their repositories.

Wednesday Sep 16, 2009

Using pkg(5) GlassFish v2.1 Packages

We don't offer a standalone distribution (download bundles + dedicated repos) for GlassFish v2.1, but we do produce and maintain v2.1 packages in support of GlassFish Web Space Server deployments (see my earlier post for background).   Although Web Space Server is currently the only distribution that embeds these packages, you can easily experiment with the packages by installing them from our layered collection development repository.  The beauty of the packaging system and our repositories is that it's quite simple to try out these and other packages:

  1. Download a copy of the Update Center Toolkit. Alternatively, if you're already on OpenSolaris or you already have the toolkit available with the pkg(1) CLI, move on to the next step.
  2. pkg image-create --user -p   ~/gfv2.1
  3. cd ~/gfv2.1
  4. pkg install glassfish2
  5. cd glassfish2
  6. ../ant/bin/ant -f setup.xml 
  7. bin/asadmin start-domain
  8. Access http://localhost:4848 and log in with admin / adminadmin

Voila!  That's it.

If you'd like to run the Update Tool GUI to further explore the other packages, execute "pkg install updatetool" and run "bin/updatetool".  Otherwise, you can execute "pkg list -a" to see the list of all packages that are available for installation on your platform. 

Tuesday Sep 15, 2009

Repository Analytics: Helping to make informed decisions

Over the past several months our Update Center project has been rounding out our overall pkg(5)-based content delivery solution by providing usage reports to adopting project teams: GlassFish Application Server v3, Web Space Server, Web Stack and soon, Message Queue.

You may be familiar with the term web analytics, defined as the "analysis and reporting of internet data for purposes of understanding and optimizing web usage" by Wikipedia. In the context of delivering content via network package repositories, the Update Center team has deployed the beginnings of a reporting solution that helps product teams improve their offerings by providing greater insight into how add-ons and updates are being adopted by end users.

Over the past several months, our toolkit project has:

  • Defined a database schema and deployed a MySQL database to manage the usage data
  • Developed and deployed scripts to tranform raw repository access log data and to load it into the database
  • Developed an overall dashboard and an initial series of product-specific reports
  • Started tweaking reports based on feedback from users

Project teams can currently obtain the following information via the reports:

  • Active unique installations (i.e. "active users")
  • Add-on (new) packages installed
  • Updated packages
  • Operating system usage
  • Client tool usage (Update Tool GUI, Software Update GUI, pkg(1) CLI, pkg(5) Java API)
  • Add-on activity by registered installations

Additionally, we report on the versions of the toolkit that are in use across all installations.  This information is a real boon to our toolkit development project in that it lets us make informed decisions about how much we invest in older versions.  It also helps us monitor the roll out of new releases of the toolkit.

Over the next several weeks we'll publish new blog entries that explain the reports and how projects are using them to improve their products and ultimately the experience of their users.

Sunday Aug 23, 2009

Screencast of Layered Web Stack Installation with pkg(5)

Check out Brian Overstreet's screencast on using the pkg(5) system and Update Tool to augment an installation of Web Stack 1.5 on Solaris 10. 

Wednesday Aug 19, 2009

Update Center Toolkit 2.2 Update 2 Release

The Update Center team is pleased to announce the availability of release 2.2 Update 2 of the Update Center Toolkit. This release includes the following changes:

  • A critical fix to the minimized Python for Mac OS X to solve a problem with downloading large packages, specifically the Glassfish jruby package
  • All fixes from previous update releases

Downloads and release notes for the 2.2 Update 2 release are now available.

Wednesday Jul 29, 2009

Open MQ 4.4 Adopts pkg(5) and the Update Center Toolkit

The Open MQ team has been busy preparing the initial promoted builds of their upcoming new minor feature release, Open MQ 4.4.  It's impressive that without any real prodding from our Update Center Toolkit team, the MQ team has pretty much of their own accord begun adopting pkg(5) and the Update Center Toolkit as the main delivery format for this next release.  The MQ team has produced a series of installer wrapped download bundles containing pre-installed pkg(5) images for their supported platforms and they are in the process of delivering a companion set of raw zip downloads using virtually the same underlying pre-installed pkg(5) images.  You can obtain their preliminary promoted builds of the installer-wrapped bundles from their MQ 4.4 release site.

Shape of the pkg(5)-based Open MQ Distribution

The Open MQ 4.4 builds currently consists of at least 9 pkg(5) packages containing content ranging from portable Java components of the core product to platform-specific components such as the optional C language client API. Platforms addressed by these preliminary builds include: Windows, Linux, Mac OS X, Solaris and OpenSolaris.  Once AIX is supported by the Update Center project's port of the pkg(5) system in v2.3 of the toolkit, the Open MQ AIX bundle will likely migrate to using pkg(5) packages of their AIX install bundles.

Benefits of Sustainable, Modular Binary Packages

In addition to forming the basis of the MQ 4.4 distribution, these same pkg(5) packages are integrated into builds of the GlassFish v3 distribution. Thereby demonstrating the value of reusing the same modular binary packages across multiple product distributions.  Historically, the lack of formal packaging of raw zip and tar.gz bundles has made it difficult for development and sustaining teams to deliver and share the same updated binaries.  With the adoption of the pkg(5) system and the Update Center Toolkit, development and sustaining teams only need to deliver one set of updated packages that can be shared across multiple product distributions. 

Tuesday Jul 28, 2009

GlassFish v2.1 Packages: The Untold Story

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.

Packaging Kickstart

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.

Web Space Server Continues to Roll Out Updates and Add-ons

Back in Februrary the GlassFish Web Space Server team rolled out their 10.0 release of their new web portal product.  Following the GlassFish application server project, the Web Space Server team was the second major project team to adopt the Image Packaging System and the Update Center Toolkit for layered, multi-platform use. 

Deliveries Thus far

Since their initial release, the Web Space Server team has been busy rolling out:

  • 5 update releases consisting of updated packages published to support repositories that are accessible to customers with support subscriptions
  • GlassFish Enterprise Server 2.1 packages containing latest fixes for customers
  • More than 30 new add-on packages including many portlets and other extensions to the base platform

Additionally, the Web Space Server team has been aggressively staying on top of the Update Center Toolkit releases by publishing updated toolkit packages to both their release and support repositories.  Doing so ensures that their users get the latest toolkit fixes and features.  They are on v2.2 of the toolkit and will soon publish v2.2 Update 1.

A Satisfied Adopter

Based on more than 6 months of experience supporting their product in the field, James Falkner, a lead on the Web Space Server project, had this to say about the value of adopting the pkg(5) system and the Update Center Toolkit:

"The integration of the pkg(5) system and the Update Center Toolkit as part of the Web Space Server product offering has empowered our customers with out-of-the-box, easy to use tools for managing cross-platform Web Space Server deployments, which allows our product team to focus on delivering high quality releases and updates through an efficient pipeline. Specific benefits include:

    • Ease of rolling in external dependencies (e.g. GFv2.1+dependencies) simply by including the packages in the appropriate repository
    • Desktop notifier, which keeps our customers developing on desktops up-to-date
    • Cross-platform support for our cross-platform product
    • GUI + CLI for addressing many real world use cases
    • Usage metrics"

Closed Network Support: New Territory

Another area where the Web Space Server team is breaking new ground is by enabling customers with deployments that don't have access to the internet-based package repositories to obtain copies of the Web Space Server package repositories and run them locally to feed clients within the customers' closed networks.  More on this front in a future post.

GlassFish v3 Preview Adopts pkg(5) and the Update Center Toolkit

Sort of old news, but we needed to bring our Adoption Stories up to date with the most recent releases of products adopting the Update Center Toolkit.

Back in early June, the GlassFish team released GlassFish v3 Preview, the latest early access release of the Java Enterprise Edition 6 technologies and the new Java EE 6 Web Profile.  Because GlassFish v3 uses a microkernel architecture based on OSGi, developers can begin with the Java EE 6 Web Profile and use the Update Center to dynamically upgrade to the full Java EE 6 platform.

As an early adopter of the Image Packaging System and the cross-platform Update Center Toolkit, this is the GlassFish team's 3rd release of GlassFish that is wholly based on the Image Packaging System and incorporates the Update Center Toolkit.  The GlassFish v3 Preview release includes version 2.1 of the toolkit.

As with previous GFv3 releases, the Preview release offers both installer-wrapped and raw zip download bundles - both of which are based on pre-installed pkg(5) images.  As functionality is added to the GFv3 releases, we've witnessed more and more packages being added to the GFv3  release and contrib package repositories.  The current combined count is over 50 packages!

The GlassFish team has already integrated v2.2 of the toolkit into their promoted development builds of GFv3.  Looking forward, the team plans to leverage v2.3 of the toolkit with their next GFv3 release.

Thursday Jul 23, 2009

OpenDS: pkg(5) Ant Integration Updated

Ludovic Poitou has graciously integrated some of my recent build enhancements into the OpenDS source tree.  These changes were mainly oriented toward enabling developers to build the pkg(5)-enabled OpenDS download bundles while disconnected from the network.  Use of the custom Ant tasks for pkg(5) developed by the Update Center 2 project is a key aspect of the overall OpenDS and pkg(5) integration.  

The OpenDS build enhancements include:

  • modifications to enable building of OpenDS pkg(5)-based image when your disconnected from the network
  • updates to the package metadata to include OpenDS project links and up-to-date package descriptions
  • streamlined developer set up steps

The updated developer experience is documented in Building OpenDS in pkg(5) Format Using the Update Center 2 Toolkit on the OpenDS project site.

This integration paves the way to build and publish both pkg(5)-enabled OpenDS download bundles and the associated packages such that OpenDS developers and users can start getting their feet wet with the benefits of this combination.

Thursday Jul 09, 2009

Update Center Toolkit 2.3 Build 32 Available

The UC2 development team is pleased to announce the availability of build 32 of the Update Center Toolkit. This is the second development build for the 2.3 release that is targeted for delivery later this year.  This build resolves 21 issues beyond the previous build.  

With this build, the software update interface is now embedded into the notifier process so that when one clicks on the update notification balloon, the software update UI comes up immediately with the information about what images have updates already available. When run this way, the software update UI suppressed the available add-ons section of the UI if there are not add-ons available.

This build also includes some features and bug fixes for the package publishing tools.  For example, the makepkgs tool now supports the ability to set the default user, group and mode for files and directories.  See the issue list for more details.

This is the first development build that includes all of the changes from the 2.2 Update 1 release.

Wednesday Jul 08, 2009

"Great tool, worked perfectly and was obvious to use"

Don't you love it when your project team receives this sort of feedback? 

We recently received this quote from a person that was evaluating the soon-to-be-released layered or unbundled pkg(5) form of the Sun GlassFish Web Stack, a commercially supported form of Apache HTTP Server, Tomcat, MySQL and PHP for Red Hat Enterprise Linux and Solaris. 

Although the Web Stack product has been available in native pkg(5) format as part of the OpenSolaris distribution since OpenSolaris 2008.05 and in native package format on Red Hat Entperise Linux and Solaris since Web Stack 1.4, this new form of the product distribution introduces non-root, relocatable and multiple instance installation support combined with the benefits of pkg(5)-based installation and update management for the Red Hat Enterprise Linux and Solaris platforms.

After sweating over hundreds of details in what may be perceived as a relatively basic tool, all of the people that contributed to the Update Tool GUI should feel proud of what they've delivered.

Congrats to the Update Center development team for making this experience happen!

Tuesday Jul 07, 2009

Update Center Toolkit 2.2 Update 1 Release

The Update Center team is pleased to announce the availability of release 2.2 Update 1 of the Update Center Toolkit. This release includes the following changes:

  • A fix to client reporting facility where customer opting-in for usage reporting didn't result in reporting data being sent.
  • A fix which allows overlapping of directory trees when publishing packages with the makepkgs tool.  
  • A fix to address the situation where a given file owner or group don't exist on the target system, or the installing user doesn't have permission to install files as that user (i.e., is a non-root user)

Downloads and release notes for the 2.2 Update 1 release are now available.


News for projects adopting the multi-platform port of the Image Packaging System - aka pkg(5)


« February 2017