Release 3.1.0

Date: 2019-07-31

Name: “mozzarella stick peru piggy-bank”


See the upgrade documentation here.


Rundeck Plugin Repository

It is now easier than ever to discover and install plugins with the new plugin management system! This is enabled by default on new installations, however you may need to update the config for deb and rpm installations. Documentation can be found here.

Taste the rainbow!
Taste the rainbow!

Execution Cleaner

Make manual execution cleanup a thing of the past! Configure the execution cleaner to your retention policy and let it handle the rest.

User Interface Enhancements

Rundeck 3.1 has received numerous UI enhancements to streamline resource creation workflows and get more of the important information you need on the screen at the same time. Here are a few highlights:

Execution view

Activity view

Job Editor

Create Project

Project List

Job list


  • Options #4599:
    • Preserve allowed value list order (sort is now optional)
    • Specify multi-value delimiter
  • Authentication and authorization:
    • Ability to require a role for Rundeck access #4820.
    • ACLs can use “notBy” instead of “by” to deny access to non matching groups/users #4769
  • Jobs:
    • Add default Log filters at the project/framework level. For example, use the Mask Passwords plugin for all jobs in a project. #4806
    • Configuration to allow unsantized html in log output. #4784
  • API: Scheduler takeover endpoint can specify multiple job IDs
  • Added option to Enable/Disable notifications for Referenced Jobs #5026
  • (Enterprise) License key can be shared among cluster members using database storage
  • (Enterprise) Execution cleanup process can clean up executions from dead cluster members

Bug Fixes

  • Project List page correctly loads project controls
  • Remote Option values using allowed values was not validating correctly
  • Fixed node enhancer plugins not working #5005
  • JAAS/property file login module: username should not be added as a role
  • Admin view of user Profile page with lots of API tokens will load correctly
  • (Enterprise) Cluster manager: can select all orphan jobs to reassign scheduler owner


  • Updated dependencies flagged due to CVEs #5047


  • Added “Attribute Match Node Enhancer” plugin for customizing node icons and injecting new node attributes based on other attributes
  • (Enterprise) Ruleset workflow strategy can use variables on both sides of conditional comparisons
  • (Enterprise) SQL Runner can use inline SQL script
  • (Enterprise) File Transfer source allows wildcards


  • Images are OpenShift compatible #4826
  • Sync Rundeck profile from LDAP user attributes config option #4995
  • Template added for plugin repository feature #5040
  • (Enterprise) Updated cluster config defaults so that clustering works more naturally OOTB


Milestone 3.1.0

Milestone 3.1.0-RC2

Milestone 3.1.0-RC1 * Update Docker images to be compatible with OpenShift * Making the translation of messages to Brazilian Portuguese * Misc nodes page UI updates * removed UUID validation of jobRef * Improvement for audit.log file size * Add secondary node filter for jobs: Exclude filter * Node status UI attributes * Update copyright * Fix #4488. Help Grails write output stream correctly on Tomcat 7. * Render the SSO login button in a more sensible way. * Update repository version. * API job import fails on WriteListener error * Feature/community news component * New scheduled execution stats table * Fix project/framework prop resolution * Some framework/project plugin property resolution is not correct * Notification email template with log output: use blank when not included * Job options hidden1 * UUID validation of jobRef breaks bulk import of jobs in clean instance of RunDeck * Disable JobStats because it produces a deadlock on mssql. * Updates the Copyright date in the footer and licenses page * Feature/version notification * Cleanup: orchestrator node processor logging * Fix #4454 resume correct step context after handler * Wrong step id logged in rdlog when error handler executed * Fix race condition/workflow state bug * Remove extraneous login module config * Docker - Fix key for project storage type * Docker - Unable to set project storage type * Fix rd-acl tool in Docker image * Notification email template with log output: use blank when not included * Add API endpoint that allows a user to list their roles * rd-acl not running on docker version: /home/greg/.sdkman/candidates/java/8.0.172-zulu/jre/bin/java: No such file or directory * Very large Rundeck.audit.log * Add tomcat api tests * Fix #4179 kill job reference thread when parent is killed * Job detail in execution xml for log storage * loginmodule unnecessary overwritten in Docker instance ignoring file * Docker CSP config: Ensure newlines are added when options are rendered * Docker - CSP config overrides on same line * Job detail in execution xml for log storage * Adds Plugin provider metadata * Add option values plugin type. Fixes issue 77 * Killing parent job doesn’t kill running child jobs ( in 3.0.x , not able to kill parent job ) * Feature request : hide unmodifyable job options, such as secrets * Job step skipped for no apparent reason * Local script option provider


  • Alberto Hormazabal (ahormazabal)
  • Alex Honor (ahonor)
  • Antoine Leroyer (aleroyer)
  • Can Hanhan (finarfin)
  • carlos (carlosrfranco)
  • Diego Queiroz (DiegoQueiroz)
  • Evan Farrell (moosilauke18)
  • Greg Schueler (gschueler)
  • Greg Zapp (ProTip)
  • Jaime Tobar (jtobard)
  • Jesse Marple (jessemarple)
  • Luis Toledo (ltamaster)
  • Stefan Kirrmann (kirrmann)
  • Stephen Joyner (sjrd218)

Bug Reporters

  • ahormazabal
  • aleroyer
  • am312
  • boudekerk
  • carlosrfranco
  • cwaltherf
  • DiegoQueiroz
  • finarfin
  • gschueler
  • hs-hub-world
  • jairov4
  • javiergoni
  • jbanda15
  • jessemarple
  • JPst
  • jtobard
  • kirrmann
  • ltamaster
  • marcbejerano
  • MegaDrive68k
  • menathor
  • moosilauke18
  • nmamn
  • ProTip
  • RolandVExp
  • sebastianbello
  • sjrd218
  • tintranvan