Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Equinox p2 Touchpoint Instructions
A P2 installable Unit (IU) can be installed into one touchpoint. The IU meta data consists of a reference to the touchpoint (Touchpoint Type), and describes a set of actions/instructions to execute on the referenced touchpoint. Currently, two touchpoints (native, and eclipse) have been implemented. The native touchpoint has aprox 5 different actions, and the eclipse touchpoint has aprox 20. Some of these actions take parameters. The actions and parameters are encoded in a Map where they keys are the references to actions, and the value is a single parameter, or a map of multiple parameters. This wiki page describes the two touchpoints, and the instructions they understand.
Native Touchpoint
The native touchpoint is used to install things "outside of eclipse".
instruction | parameters | description |
cleanupzip | source, target
|
removes unzipped files and directoreis that where unzipped from source into target - i.e. an "undo operation" of an unzip instruction. |
unzip
|
source, target
|
unzips the source into the target directory. The source can be the special @artifact source path, which denotes the download cache location for the first artifact key in the IU. Comments in code indicates that the use of @artifact may be deprecated.
|
chmod
|
targetDir, targetFile, permissions | changes mode on the targetFile in the targetDir (a path), permissions is written the same way as to the system command chmod, |
collect
|
- | Need help to describe what this action does - it seems to add the needed artifacts from an installable unit that is replacing another, to a set of artifacts to download from an artifact repository. The instruction does not seem to take any parameters other than those already injected by the engine.
|
link
|
targetDir, linkTarget, linkName, force | Performs the system action ln -s with the parameters linkTarget being the source-file, targetDir is the directory where the symbolic link will be created, and linkName is the name of the resulting link in the targetDir. The force parameter is a boolean in string form (i.e. "true"/"false" and indicates if an existing link with the same name should be removed before the new link is created. the parameter names are quite confusing
|
Eclipse Touchpoint
instruction | description |
collect | |
installBundle | |
uninstallBundle | |
addSourceBundle | |
removeSourceBundle | |
installFeature | |
uninstallFeature | |
setLauncherName | |
addProgramArgument | |
removeProgramArgument | |
setStartLevel | |
markStarted | |
setFrameworkDependentProperty | |
setFrameworkIndependentProperty | |
setProgramProperty | |
addJVMArgument | |
mkdir | |
rmdir | |
link | |
chmod(targetDir, targetFile, permissions) | changes permission on a file using the system chmod command. The targetDir parameter is either a path, or the special @artifact which is a reference to the directory where the first artifact included in the installable unit is located. The parameter targetFile is the name of a file, and permissions is written like for the chmod system command.
|
checkTrust |