Reference · Tools

Rundeck

Execute jobs and retrieve job metadata from a Rundeck runbook automation server.

Action Communication v1

The Rundeck node executes jobs on a Rundeck automation server and retrieves job metadata. A typical build is triggering an operational runbook from a workflow — a restart, a cleanup, a scripted remediation — and recording that it ran.

Node type
Action
Parameters
7
Outputs
Output, Error
Credentials
Rundeck API

Rundeck

Execute jobs and retrieve metadata from Rundeck.

Overview

Rundeck is a runbook automation and job scheduler. This tool allows executing Rundeck jobs by ID with optional arguments and node filters, and retrieving job metadata. It connects to a Rundeck server instance via its REST API using an API token for authentication.

Category: Communication
Tool Name: rundeck
Version: 1

Appearance: Icon: lucide-Wrench | Color: #F73F39

Node Type

Action — processes input items and produces output

Input / Output

DirectionPort(s)
InputInput
OutputOutput, Error

Credentials

This tool requires Rundeck API credentials. See the Credentials Guide for setup instructions.

Resources

ResourceValue
Jobjob

Operations

OperationValueDescription
Job: ExecuteexecuteExecute a job
Job: Get MetadatagetMetadataGet metadata of a job

Parameters

Job: Execute

ParameterTypeRequiredDefaultDescription
Job IDstringYesThe UUID of the Rundeck job to execute. Supports expressions.
ArgumentsfixedCollectionNo{}Key-value pairs to pass as job options. Each becomes “-name value” in the argString.
— NamestringNoThe argument name (without the leading dash).
— ValuestringNoThe argument value. Supports expressions.
FilterstringNoFilter Rundeck nodes by name or expression (e.g. “tags: web”). Supports expressions.

Job: Get Metadata

ParameterTypeRequiredDefaultDescription
Job IDstringYesThe UUID of the Rundeck job to retrieve metadata for. Supports expressions.

All Operations

ParameterTypeRequiredDefaultDescription
Max ConcurrencynumberNo10Maximum number of items to process concurrently.

Output Data

One output item is produced per input item, on the Output port. The Rundeck response is merged onto the item JSON at the top level — it is not nested under a wrapper property — so the rest of the incoming item passes through unchanged and response fields are addressed directly, for example {{ $json.id }}. Binary data on the input item is forwarded untouched. Neither operation fans out: one input item always yields exactly one output item.

OperationWhat lands on the item
executeRundeck’s response to the run request, describing the execution it created.
getMetadataRundeck’s stored definition of the job, as its API returns it.

An HTTP error from the Rundeck server raises an item error carrying the status code and the server’s response body. Failures go to the Error port in errorPort mode, carrying _error.

Usage Examples

  • Execute a Rundeck job with arguments
  • Get metadata for a Rundeck job
  • Run a deployment job on filtered nodes

Example Configuration

Run a job by its UUID with no options:

{
  "type": "rundeck",
  "parameters": {
    "resource": "job",
    "operation": "execute",
    "jobid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
}

Pass job options as arguments, taking one of the values from the incoming item:

{
  "type": "rundeck",
  "parameters": {
    "resource": "job",
    "operation": "execute",
    "jobid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "arguments": {
      "arguments": [
        { "name": "environment", "value": "production" },
        { "name": "version", "value": "{{ $json.releaseTag }}" }
      ]
    }
  }
}

Restrict a deployment job to the nodes that match a filter, and keep the request rate low:

{
  "type": "rundeck",
  "parameters": {
    "resource": "job",
    "operation": "execute",
    "jobid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "arguments": {
      "arguments": [
        { "name": "deploy_type", "value": "rolling" },
        { "name": "timeout", "value": "300" }
      ]
    },
    "filter": "tags: web",
    "maxConcurrency": 5
  }
}

Read a job’s metadata instead of running it:

{
  "type": "rundeck",
  "parameters": {
    "resource": "job",
    "operation": "getMetadata",
    "jobid": "{{ $json.jobId }}"
  }
}

Error Handling

ModeBehavior
stopHalts workflow on first error
continueSkips failed items, passes successful ones through
errorPortRoutes failed items to Error output port

Tips

Execute Rundeck jobs or retrieve job metadata from a Rundeck automation server.

Notes

  • Arguments are concatenated into a single argString in the order you list them, each rendered as -name value. An entry with an empty Name is skipped, so keep the Name field filled.
  • Filter applies only to execute; it selects which Rundeck nodes the job runs on and has no effect on getMetadata.
  • Both operations take the same Job ID field, so switching between Execute and Get Metadata keeps the UUID you already entered.

Frequently asked questions

How are arguments passed to a job?

They are concatenated into a single argString in the order you list them, each rendered as `-name value`. An entry with an empty Name is skipped, so keep the Name field filled.

What does Filter do?

It selects which Rundeck nodes the job runs on, and applies only to execute — it has no effect on getMetadata.

Do both operations use the same Job ID field?

Yes, which means switching operation keeps the job you already selected rather than making you re-enter it.

Which credential does it need?

A Rundeck API credential for the server you are targeting.

Build with the Rundeck node

Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need Rundeck API credentials first.

Open BusyBot

Last updated . Spotted something wrong? Tell us.