Search all guides

Reference · Tools

Rundeck integration

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.

Works as
Action
Tool name
rundeck
Operations
2 — Job: Execute , Job: Get Metadata
Parameters
7
Outputs
Output, Error
Credentials
Rundeck API
Official docs
Rundeck docs docs.rundeck.com

What you can build with Rundeck

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

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.

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

ParameterTypeRequiredDefaultDescription
Job ID (jobid)stringYes—The UUID of the Rundeck job to act on. (shown when Operation is execute and Resource is job)
ArgumentsfixedCollectionNo{}Key-value pairs to pass as job options. Each becomes “-name value” in the argString. (shown when Operation is execute and Resource is job)
— NamestringNo—The argument name (without the leading dash).
— ValuestringNo—The argument value.
FilterstringNo—Filter Rundeck nodes by name or expression (e.g. “tags: web”). (shown when Operation is execute and Resource is job)
Job ID (jobid)stringYes—The UUID of the Rundeck job to act on. (shown when Operation is getMetadata and Resource is job)
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.

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

This tool executes jobs and retrieves job metadata from a Rundeck runbook automation server. It is ideal when you need to run a predefined automation job or inspect its details, rather than managing other Rundeck resources. The tool produces the results of job execution or the requested job metadata.

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 Rundeck

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 reviewed . Spotted something wrong? Tell us.