Sun N1 Service Provisioning System 5.1 Plan and Component Developer's Guide

Step Overview

Steps are simple instructions that can be part of both plans and components. The provisioning system supports the following kinds of steps:

Component References

A number of steps can reference components in the following situations:


Example 1–1 Using Component References

Assume that the “Apache” component is installed on a host with the following attribute settings.

Component Instance 

installPath

version

installDate

/opt

1.3 

6/1/01 6:00 p.m. 

/usr/local

1.4 

6/1/01 5:00 p.m. 

/opt

1.2 

6/2/01 5:00 p.m. 

/usr/local/bin

1.4 

6/3/01 5:00 p.m. 

/export

1.1 

6/4/01 5:00 p.m. 

The following shows which installed component is referenced when values for various combinations of the installPath and version attributes are supplied.

installPath

version

versionOp

Result 

Explanation 

None 

None 

None 

The most recently installed component on the target host is used, regardless of the values of version and installPath.

/opt

None 

None 

The most recently installed component in the named install path is used regardless of the value of version.

/usr/bin

None 

None 

ERROR 

No component is installed in the specified path. 

None 

1.4 

=

The most recently installed component that has the specified version is chosen, regardless of the value of installPath.

None 

1.5 

Any 

ERROR 

No component is installed with the specified version. 

/usr/local

1.4 

=, >=

The component that matches the specified installPath and version attribute values is chosen.

/usr/local

1.2 

=

ERROR 

No such version is installed at the specified install path. 

/usr/local

1.2 

>, >=

The values for installPath, version, and versionOp match.

/opt

Any 

ERROR 

If two or more components are installed in the same path and they have the same name, the most recently installed component effectively overwrites any other components that have been installed earlier. Components that have been installed at an earlier time cannot be accessed, even if directly specified.