Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
CSPEC Action (Buckminster)
< To: Buckminster Project
Contents
Definition
An action is something that can be executed. It can have zero or many purpose-qualified external dependencies and/or depend on local artifacts. The execution of an action will often produce new artifacts.
Description
There are two types of actions. The internal action that maps to some semantics that is present in your runtime and action that allows you to define the performer that will exectute the action and the optional script that it will make use of.
Internal Actions
Actions such as the eclipse.incremental.build and buckminster.classpath.container are provided by the platform and thus, considered to be internal actions. It is important to be able to include these actions in the CSPEC since they have dependencies and will produce artifacts just like any other action. The performer and script of an internal action are implicit so these attributes are left out from the declaration.
Prerequisites
Prior to the execution of an action, all the artifacts that it requires must come into existence. This might trigger the execution of other actions. An action might also express dependencies to other components. All such dependencies will have a purpose that maps to an export in the appointed component. Since such an export in turn may export artifacts or dependencies, the implied execution of actions may ripple through the whole dependency tree.
Action Performers
An action performer is the piece of code that will be executed when the action is triggered. Buckminster will provide a small set of performers that will enable you to call Ant scripts and operating system commands. New performers can be added using the extension points.
Todo
Please add examples