Overview
A run executable task can be used to run an arbitrary command on the pulse™ master at a hook point. The command can be passed arguments based on the build details using the properties described on the Project Build Hooks page. A possible use case for this task is to trigger a custom notification mechanism (lava lamps anyone?).
Properties
Properties are refered to using the ${...} syntax, as used in pulse files. Properties specific to a particular build stage are prefixed with "stage.<name>." where <name> is the name of the build stage (e.g. "stage.default."). For a specific command within a stage, the prefix has an additional "command.<name>." where <name> is the name of the command (e.g. "stage.default.command.build").
 | Build properties
Build properties defined on the project and possibly on the stage are also available. |
Example Usage
Notification
To implement a custom notification mechanism, you can invoke your own script post-build and pass relevant properties via the command arguments, e.g.:
Pass the directory containing files for an artifact named "reports" produced by command "test" in stage "default":
Publishing Artifacts
Perhaps after a successful build you would like to publish artifacts to a shared repository. Artifacts can be located relative to the "build.dir" property. So, for example, to publish the "packages" artifact produced by the "build" command in the "default" stage using a custom script, you might set the script arguments to: