Software Distributor Administration Guide HP-UX 11i v1, 11i v2, and 11i v3 (5900-2561, March 2013)

11.5.1 Details Common to All Control Scripts
The agent runs as the superuser, therefore control scripts are always executed as the superuser.
Use appropriate caution.
Control scripts are only executed for software being installed, removed or verified in the
primary root (“/”) or an alternate root directory. Scripts are never executed for software in a
depot.
Each script must set its own PATH variable, using SW_PATH.
Neither swinstall nor swremove require that the system be shut down. Control scripts
must work correctly on both quiet single-user systems and active multi-user systems. They must
deal properly with unremovable running programs. They might have to shut down or start up
processes that they own themselves to succeed.
Control scripts can be re-executed. If a script is run more than once, it should produce the
same results each time. The second execution should not produce any error messages or leave
the system in a state different than before it was run.
A script should be executable after its fileset was loaded without damaging the new fileset
with which it is associated.
For example, if you must copy a file from under /usr/newconfig to another location, use
the cpio -p command to copy it rather than the cp command to move it, or check for the
absence of the /usr/newconfig version before attempting the move. (The cpio(1) command
may be preferred over cp(1) because cpio copies the mode, owner, and group permissions.)
Control scripts can exit with one of the following return values:
SUCCESS (0) - Exit with no errors or warnings.
ERROR (1) - Exit with serious errors.
WARNING (2) - Exit with warnings.
REBOOT (12) -Exits and indicates that a reboot of the system is required when a fileset
is installed. This return value may only be used on a fileset-level checkinstall script.
With Software Distributor versions prior to B.11.31.1009.348 and B.11.23.1009.348,
the return value can only be used for filesets with the dynamic_module attribute set.
NOTE: HP recommends you to specify the is_reboot flag instead of returning the
REBOOT code from the control scripts for rebooting the system.
All messages produced by control scripts are redirected to the agent logfile.
The set of control scripts executed during a particular phase of a task are always executed in
prerequisite order the scripts of each prerequisite product/fileset are executed before the script
of the dependent fileset.
All control scripts are readable by any other control script.
11.5.2 Checkinstall Scripts
Checkinstall scripts are executed during the Analysis phase of a swinstall session. The
pathname of the script being executed is:
$ {SW_CONTROL_DIRECTORY}checkinstall
A checkinstall script must not modify the system.
A checkinstall script determines whether the product/fileset can be installed by performing
checks beyond those performed by swinstall. Example checks include checking to see if
the product/fileset is actively in use, or checking that the system run-level is appropriate.
11.5 Execution of Control Scripts 217