Runs user written groovy code.
The plugin provides the ability for the user to define additional inputs that will be available to the scripts when executing.
In addition, the plugin provides the ability for the user to define any number of outputs from the execution of the script that could be utilized in subsequent steps in the workflow.
Environment/Instance Properties
Property Name |
Required |
Description |
|
|
|
Project Properties
Property Name |
Required |
Description |
|
|
|
Inputs
Input Name |
Required |
Description |
FDGROOVY_INP_CODE_SNIPPET |
Yes |
The groovy code to be executed. |
Outputs
Output Name |
Required |
Description |
|
|
|
Artifacts
This operation delegates the consumes/produces artifacts decisions to the workflow developer. Check Consumes Artifacts on the workflow step editor if this operation requires artifacts to be delivered prior to execution of the script. Check Produces Artifacts on the workflow step editor if this operation creates artifacts. The artifacts folder is available via the FD_ARTIFACTS_DIR variable.
Endpoint Selection
This operation delegates endpoint selection to the workflow developer. The workflow editor will default the selection to "All", which selects all available endpoints associated to the environment instance. Selecting a specific resource will result in selection of endpoints associated to the environment instance which have that resource defined.
Endpoint Execution
This operation delegates endpoint execution to the workflow developer. The workflow editor will default to "Any", which will execute on any one of the selected endpoints, which will be randomly picked from selected endpoints or a specific endpoint where previous step may have executed. Changing this value to "All" to will result in execution on all selected endpoints.
Special Considerations
User defined outputs – an output must be defined in the workflow editor to be accessible. Within your script, an outputs map is available to add your outputs. Add an output value in outputs map and it will be returned to the workflow process. Any number of outputs can be defined, which makes this plugin very useful as it can be customized to perform actions that may not be supported out of box by FlexDeploy.
Example: outputs.put("STATUS", STATUS_VARIABLE)