A number of steps can reference components in the following situations:
Components that have yet to be installed can use the <install> step.
Steps that refer to components that have yet to be installed only need to specify the name of the component and an optional version.
Components that have already been installed can use the following steps:
<uninstall>
<call>
<checkDependency>
<createDependency>
<addSnapshot>
Steps that refer to an installed component must specify the installPath attribute because the same component can be installed more than once on the same server.
Assume that the “Apache” component is installed on a host with the following attribute settings.
Component Instance |
installPath |
version |
installDate |
---|---|---|---|
A |
/opt |
1.3 |
6/1/01 6:00 p.m. |
B |
/usr/local |
1.4 |
6/1/01 5:00 p.m. |
C |
/opt |
1.2 |
6/2/01 5:00 p.m. |
D |
/usr/local/bin |
1.4 |
6/3/01 5:00 p.m. |
E |
/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 |
E |
The most recently installed component on the target host is used, regardless of the values of version and installPath. |
/opt |
None |
None |
C |
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 |
= |
D |
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 |
=, >= |
B |
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 |
>, >= |
B |
The values for installPath, version, and versionOp match. |
/opt |
3 |
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. |