Custom Distribution Mastering Toolkit

Component script guidelines

These general guidelines apply to both ccs(CDMT) and cqs(CDMT) component scripts:

Writing component scripts

SSO pathnames
A component can find the /opt and /var/opt pathnames to its own SSO by examining these environment variables:

See ``Component script environment variables'' for details.

Communicating between scripts
Use the CCS_PERSISTENT_STORAGE environment variable to specify a directory that different phases of the ccs can use to communicate with other phases across invocations of the ccs. See ``Component script environment variables''.

Control packages
Until the LOAD phase, custom(ADM) has only installed the target with the files included in the SharedControl package. All files in the SharedControl package must be located in the SSOroot/cntl directory.

Because the cqs might run before the LOAD phase, it must only refer to files in SharedControl. The ccs can only refer to files in SharedControl until the PRE_LOAD step.

List both the ccs and cqs, along with any package-level subscripts, in the SharedControl package.

Utilities available to component scripts
The ccs and cqs must only reference scripts and executables that are located in either:

After the POST_CONFIGURE step, the ccs can call other executables directly.

Trapping interrupts
Component scripts can trap interrupts, but should allow the user to interrupt the script. For example, a trap might call a cleanup function to remove temporary files. To trap interrupts during a critical, non-interruptible phase, include a trap that does nothing in the script; immediately after the critical section, reset the trap.

Relinking the kernel
To schedule kernel relinks in the ccs, use the customSched(CDMT) utility.

Determining what is currently installed
To determine which components are installed on the system, use the customquery(ADM) utility.

See also:

Next topic: Component script structure
Previous topic: EXPORT and UNEXPORT phases

© 2003 Caldera International, Inc. All rights reserved.
SCO OpenServer Release 5.0.7 -- 11 February 2003