Skip to main content

Job Plugins

Job Plugins

Plugins are a key element of Rundeck and the PagerDuty Process Automation products. They get used in many different waysopen in new window in different parts of the product. Most commonly, they are used to allow integration with third-party tools.
When talking about plugins in the context of jobs, many of the common node steps and workflow steps are plugins, as are notifications, node orchestrators and log filters (among other things). Creating plugins for jobs allows users to use the same script across multiple jobs. This can be very useful for instances where teams or users are using the same steps in multiple jobs.

Plugin development

There are three waysopen in new window to develop plugins and they are available to any Rundeck or Process Automation user who’d like to build a plugin. Two of those methods are fairly technical (Java developmentopen in new window and Groovy developmentopen in new window), but the third is fairly accessible for anyone who wants to convert commonly used jobs or portions of jobs into plugins. This method is called Script Plugin Developmentopen in new window. Script plugins can be used for the following plugin types: Node Executoropen in new window, File Copieropen in new window, Node Sources and Node/Workflow Steps. The most common scripting languages used to create script plugins are bash, python and Powershell.

When to create a Plugin

Watch for cases where job editors are repeatedly using the same set of steps in multiple jobs or calling a job from many other jobs. Either of those cases might be an indication that it is worth creating a script plugin that could be re-used by several jobs and accomplishes the same as the code that would otherwise be copied from job to job.

Getting Started with Script Plugins

To get started, check out this article that provides details for how to create a script plugin and shows a good basic example. Additional examples of all plugin types are available hereopen in new window.