Bill Sommerfeld's Weblog
Still Under Construction. Watch for falling objects

Monday April 11, 2005
Improving a development tool. One of the internal development tools we use heavily within the Solaris
development organization is a script called "bfu". Depending on
who you talk to, it's either Bonwick/Faulkner Upgrade or Blindingly
Fast Upgrade.
In a matter of a few minutes, it will either (a) upgrade the core OS
components from a nightly build, or (b) turn it into an unbootable
brick.
In other words -- the perfect tool for a developer and something you
don't want customers to ever use. (Of course we'll be letting it
loose as part of OpenSolaris).
The core of bfu is the use of cpio to overwrite all the files which
originate from a build of the core OS/Networking ("ON") source tree.
This gets you most of the way there, but the remaining bit is to merge
various system files (especially key files like /etc/name_to_major and
/etc/minor_perm) to include both the new additions in the core OS *and*
entries added by non-ON packages as part of the original install.
Our packaging system includes "class action" scripts to update these
files automatically, but since the dawn of BFU, developers have had to
merge these files manually on each BFU; getting this wrong is the
leading cause of brickification.
As you might expect, all sorts of hacks have evolved to do this in an automated way.
A few years ago, a coworker developed a package called ACR which does
it The Right Way -- using the same scripts used by packaging.
She's been too busy to integrate this into the official source tree, so
I picked it up & ran with it, and just integrated it. Folks
in the OpenSolaris preview should see this in nevada build 13.
(2005-04-11 13:27:59.0)
Permalink
|
Calendar
| « April 2005 » | | Sun | Mon | Tue | Wed | Thu | Fri | Sat |
|---|
| | | | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | | 12 | 13 | 14 | | 16 | | 18 | 19 | | | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | | | | | | | | | Today |
RSS Feeds
All
/General
/IETF
/IPsec
/Music
/OpenSolaris
/Solaris
Search
Links
Navigation
|