# Release 3.1.0
Date: 2019-07-31
Name: "mozzarella stick peru piggy-bank"
# Upgrading
See the upgrade documentation here (opens new window).
# Enhancements
# 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 (opens new window).

# 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
# Misc
- Options #4599 (opens new window):
- 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 (opens new window).
- ACLs can use "notBy" instead of "by" to deny access to non matching groups/users #4769 (opens new window)
- Jobs:
- Add default Log filters at the project/framework level. For example, use the Mask Passwords plugin for all jobs in a project. #4806 (opens new window)
- Configuration to allow unsantized html in log output. #4784 (opens new window)
- API: Scheduler takeover endpoint can specify multiple job IDs
- Added option to Enable/Disable notifications for Referenced Jobs #5026 (opens new window)
- (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 (opens new window)
- 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
# Security
- Updated dependencies flagged due to CVEs #5047 (opens new window)
# Plugins
- 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
# Docker
- Images are OpenShift compatible #4826 (opens new window)
- Sync Rundeck profile from LDAP user attributes config option #4995 (opens new window)
- Template added for plugin repository feature #5040 (opens new window)
- (Enterprise) Updated cluster config defaults so that clustering works more naturally OOTB
# Issues
Milestone 3.1.0 (opens new window)
- Fix: empty project list shows white box on home page (opens new window)
- Updating transitive dependencies used in plugins (opens new window)
- Address library vulnerabilities (opens new window)
- Issue #5077 - Dependency updates for CVEs: bouncycastle, spring, c3p0, moment.js (opens new window)
- Restores Previous and Next in Execution page #5102 (opens new window)
- missing "previous" and "next" execution buttons in rd3rc2 (opens new window)
- Fix #5080 by sending the chosen file copier plugin type even if it has no config properties. (opens new window)
- Convert projectStorageType key to lowercase (opens new window)
- Support quartz.threadPool.threadCount parameter in Docker image (opens new window)
- on cluster environment , the job scheduled should respect the remote exec policies (opens new window)
- Referenced Job resolve variables on timeout field #5046 (opens new window)
- Error 500 "provider name was null for Service: FileCopier" at the moment of define "stub" on file copier while creating a new Project (opens new window)
- Dependency updates for CVEs: bouncycastle, spring, c3p0, moment.js (opens new window)
- Job Timeout using an Option Value is not honored when a Job is Referenced (opens new window)
- fix #4781 Options from URL not filled when job is scheduled (opens new window)
Milestone 3.1.0-RC2 (opens new window)
- Change in the async call for SCM gui #4998 (opens new window)
- Uncaught TypeError on jobs page using SCM. #5074 (opens new window)
- Uncaught TypeError on jobs page using SCM (opens new window)
- Takeover endpoint with multiple ids correctly using api v32 #5069 (opens new window)
- Execution cleanup on a cluster (opens new window)
- Remove unused project param in plugin validation method (opens new window)
- Capability to compare between variables using ruleset. fixes #5050 (opens new window)
- Capability to compare variables using ruleset (opens new window)
- Fixes #1654 to make cleanup on records in Workflow, workflow_step and workflow_workflow_step when executions are deleted (opens new window)
- Issues #5002, #4979, #4463, #4464, #4465, #4466 - Update several library dependencies to address reported CVEs. (opens new window)
- oficial docke image: adding custom templates for repository feature. (opens new window)
- reverting changes to allow schedule jobs to respect the remote policy (opens new window)
- Fixes #5030 - This changes make validations if the options from URL is a json object or a simple array list of options… (opens new window)
- Problem with remote URL options validation (opens new window)
- Fix #5023 race condition bug in wf engine (opens new window)
- Option to Enable/Disable notifications for Referenced Jobs #4182 (opens new window)
- Upgrades jackson to 2.9.9 to address vulnerabilities (opens new window)
- Adding attribute-match-node-enhancer plugin to the rundeck oss core (opens new window)
- Fix #5000 highlight workflow editor unsaved changes issues (opens new window)
- JNDI info in the configuration page #5010 (opens new window)
- Fix: job delete "delete all executions" checkbox, and some form control labels don't work (opens new window)
- more optimized use of pluginControlService (opens new window)
- GUI: job workflow editor has visual problems (opens new window)
- Fix EnhancedNodeService bean was not loaded #5004 (opens new window)
- Node Enhancer feature is not working (opens new window)
- Adds "Cancel" button to UI (opens new window)
- GUI: When editing a job, errors are not clearly shown. (opens new window)
- GUI: "Cancel" option not present when editing Node Sources (opens new window)
- Unable to import SCM changes - URI is too large >8192 (opens new window)
- Sync Rundeck profile from LDAP user attributes for official docker image (opens new window)
- adding bind address to jsch (opens new window)
- Fix Issue #4831 - Adds pagination of tokens on user profile page. (opens new window)
- Small improvement to the API forecast (opens new window)
- 3.1: misc ui tweaks (opens new window)
- Remove unreliable test on ReloadablePropertyFileLoginModule. (opens new window)
- Improve performance when copying/editing a job (opens new window)
- Security Scan library updates (opens new window)
- Fix home page project ui not loading #4149 (opens new window)
- Update runbook marker parsing fixes #4973 (opens new window)
- Task/3.1.0 ui review (opens new window)
- Add UI plugins to the new installed plugin list. (opens new window)
- Runbook not shown in job page (opens new window)
- dateformat and locale update (opens new window)
- Changes to fix #4847 - Option enforced with allowed values from remote url was not validating (opens new window)
- Added test and extra if conditional to fix #4959 (opens new window)
- upgrade python winrm 2.0.3. Adding support for kerberos authentication (opens new window)
- Execution mode status API with failing code when status is passive. (opens new window)
- Cleanup/prototype scriptaculous (opens new window)
- Fix: potential npe caused by race (opens new window)
- Fix empty error when node exec validation fails (opens new window)
- fix #4958 file copier form always show defaults (opens new window)
- Schedule DayOfWeek via terraform/API fails. (opens new window)
- RD3.1 New Configure Project Form doesn't work as expected (opens new window)
- 3.1: motd updates (opens new window)
- Fix: run job with no options causes error (opens new window)
- Add multiple jobs ids to scheduler/takeover endpoint (opens new window)
- 3.1: job page shows running executions (opens new window)
- 3.1: Updates: node filters in job run page (opens new window)
- fix: don't log full stacktrace for "already being executed" conflict (opens new window)
- 3.1: Nodes updates (opens new window)
- 3.1: event access update (opens new window)
- UI: Job Show/Run page updates (opens new window)
- Update repository dependency. (opens new window)
- UI fixes, minor css and html changes, flattened (opens new window)
- 3.1: UI: project config form tabs (opens new window)
- Fix #4778. Normalize JAAS debugging log messages. (opens new window)
- Ability to specify -b variable for SSH (opens new window)
- Fix #4930 for ReloadablePropertyFileLoginModule. (opens new window)
- Jaas login using PropertyFileLoginModule adds username as a role (opens new window)
- enabling option plugins by default (opens new window)
- Fix #4894 invalid sourcemappingurl causes 404 (opens new window)
- Add validationQuery parameter (opens new window)
- Option enforced with allowd values from remote url not validating (opens new window)
- UI progress bar : display issue (opens new window)
- Timezone in execution log output (opens new window)
- Option to Enable/Disable notifications for Referenced Jobs (opens new window)
- RD3 GUI: When displaying overview page with a big amount of projects ( over 15 ) the last ones may not load "configure" and "create job" buttons correctly (opens new window)
- Tooltip always shows the wrong time (unless timezone is equal to Zulu/UTC) (opens new window)
Milestone 3.1.0-RC1 (opens new window)
- Update Docker images to be compatible with OpenShift (opens new window)
- Making the translation of messages to Brazilian Portuguese (opens new window)
- Misc nodes page UI updates (opens new window)
- removed UUID validation of jobRef (opens new window)
- Improvement for audit.log file size (opens new window)
- Add secondary node filter for jobs: Exclude filter (opens new window)
- Node status UI attributes (opens new window)
- Update copyright (opens new window)
- Fix #4488. Help Grails write output stream correctly on Tomcat 7. (opens new window)
- Render the SSO login button in a more sensible way. (opens new window)
- Update repository version. (opens new window)
- API job import fails on WriteListener error (opens new window)
- Feature/community news component (opens new window)
- New scheduled execution stats table (opens new window)
- Fix project/framework prop resolution (opens new window)
- Some framework/project plugin property resolution is not correct (opens new window)
- Notification email template with log output: use blank when not included (opens new window)
- Job options hidden1 (opens new window)
- UUID validation of jobRef breaks bulk import of jobs in clean instance of RunDeck (opens new window)
- Disable JobStats because it produces a deadlock on mssql. (opens new window)
- Updates the Copyright date in the footer and licenses page (opens new window)
- Feature/version notification (opens new window)
- Cleanup: orchestrator node processor logging (opens new window)
- Fix #4454 resume correct step context after handler (opens new window)
- Wrong step id logged in rdlog when error handler executed (opens new window)
- Fix race condition/workflow state bug (opens new window)
- Remove extraneous login module config (opens new window)
- Docker - Fix key for project storage type (opens new window)
- Docker - Unable to set project storage type (opens new window)
- Fix rd-acl tool in Docker image (opens new window)
- Notification email template with log output: use blank when not included (opens new window)
- Add API endpoint that allows a user to list their roles (opens new window)
- rd-acl not running on docker version: /home/greg/.sdkman/candidates/java/8.0.172-zulu/jre/bin/java: No such file or directory (opens new window)
- Very large Rundeck.audit.log (opens new window)
- Add tomcat api tests (opens new window)
- Fix #4179 kill job reference thread when parent is killed (opens new window)
- Job detail in execution xml for log storage (opens new window)
- loginmodule unnecessary overwritten in Docker instance ignoring file (opens new window)
- Docker CSP config: Ensure newlines are added when options are rendered (opens new window)
- Docker - CSP config overrides on same line (opens new window)
- Job detail in execution xml for log storage (opens new window)
- Adds Plugin provider metadata (opens new window)
- Add option values plugin type. Fixes issue 77 (opens new window)
- Killing parent job doesn't kill running child jobs ( in 3.0.x , not able to kill parent job ) (opens new window)
- Feature request : hide unmodifyable job options, such as secrets (opens new window)
- Job step skipped for no apparent reason (opens new window)
- Local script option provider (opens new window)
# Contributors
- 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