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.

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.

Thursday May 28, 2009

Update Center Toolkit 2.2 Release

The Update Center team is pleased to announce the availability of release 2.2 of the Update Center Toolkit. This release includes the following major new features:

  • Software Update interface for simplifying the application of updates to multiple images and for finding out about new applications and add-ons to the applications that you already have,
  • Featured Software section in the Update Tool interface for informing the user about new applications and add-ons to existing applications,
  • An updated version of the pkg(5) software that provides the same capabilities as the version in OpenSolaris 2009.06,
  • Enhanced Update Tool interface that:
    • makes use of background threads to provide a more interactive experience, 
    • provides a package search interface,
    • provides URLs in the package overview with more information about each package, and
    • enhances the interface with right click menus, additional icons, and other ease of use features
  • Improved development tools for publishing packages and creating images with pre-installed packages, and
  • Support for SUSE Linux with KDE and OpenSolaris 2009.06.

A look at the new Software Update Interface:


Update Center Software Update Interface

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

Monday May 11, 2009

Update Center Toolkit 2.2 Build 28 Available

The UC2 development team is pleased to announce the availability of build 28 of the Update Center Toolkit.  Coming only a week later, this build resolves 47 issues beyond what was available in the previous build.  The remaining builds will fix stopper bugs only as the team works towards delivery of the 2.2 release later this month. 

Tuesday May 05, 2009

Update Center Toolkit 2.2 Build 27 Available

The UC2 development team is pleased to announce the availability of build 27 of the Update Center Toolkit.  This build resolves 44 issues beyond what was available in the previous build. This was the last open build for the 2.2 release.  The remaining builds will fix stopper bugs only as the team works towards delivery of the 2.2 release later this month. 

Monday May 04, 2009

Rollback with pkg(5) User Images

Undo Icon Today, a colleague asked about how the Update Center 2 toolkit and the Image Packaging System handles rollback to a previous version of a user image.  He noticed that the Update Tool GUI doesn't seem to have an option to do this.  

Right now, one has to either:

  • Uninstall the package(s) that you don't want and reinstall the older version.  The older version is available in the GUI by using the View|Show All Versions menu choice.  From the command line, this can be done by specifying  some-package@previous.version on the install command after first uninstalling the current version. While not atomic, this has the same effect as a "patchrm" in SVR4.
  • If using a ZFS file system, run "zfs snapshot" on your image directory before doing the update.  If you don't like the update, you can rollback to the snapshot.
  • Create a backup of the image directory before doing the update.  Restore from the backup if you don't like the update.

A few notes:

  1. Currently there is no notion of an "update" defined in Update Center, i.e., all we have are installs of new versions of packages.  So if you install new versions of 3 packages yesterday and 2 packages today, there isn't any way to identify that as 2 "updates".  Rather, it is merely 5 installs of new package versions.  The operational history does record the operations that are done, so one would be able to figure out from the history that two "update" operations were done.  But there isn't anything in the GUI or CLI that takes advantage of this.
  2. From the CLI, installing an older version of a package doesn't downgrade the package.  So if you have version 2 of a package installed and you do "pkg install some-package@1", it will output a message saying that "No updates are available for the image". Technically, there isn't any reason why IPS can't calculate what it takes to go backward directly, although there could be some trickiness relative to dependency calculations, but so far there hasn't been emphasis on that.  This is primarily because the OpenSolaris team depends on ZFS for rollback of operating system updates.  So rollbacks of user image updates has not received as much attention. Eventually, I would like to see the CLI support something like a "pkg rollback" operation that would take a list of older package versions, and the result would be that the image software would be restored to that previous version of the packages.
  3. Uninstalling a package also requires uninstalling the packages that depend on it. So accomplishing the first option can be difficult when dependencies are involved. If there were a "pkg rollback" command, it could take care of this by possibly rolling back updates to the packages that depend on the one being rolled back.
  4. The second option requires root access, which generally is not required for user images. 
  5. When a rollback is done with the second and third option, all other history in that image not related to the update is also lost.  For example, with a database in the image, any updates that were made between the update and the rollback would be lost. Generally, when people think of patch backout with SVR4 packages, they assume that data changes made while the patch was there are not lost.  This actually presents problems sometimes if the patch allows new data structures to be introduced or causes data reformatting, and then the old code has to deal with the new data (and sometimes it can't).  These rollbacks are fool proof because they literally get you back to where you were, but that might not be where you want to be.

Sunday Apr 26, 2009

Update Center Toolkit 2.2 Build 26 Available

The UC2 development team is pleased to announce the availability of build 26 of the Update Center Toolkit.  New features in this build include:

  •  The Software Update UI is feature complete.  It is started by clicking on the notifier update notification balloon.   It can also be started from the command line by entering "updatetool -u".   See the screen shot below.
  • "Featured Software" is now feature complete. This capability enables the promotion and easy installation of software applications and add-ons from the Update Tool GUI and Software Update tool.
  • The search feature is available within the updatetool interface and is now also feature complete.

This build resolves 38 issues beyond what was available in the previous build.  Additionally build 111 of pkg(5) has been incorporated in this build.  This build fixes an array of pkg(5) issues.

The Software Update user interface provides a simply and streamlined method  to apply updates to multiple application images: 


Software Update UI


Monday Apr 06, 2009

Update Center Toolkit 2.2 Build 25 Available

The UC2 development team is pleased to announce the availability of build 25 of the pkg(5) toolkit.  New features in this build include:

  • the Software Update UI is available in preliminary form by entering "updatetool -u".  This UI is also launched when clicking on the notifier balloon. 
  • the feature software feature is available in preliminary form.  Look at the top of the left hand panel in updatetool. 
  • the search feature is available within the updatetool interface.  There is still some work to do on the layout, but the basic search functionality is there.

This build resolves 14 issues beyond what was available in the previous build.

Monday Mar 30, 2009

Repository Feeds: Making Progress!

Although the feed feature of the pkg(5) repository server pkg.depotd has been available for a few months, we're just starting to get it configured properly for some of the repositories that our project team helps to manage.  For example, recently Teresa of our Release Engineering team modified several repository instances to use a 60 day window rather than the default of 24 hours.  This extended window will help new users see a broader set of package additions and updates.  The setting of interest was:

cfg_cache:

[feed]
window=1440

Where "1440" is the number of hours.

The URL for repository feeds is simply:

http://pkg.sun.com/layered-collection/dev/feed

Here's a view from Thunderbird of the feed from http://pkg.sun.com/layered-collection/dev,  a repo that acts as a clearing house of development quality packages of Sun middleware:


Several comments on the user experience:

1) Date/time stamps: Are a bit misleading based on how we typically manage publication of packages to our repositories.  Since we use a "copypkgs" utility to copy a submitted package to the destination repository and this utility preserves the publication date/time stamp, the date/time displayed in the feed can be much earlier than the date/time at which the package appeared in the repository.

2) Since this is a feed for an external repository, we need to configure pkg.depotd to use a more appropriate "From" value than "SWI Release Engineering".  Perhaps, simply "Sun Microsystems" in this example. The "From" field in Thunderbird's display comes from the <author><name> element in the feed:

<author><name>SWI Release Engineering</name><email>swi-re@sun.com</email>

3) It's very nice to see the distinction between "Added" and "Updated" for new and updated packages.

4) Perhaps dropping the publication date/time stamp from the "Subject" would help reduce the complexity of the title and let the users focus on the package name and non-date/time stamp portion of the version string.  The "Subject" field in Thunderbird's display comes from the <title> element in the feed:

<title>Updated pkg:/pkg-toolkit@2.2.0,0-22.1765:20090221T002421Z</title>

5) Once we enhance our repository web front end, there will be a much better user experience when the user clicks on the website link to see the package details.  For example, displaying change summary information would be a very useful feature.

Clearly, there's room for a more user friendly display of data.  The UC2 project is keen on seeing a series of repo web UI enhancements along these lines.

Sunday Mar 15, 2009

Update Center Toolkit 2.2 Build 23 Available

The UC2 development team is pleased to announce the availability of build 23 of the pkg(5) toolkit.  New features in this build include:

  • a new drop of the pkg(5) software (see below)
  • a script for manifest file creation
  • a new threading model in the updatetool GUI to make it more responsive at startup and during network operations
  • refresh list is now in the right click menu

As with the previous build, there was quite a bit of bug fixing. This build resolves 36 issues beyond what was available in the previous build.

The new threading model in updatetool causes networks operations such as updating the catalog and retrieving manifests to be performed in a background thread.  This keeps the user interface active even though the program is waiting for data from the server. This change also changed the startup behavior of updatetool.  In the past, updatetool would check for updates on the selected image and display the available updates panel if any were available, and if not, it would display the available add-ons panel. This required quite a few network operations and results in updatetool starting slowly.  With the change, updatetool now display the summary panel for the image, and the user is able to select what detailed panel to display.

pkg(5) logoThe new drop of pkg(5) is based on revision 897 (Feb 20, 2009) of the pkg(5) repository gate. This is the first time that the pkg(5) software has been resynced with the gate in the 2.2 development cycle. This drop includes the following significant features and bug fixes over what was in 2.1:

  • Support for variants. A variant allows the creation of so-called "fat" packages that include binaries for both OpenSolaris x86 and SPARC.  When the package is installed, only the files for the desired architecture are downloaded and installed on the target. The variants feature can also be used for other features such as debug vs. non-debug.  The Update Center project intends to use this feature for operating system variants as well.
  • The pkg.depotd process can serve SSL/HTTPS directly (without an Apache front-end) if desired
  • The intent information that is sent to the server when manifests are requested now propertly includes information about the currently installed version of a package for an update.
  • The pkgsend command now supports publishing to a local disk repository without having to run pkg.depotd. To do this, use a file URL rather than an HTTP URL. One still cannot create a new repository without running pkg.depotd (that is coming later). 
  • Checking of pkgsend arguments has been improved.
  • The output from the Windows pkg(1) command now includes progress information.
  • When running on Windows, pkg(5) now correctly detects if a file is in use when deleting a package.

Tuesday Mar 10, 2009

Update Center Toolkit 2.2 Build 22 Available

The UC2 development team is pleased to announce the availability of build 22 of the pkg(5) toolkit.  New features in this build include:

  • the application images are now sorted in the left panel of updatetool
  • copypkgs now checks to make sure that the source repository was created using a sufficiently recent version of the pkg(5) software

Most of the work in this build was bug fixing. This build resolves 29 issues beyond what was available in the previous build.

Tuesday Feb 24, 2009

Removing a package from a pkg(5) repository

Since several people recently asked about how to remove a package from a pkg(5) repository, we describe the manual steps in this blog entry.
[Read More]

Tuesday Feb 10, 2009

Update Center Toolkit 2.2 Build 21 Available

The UC2 development team is pleased to announce the availability of build 21 of the pkg(5) toolkit.  New features in this build include:

  • Improvements to the packaging tools to no longer require recompilation of .py files after installation and to allow the archivepkgs command to only archive selected package versions
  • Support in the Java API for setting the name of the client that is using the API

This build resolves 18 issues beyond what was available in the build 20.

The  development plan for the 2.2 release continues to take shape. There is now a dedicated wiki page for 2.2 planning. As can be seen with this build announcement, one of the changes for the 2.2 release is that the development team has returned to producing a build every 2 weeks rather than 3 as was done with the 2.1 release.

Web Space Server 10 Adopts Update Center

A major new product in the Sun GlassFish Portfolio is the Sun GlassFish Web Space Server 10. Web Space Server is Sun's next generation portal platform and we're excited because the Web Space Server team adopted Update Center 2.1 to package their software and deliver updates and add-ons to their customers. We'd like to thank the team for their hard work, and congratulate them on the Web Space Server 10 release.

Want to learn more about Update Center 2? Then check out our introductory screencast.
About

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

Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today