Executes user-provided shell commands and/or existing scripts on a UNIX server. 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.
All workflow execution properties are also available to the shell script, but any print of secure properties using echo command will result in ***** being printed in FlexDeploy logs. This prevents secure property values like PASSWORD from being visible to any FlexDeploy user.
Inputs
Input Name | Input Code | Required | Description |
---|---|---|---|
Code Snippet |
| Yes | The commands and/or scripts that are to be executed on the Unix server. |
Stop on Error |
| No | Flag that indicates whether the script should stop on an error or continue on processing. Otherwise, only the last command’s return code will be checked. |
Disable Echo |
| No | Flag that indicates to disable echo of each command as it executes. Echo of commands can be very useful tool to identify where shell script has failed during execution as well it helps with debugging. If you do not want to see this echo, you can select this input. |
Restrict Environment |
| No | Provide comma-separated instance codes to restrict environment variables in shell to specified instance codes. If no value is provided all properties are available to shell environment. |
No Secure Variables |
| No | Check if you do not want to pass secure/encrypted properties in shell environment. |
Artifacts
This operation delegates consumes/produces artifacts decision 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 Target.
Selecting a specific resource will result in selection of endpoints associated to the Target 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, use the following built-in function to set the output with the appropriate value and have it returned to the workflow process. Any number of outputs can be used.
Outputs Syntax
setOutput {output name} {output value} #Example setOutput STATUS ${STATUS_VARIABLE} To load a file into an output, consider syntax like this: setOutput OUTPUT_NAME "`cat /path/to/file.txt `"