A Node Executor provider executes a certain command on a remote or local node.
Your provider class must implement the interface NodeExecutor:
public interface NodeExecutor {
public NodeExecutorResult executeCommand(ExecutionContext context,
String[] command, INodeEntry node);
}
See Plugin Development - Java Plugins - Descriptions to learn how to create configuration properties for your plugin.
See the Script Plugin Development for the basics of developing script-based plugins for Rundeck.
The data context used in the script plugin definition can use these additional properties:
${exec.command}
For example, in the metadata.yaml
, you could pass the command string to your script implementation as:
script-args: ${node.name} ${exec.command}
The specific service has expectations about the way your provider script behaves:
All output to STDOUT
/STDERR
will be captured for the job's output.