Annotation of researchv10no/cmd/odist/pax/ship/README, revision 1.1.1.1

1.1       root        1: Software shipment information.  [better documentation forthcoming ...]
                      2: 
                      3: All files and directories, except for those in /usr/spool/uucppublic,
                      4: are rooted at the shipment/installation directory named by
                      5: $INSTALLROOT.  The $INSTALLROOT hierarchy is similar to the System V
                      6: /usr hierarchy.
                      7: 
                      8: The $INSTALLROOT/ship subdirectory is automatically maintained by
                      9: shipin and shipout.  If you expect to receive future shipments then
                     10: do not change files in this directory.
                     11: 
                     12: pax is the Bell Labs implementation of the proposed POSIX (01/90)
                     13: portable archive interchange command.  The default output format is
                     14: `cpio -c'.  The pax delta format is a Bell Labs extension.
                     15: 
                     16: The following assumes:
                     17: 
                     18:        INSTALLROOT=<path name of software installation root directory>
                     19: 
                     20: After each shipment:
                     21: 
                     22:        <follow specific shipment instructions>
                     23:        cd $INSTALLROOT
                     24:        ship/shipin
                     25: 
                     26: `ship/shipin -n' shows actions but does not unbundle or build.
                     27: `ship/shipin -s <dir>' unbundles from <dir> rather than /usr/spool/uucppublic.
                     28: `ship/shipin -u' unbundles the shipment but does not build.
                     29: `ship/shipin -i' copies from spool area but does not unbundle or build.
                     30: 
                     31: Any non-option arguments to shipin are passed as arguments to the
                     32: generating make or shell script for each component.
                     33: 
                     34: To pass the shipment to another machine (requires ksh):
                     35: 
                     36:        # rcp                   # TO=host:ship
                     37:        # uucp                  # TO=machine!user
                     38:        # list of files         # TO=%list
                     39:        # remote dk pull script # TO=%pull
                     40:        cd $INSTALLROOT
                     41:        ship/shipin -i  # if not installed on this machine
                     42:        cd ship
                     43:        shipout $TO
                     44: 
                     45: {rcp,uucp} initiate copies whereas {list,pull} generate information on
                     46: stdout.  {uucp} copies to an intermediate spool area on the other machine
                     47: whereas {rcp,list,pull} are relative to $INSTALLROOT on the other machine.
                     48: 
                     49: To copy a command <cmd> from $INSTALLROOT to a new root you must copy:
                     50: 
                     51:        $INSTALLROOT/bin/<cmd>
                     52:        $INSTALLROOT/lib/<cmd>
                     53: 
                     54: to the new root directory for all interdependent <cmd>'s.  Depending on
                     55: <cmd>, only one of the above files/directories may exist.
                     56: 
                     57: The files below may appear on the shipment side, the installation side,
                     58: or both.  <installer-login> and <shipper-system> are defined in the
                     59: shipment mail announcement.
                     60: 
                     61: Each shipment is identified by a two part version number [R]YYMMDD
                     62: 
                     63:        R       release -- if specified then it must match for compatibility
                     64:        YYMMDD  shipment year, month and day number
                     65: 
                     66: /usr/spool/uucppublic/<installer-login>/<shipper-system> directory hierarchy:
                     67: 
                     68:        <shipper-login>.<YYMMDD>        shipment control directory
                     69:        <shipper-login>.<YYMMDD>/manifest list of all files in shipment
                     70: 
                     71: $INSTALLROOT directory hierarchy:
                     72: 
                     73:        bin/            executable binaries and scripts
                     74:        include/        common header files
                     75:        lib/            object archives a common data
                     76:        man/            man page subtree
                     77:            man1/       command man pages
                     78:            man3/       library man pages
                     79:            man8/       adminstration and maintenance man pages
                     80:        src/            source subtree
                     81:            cmd/        command source
                     82:            lib/        library source
                     83:        ship/           shipment and installation info
                     84: 
                     85: $INSTALLROOT/ship contents:
                     86: 
                     87:        README          installation info
                     88:        !<mach_user>    shipment installation message for machine!user
                     89:        ship.body       optional shipment announcement main body
                     90:        ship.head       optional shipment announcement header
                     91:        ship.tail       optional shipment announcement trailer
                     92:        shipcost        show relative cost of delta/update shipment
                     93:        shipcrate       crate all components for shipout
                     94:        shipin          unbundle, build and install shipment
                     95:        shiplist        shipout using name-tool list
                     96:        shipop          shipin/shipout support executable
                     97:        shipout         split and send shipment
                     98:        shipslog        shipment log and recipient address info
                     99:        shipswab        clean old stuff from the ship area
                    100:        shipyard        shipment support tools component name
                    101:        lib*            library components
                    102:        *               command components
                    103: 
                    104: $INSTALLROOT/ship/<component> contents:
                    105: 
                    106:        <[R]YYMMDD>     information for the <[R]YYMMDD> shipment
                    107:        base            link to the newest pax base archive
                    108:        delta           link to the newest pax delta archive
                    109:        in.log          shipin log
                    110:        items           required components (excluding this one)
                    111:        list            optional list of persons to send to
                    112:        message         optional message to include in shipment announcement
                    113:        owner           mail address for installation report
                    114:        release         the the current shipment release number
                    115:        report          optional list of $INSTALLROOT relative files to report
                    116: 
                    117: $INSTALLROOT/ship/<component>/<[R]YYMMDD> contents:
                    118: 
                    119:        <[R]YYMMDD>     pax delta archive for ../[R]YYMMDD/base
                    120:        <[R]YYMMDD>.<NNN> delta archive split for uucp
                    121:        BUILT           present if release build succeeded
                    122:        ERROR           present if release build failed
                    123:        GENERATED       present if base archive was generated from a delta
                    124:        UNCRATED        present if release uncrate succeeded
                    125:        base            pax base archive
                    126:        base.<NNN>      base archive split for uucp
                    127:        items           items for this release
                    128:        message         message for this release
                    129:        owner           owner for this release
                    130:        report          report for this release
                    131: 
                    132: Each component $NAME is extracted into either $INSTALLROOT/src/lib/$NAME
                    133: or $INSTALLROOT/src/cmd/$NAME.  The following are attempted, in order,
                    134: to build and install $NAME under $INSTALLROOT:
                    135: 
                    136:        $INSTALLROOT/bin/nmake -f Makefile install
                    137:        mamexec install < Mamfile
                    138:        make -f makefile install
                    139:        sh Makescript
                    140: 
                    141: where Mamfile, Makescript and makefile are usually generated from the
                    142: corresponding nmake Makefile.
                    143: 
                    144:        Glenn Fowler    ulysses!gsf
                    145:        David Korn      ulysses!dgk

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.