Date: 2016-06-10
Name: "cafe bonbon hotpink pushpin"
Fixed bugs and an enhancement:
- Framework and project global variables. Use
framework.globals.X=Y
orproject.globals.X=Y
in you configuration to expose${globals.X}
to jobs/executions.
- Alberto Hormazabal (ahormazabal)
- Diomidis Spinellis (dspinellis)
- Greg Schueler (gschueler)
- shigemk2
- ahonor
- ddzed15
- dspinellis
- gschueler
- katanafleet
- makered
- remixtj
- richiereynolds
- royjenkins
- shigemk2
- Add framework and project global variables
- Script plugins for Workflow/Node steps: allow script file extension to be specified
- Script plugins for Workflow/Node steps: allow key storage automatic read
- API: /api/17/project/name/jobs/import does not return JSON when ?format=xml is used
- API: 404 error for /api/17/project/name/run/url
- API: project create json with null description results in "null"
- "Run Again" job reverses multi-value arguments
- Error while reading project acls via API
- Plugin displayType: CODE supports syntax
- Cannot delete executions since upgrade to 2.6.6
- Archive out of date Japanese documentation
- Fix deadlink quartz
- option cascading not working at 100% (after upgrading 2.4.2 to 2.6.6)
- Simple Configuration edit page: should prompt when you navigate away before saving
- Log storage fails to retrieve remote file if unable to rename temp file
- Ensure creation of /tmp/rundeck directory
- Secure Option key Storage Path UI should disable some of the non relevant checkbox/fields
- When using "Run Again" options revert to their default value.
Date: 2016-04-29
Name: "cafe bonbon goldenrod plane"
Bug fixes.
- Greg Schueler (gschueler)
- sebastianopilla
- ahonor
- ajxb
- alexey-pankratyev
- amitk75
- david-richer-adsk
- gschueler
- jyaworski
- kmusard
- ltamaster
- sebastianopilla
- Resource Model source errors are not properly shown in config page (2.6.6)
- Directory Resource Issue using JSON files
- 2.6.6: when adding a new project, the home page may not load the project action buttons properly
- API: /project/X/resources for invalid project results in 500 instead of 404 response
- Place Jetty work directory outside of the installation tree
- CLI tool: "Response content unexpectedly empty" message
- use separate cli-log4j.properties log4j config for cli tools
- Git Export and Git Import in YAML format issue in 2.6.6
- CLI tools should allow relative urls
- Error in "run" command
- Project configured for Git export becomes unavailable if repo is not accessible
- Log file uses system default file encoding, should force UTF-8
- SCM does not change branches once created
- Retry Failed Nodes does not handle nodes with spaces
- Node name with / character causes GUI execution state to be incorrect
Date: 2016-04-15
Name: "cafe bonbon fuchsia phone"
(Release 2.6.5 was missing some changes noted here, so 2.6.6 includes those changes. 2.6.5 release notes are repeated here.)
Primarily bug fixes and performance improvements.
Notably:
- Startup time improved for Rundeck installs with many (thousands) of projects
- Fixes for node sources and asynchronous node loading
- new healthcheck for database latency
- Bharadwaj P (t20)
- Greg Schueler (gschueler)
- ahonor
- david-gregory-inmar
- fiquett
- gschueler
- hyuan-esol
- jippi
- joshuaspence
- ltamaster
- nilroy
- t20
- healthcheck: add database pingtime healthcheck
- API enhancement: takeover schedule for a single job
- Error connecting to OpenSSH 7.2p2. server
- Throw SSHProtocolFailure error when SSH to a remote machine running OpenSSH 7.2p2
- Job execution error in log after schedule takeover
- Request to /scheduler/takeover for all jobs should skip already owned jobs
- Response for /scheduler/takeover indicates prior owner's server uuid
- SSH: when node has blank hostname, it attempts to connect to localhost.
- rd-jobs list export schedule.time.hour wrong
- Slow startup due to incomplete log storage requests
- (2.6.4) Create project fails after second submit
- fix #1744 first node load is synchronous
- fix #1764 slow home page with many projects
- Slow main page with many projects
- Nodes list error when the remoteUrl is defined
- spurious "removeScriptPluginCache: /var/lib/rundeck/libext/cache/..." message
- GUI enhancement: show owner server UUID for scheduled jobs
- API enhancement: cluster mode ability to find server UUID for scheduled jobs
- Initial resource model loading is not asynchronous
- unable to save jobs when notification plugin used
- Upgrade Apache Commons Collections to v3.2.2
- After 2.6.3 upgrade, nodes are not updated
- Incomplete log file storage request should be cancelled after final retry, or retriable via API
- Listing Running Executions API, "Total" error value using wildcard ("*") in the URL
- In the summary page, a failed node reports failure on the wrong step (2.5.3-1)
- MailNotificationPlugin.groovy does not work with rundeck 2.5.2
Date: 2016-04-15
Name: "cafe bonbon forestgreen paperclip"
Primarily bug fixes and performance improvements.
Notably:
- Startup time improved for Rundeck installs with many (thousands) of projects
- Fixes for node sources and asynchronous node loading
- new healthcheck for database latency
- Bharadwaj P (t20)
- Greg Schueler (gschueler)
- ahonor
- david-gregory-inmar
- fiquett
- gschueler
- hyuan-esol
- jippi
- joshuaspence
- ltamaster
- nilroy
- t20
- healthcheck: add database pingtime healthcheck
- API enhancement: takeover schedule for a single job
- Error connecting to OpenSSH 7.2p2. server
- Throw SSHProtocolFailure error when SSH to a remote machine running OpenSSH 7.2p2
- Job execution error in log after schedule takeover
- Request to /scheduler/takeover for all jobs should skip already owned jobs
- Response for /scheduler/takeover indicates prior owner's server uuid
- SSH: when node has blank hostname, it attempts to connect to localhost.
- rd-jobs list export schedule.time.hour wrong
- Slow startup due to incomplete log storage requests
- (2.6.4) Create project fails after second submit
- fix #1744 first node load is synchronous
- fix #1764 slow home page with many projects
- Slow main page with many projects
- Nodes list error when the remoteUrl is defined
- spurious "removeScriptPluginCache: /var/lib/rundeck/libext/cache/..." message
- GUI enhancement: show owner server UUID for scheduled jobs
- API enhancement: cluster mode ability to find server UUID for scheduled jobs
- Initial resource model loading is not asynchronous
- unable to save jobs when notification plugin used
- Upgrade Apache Commons Collections to v3.2.2
- After 2.6.3 upgrade, nodes are not updated
- Incomplete log file storage request should be cancelled after final retry, or retriable via API
- Listing Running Executions API, "Total" error value using wildcard ("*") in the URL
- In the summary page, a failed node reports failure on the wrong step (2.5.3-1)
- MailNotificationPlugin.groovy does not work with rundeck 2.5.2
Date: 2016-03-04
Name: "cafe bonbon firebrick music"
Bug fixes.
- Greg Schueler (gschueler)
- gschueler
- richiereynolds
- schast
- tkald
- wufpack00
- SCM initialization can cause slow startup with many projects
- java.lang.NullPointerException Rundeck 2.6.3
- After 2.6.3 upgrade, node page doesn't display nodes correctly.
- After 2.6.3 upgrade, ACL that does not allow job create/delete always shows Bulk edit checkboxes
- Error after Upgrade to 2.6.3: Failed loading resource model source, java.lang.IllegalStateException: Recursive load
Date: 2016-02-25
Name: "cafe bonbon dodgerblue leaf"
Primarily bug fixes, and some enhancements:
- Asynchronous nodes cache. Per-project and global toggle and configurable retention delay. By default, projects now use an asynchronous method for retrieving Node data from Resource Model Sources. You should see an improvement in page load when using slow model sources (such as a URL for a slow endpoint).
- Performance improvements with many thousands of Nodes. The Nodes and Commands page, as well as other places where Nodes are loaded (e.g. Job editor) now should be much more responsive when you have e.g. 20K nodes. The Nodes page now uses result paging, and some parts of the UI now truncate the result set as well if you have many nodes.
- Alex Honor (ahonor)
- Bryon Williams
- Greg Schueler (gschueler)
- Luis Toledo
- Miguel A. Fuentes Buchholtz (miguelantonio)
- Rophy Tsai (rophy)
- mathieuchateau
- Alicia-Solinea
- SydOps
- ahonor
- ajxb
- arminioa
- bryonwilliams
- gschueler
- kamaradclimber
- kmusard
- ltamaster
- makered
- mathieuchateau
- obrienmorgan
- rasebo
- richiereynolds
- robizz
- rophy
- schast
- snebel29
- ssbarnea
- toggle job execution/schedule can be triggered with GET without synchronizer token
- Add bulk job edit: enable/disable schedule and execution
- ExecutionJob: Failed to update job statistics
- some links are dead
- Workflow step editor: after deleting a script and hitting save, it disappears
- Code example in documentation incorrect
- Documentation Proposed Change log4j
- Missing step plugin causes execution to show no output
- Orchestrator plugin input cannot use job options
- missing API documentation for job execution and schedule enable/disable
- SCM plugins not shown in Plugins listing page
- Add documentation for changing date formats, and general localization
- Script-based plugin setting for merging parent environment variables
- Feature: Asynchronous nodes cache
- Nodes UI page updates issues
- Secure options with defaults in key storage
- Node page UI updated for large node sets
- rd-acl doesn't support project_acl resource type
- lack of quoting tags links in Nodes browse page
- SCM: GitExportPlugin - Could not serialize job: java.lang.IllegalArgumentException: Format not supported: yaml
- SCM: NoSuchFileException
- Passive mode - more explicit for already running job
- Enhance project archive API: select only a set of executions for output
- Added CODE renderingType to allow plugins to render textareas with th…
- execution query api for older than relative date
- fix #1525 project storage file read should not close stream
- fix #1611
- 500 http response when execution does not exist
- Invalid username and password message displayed on a successful login which was preceeded by a failed login
- Querying 5k nodes leads to very long queries on the webui
- fix long line wrapping for log output #1558
- Multiple Authentication Modules documentation error
- The size (8192) given to the column 'json_data' exceeds the maximum allowed for any data type (8000)
- Document how to grant via ACL for Per-Job schedule and execution toggling
- Console output is not wrapped making impossible to see long lines
- Export project is not working when using the GUI - 2.6.0-1
- Cancel/Save options on workflow step become unresponsive after error
- Prevents remote option spam in issue 1391 by using onChange event
- Log Output gone mad in 2.5.2
- Simultaneously triggered jobs sometimes hang
- Job timeouts before actual timeout value
Date: 2015-12-02
Name: "cafe bonbon crimson headphones"
This release includes bug fixes, and some enhancements.
- Secure Job Options can now use Key Storage for defaults, enabling use via scheduled jobs
- Quartz thread pool info and warnings added to system info
- API added for SCM plugins, API version updated to v15
- Plugins: input property definitions can now be placed in groups, which can be shown collapsed by default
- Greg Schueler (gschueler)
- ahonor
- gschueler
- sea-lmarchal
- stack72
- Feature/multifile storage
- SCM API: push via project-commit action not working
- SCM API: plugin type not checked for enable/disable
- SSH debug logging is missing
- plugin properties can be grouped
- Feature: secure option can use key store for default values
- for #1535 allow rundeck.basedir var in remote option file urls
- Expand ${rdeck.base} for remoteUrl paths for options
- 2.6: startup message "Event listener rundeck.services.JobEventsService#jobChanged declared for topic jobChanged and namespace app but no such event is declared, you may never receive it"
- Add Quartz Scheduler threadPool usage to metrics healthcheck, system info
- Startup: ERROR level log: "ScheduledExecutionService - rescheduled job: 335"
- Job succeeds instead of failing when executing a job-ref at the end
- API for SCM plugins
- SCM: add API support for SCM plugins
- Error Deleting a Project
Date: 2015-10-23
Name: "cafe bonbon cornflowerblue globe"
Bugfixes for SCM plugins, and the Job execution/schedule toggle feature.
- Greg Schueler (gschueler)
- Miguel A. Fuentes Buchholtz (miguelantonio)
- robertopaez
- LordMike
- albertmfb
- dustinak
- fseiftsmlb
- gschueler
- jyaworski
- katanafleet
- miguelantonio
- mprasil
- oovoo
- paulpet
- rophy
- tomkregenbild
- SCM plugin does not interpret variables in paths
- CLI: Running rd-jobs list gives an error when user profile is incomplete and SCM is enabled
- Upgrade to 2.6.0: schedule/execution enabled defaults to No
- changes implementation of flipScheduleEnabled and flipExecutionEnable…
- SCM: import while export plugin enabled can cause stacktrace/empty file
- SCM synch rebase: if result is conflicted, it should be aborted
- SCM: yaml whitespace error on re-import
- SCM "Import remote changes"-cancel button leads to SCM configuration
- SCM rebase gives a non-descriptive message
- SCM imports reads as XML even though YAML has been chosen
- SCM: File Path Template Parameter issue
- SCM: enabling git export and import, then exporting job changes, causes "import needed" status for the job
- SCM: Job description with multiple lines can cause whitespace issues for git-diff
- SCM: Merge result message is verbose
- SCM Plugins: deleting a project should cleanup/remove loaded SCM plugins
- Upgrading from 2.4.x to 2.6.x, all jobs have been set to "Enable Execution: no"
- SCM export plugins: job change events leak to multiple projects
- SCM: setup two projects with same git base dir causes issues
- Upgrade to 2.6.0: Node selection defaults to "user has to explicitly select target nodes"
- When disabling a crontab style schedule and restarting the rundeck service, the schedule is enabled again after service restart.
- scm export commits yaml format in .xml extension
- SCM HTTPS, unknown CA
- Disable/Enable Schedule in Job Actions menu (Rundeck 2.6.0-1)
- problem closing file descriptors unloading plugins in rundeck
- Deleting execution from api is not always working (random errors)
- documentation needed: using the sudo password and ssh private key passphrase via storage facility for ssh
Date: 2015-10-08
Name: "cafe bonbon chocolate gift"
- SCM Plugin with Git implementation (preliminary release)
- Per-job logging limits, such as max line count or file size, see Jobs - Log Limit
- Active/passive execution mode: disable all executions on the server
- Per-Job schedule and execution toggling: disable scheduled or all executions for a single job
- UI updates to Nodes and Commands pages
- Project Archives: includes ACLs and project config
- Per-project ACLs available via API, storable in DB
- Filesystem ACLs are now used for "global" level access control
- Project ACLs are limited to manage the specific project, and are stored in the DB
- ACL validation improvements
- see the
rd-acl
tool validate command - Invalid filesystem ACLs are logged in the service log
- Invalid project ACLs uploaded via API will be rejected
- see the
- Example Orchestrator plugins now bundled
- JSON support added for all API endpoints
- Some API refactoring for v14
- See API v14
- Jobs can now disable automatic node selection by default
- Phew
Upgrading from 2.5 should not cause any issues. Some new database fields were added, and a new database table was added.
Some changes to Job serialization formats:
- The project name is no longer included in exported Job definitions.
- In YAML: options are now always serialized as a sequence, and will preserve the sequence order on input. The original Map format is still allowed on import.
- Alex Honor (ahonor)
- Francois Travais
- Greg Schueler (gschueler)
- Mathieu Chateau (mathieuchateau)
- Miguel Fuentes (miguelantonio)
- Roberto Paez (robertopaez)
- William Jimenez (wjimenez5271)
- maciejs
- adamhamner
- ahonor
- chadlnc
- ctgaff
- ddzed15
- francois-travais
- gschueler
- hipslu
- ko-christ
- maciejs
- mathieuchateau
- miguelantonio
- snebel29
- sylvainr
- wjimenez5271
- SCM Plugin with Git support
- Log limit
- Add Job Logging Limit options: allow a job to abort/fail or truncate logging if too much output occurs
- GUI improvements for schedule and execution toggle
- XML Export of Jobs with inline scripts fails
- Disable Compatiblity Mode in Internet Explorer: Set X-UA-Compatible
- jobs never complete in 2.5.3 (sudoPassword option is necessary)
- UI Improvments: Nodes page
- project config import: needs to reset project.name
- UI improvements: Commands page
- Authentication Documentation Update
- JS Error: Object doesn't support property or method 'updateError' under IE11
- Add export/import of project config and ACL policy files in project archives
- APIs for ACL policy, project-specific policies, ACLs stored in DB
- Disable schedule and disable job execution: GUI and functionality
- Documentation: MySQL connector download not usually necessary
- 2.5.2-1 Project Description isn't removed properly when using "Simple Configuration"
- Need canonical XML serialization for jobs
- Enhance cluster mode schedule takeover API
- Enable multiple config locations
- update to docs for #1333
- Enhance takeover schedule API: all jobs, or by project
- Active/passive execution mode
- Promote example orchestrator plugins to bundled plugins
- add JSON support to API
- add a job option to disable the automatic selection of all nodes
- documentation: update command for creating encrypted/hashed passwords for jetty
- use JSON throughout API
- Api endpoint like /incubator/jobs/takeoverSchedule but for all jobs
- Disabling scheduling without loosing scheduling configuration
- Add job option to have nodes default to un-checked
Date: 2015-08-12
Name: "cafe au lait slateblue book"
- Bug fixes
- Greg Schueler (gschueler)
- ahonor
- ddzed15
- gschueler
- runnnt0
- tomkregenbild
- ${option.wimrmPassword} not passed between jobs in 2.5.2 version. ( was working in 2.5.1)
- Jaas login module using LDAPS can cause exception "Unconnected sockets not implemented"
- version 2.5.2 - Option 'sshKeyPassphrase' is required when running with job reference
- Documentation: Yum install instructions refer to wrong URL
- Node Filter documentation is incorrect
- Incorrect value for server url context variable
- Only required attribute for yaml should be nodename
- Fix #1328
- API: execution output in text format is encoded
- Disallow blank password
Date: 2015-07-07
Name: "cafe au lait sienna bell"
- Improved performance on Execution follow page with many nodes (1000+).
- Bug fixes
- Greg Schueler (gschueler)
- Noah Lorang (noahhl)
- andham
- blysik
- corecache
- ctgaff
- fanie-riekert
- gschueler
- jacekkow
- jeffearl
- mathieuchateau
- mgsococo
- noahhl
- richiereynolds
- stack72
- touzoku
- Enable the configuration of excluded cipher suites for SSL
- GUI: Plugins List in Configure page: plugin provider names should be shown
- GUI: Workflow editor: Step plugins list should be sorted
- GUI: workflow plugin text incorrect
- GUI: Execution File Storage Plugin: configuration listing is missing data
- Job Fails after 0s
- GUI: workflow strategy help text is not readable
- 2.5.1.1 - hoovering on tooltip, no way to make it disappear
- Documentation: Storage API for creating Password doesn't mention MIME type to use
- Archive Import: can fail for some execution data with missing reports
- orchestrator config not shown for executions
- #2.5.1 #debianpkg rd-acl is missing executable flag
- Rundeck 2.5.1 doesn't capture/display last line of output if it is not terminated by a newline
- Archive Export should not use default JVM character encoding: can cause error on re-import
- Archive Export: empty project (0 jobs, 0 activity), causes exception
- Archive import: Invalid XML in execution/report.xml file causes import to halt with error
- Key Storage DB backend with empty DB shows warning message
- support secure auth password job option for script-based node executors
- Error importing archive: executions for deleted jobs which use job references cause error at Report import stage
- error: import archive with executions and orchestrator
- email address validation on job import should not restrict domain TLDs
- Fix next execution time on non-scheduled cluster member
- signed debian file build fix
- Add launcher to sonatype maven repo deploy
- Options passed in "Job Reference" step are not being replaced by empty strings
- File extension specified not used in URL script file execution
- Service Unavailable on startup 2.5.1-1.7GA installed from rpm
- Notification validation: require value for email/webhook
- "On start" webhook notification selection persisted incorrectly
- quartz.properties no longer exists
- Blank options passed to sub jobs as literal strings, RD 2.2.3
- large rundeck jobs unusable in current UI
Date: 2015-05-15
Name: "cafe au lait seagreen sunglasses"
This release has primarily bugfixes.
- CLI tools can authenticate to the server using environment variables instead of the credentials stored in the framework.properties file.
Note: We've attempted to maintain compatibility with previous plugins, but due to changes in the core library, Rundeck may have issues loading or running some plugins.
Please report issues found to Github issues.
See the Upgrading Guide
- Greg Schueler (gschueler)
- Zophar78
- andham
- arthurlogilab
- ctgaff
- danifr
- dspinellis
- gschueler
- harlanbarnes
- hbakkum
- jasonaughton
- michlaustn
- mikeleigh
- rveznaver
- schast
- snebel29
- tiahino
- wcooley
- Job with a negative threadcount causes exception when using Orchestrator
- Failed job runs not shown in 'failed' tab
- Information missing from aclpolicy docs
- Saved Node Filters shown in all projects, will show node results from other projects
- Job copy: Data Binding Failed
- Archive import fails if db still has varchar(7) in actionType column
- running rd-project without -p argument causes NPE
- Change to "If a step fails" selection for workflow isn't persisted
- Email Reporting Error On Success
- edit job step when plugin cannot be loaded causes javascript error
- rd-acl create -i doesn't correctly parse node tags in resource section
- rd-acl test with -t tags doesn't work properly
- Rundeck start fails in Tomcat 7 on Win2012
- Error requesting json on API
- Updating job with orchestrator fails
- Incomplete view in Node list
- Limiting execution output through API with lastlines seems to be off by 2
- Rundeck rpm package should conditionally restart the service on upgrade
- No signature of method: rundeck.services.ProjectService.exportProjectToFileAsync() when trying to export project archive with the DB storage type
- Key Storage - DB Backend Exception - Could not obtain current Hibernate Session
- Unable to save changes to jobs using Local Command node step
- 2.5 debian package should require java 7
- Bulk Delete Execution Failing
- JettyCombinedLdapLoginModule -> case sensitve
- Email Notifications Broken - ERROR NotificationService
- Jobs don't complete: Data truncation: Data too long for column 'action_type' at row 1
- rundeck.gui.login.welcomeHtml option is not rendering HTML
- org.h2.jdbc.JdbcSQLException: Feature not supported: "isWrapperFor"
- documentation: workflow node step plugin java interface shown is wrong
- Documentation: Missing execution data attributes on notification plugin page
- Re-write command line tools to support auth w/o properties file.
Date: 2015-04-15
Name: "cafe au lait saddlebrown grain"
This release has many new features and bugfixes, and contains some refactoring under the hood.
- Upgraded grails framework, which adds support for Java 8 (and removes Java 6)
- Can now store Project definition and configuration in the database (optional), see Project Definitions and information in the Upgrade Guide.
- Improved GUI for administering a project: modify Project configuration file contents, and readme.md/motd.md contents. Project archiving is also now performed asynchronously.
- New Jasypt encryption plugin can be used for Key Storage and Project Configuration, see Jasypt Encryption Converter Plugin
- Support Key Storage password for SSH sudo and SSH private key passphrase
- New workflow step plugin: Assert state of another Job, optionally halt workflow with custom status string
- New
rd-acl
commandline tool can list test and generate .aclpolicy file contents, see rd-acl - New Orchestrator plugin point. Orchestrators can be used to batch and sequence the matched nodes used in node dispatching, e.g.: only allow a certain % to run simultaneously.
- Added hybrid LDAP + properties file group authentication for JAAS (
JettyCombinedLdapLoginModule
)
Note: We've attempted to maintain compatibility with previous plugins, but due to changes in the core library, Rundeck may have issues loading or running some plugins.
Please report issues found to Github issues.
See the Upgrading Guide
- Andreas Knifh
- Greg Schueler (gschueler)
- Mark Bidewell (mbidewell)
- Mayank Asthana (mayankasthana)
- Puru Tuladhar (tuladhar)
- Thomas Mueller (vinzent)
- Yagi (yagince)
- ashley-taylor
- new23d
- MartinMulder
- MartyNeal
- Zophar78
- adamhamner
- ahonor
- ashley-taylor
- brismuth
- danifr
- dbeckham
- ffk23
- gschueler
- hirsts
- hjdr4
- knifhen
- mayankasthana
- mbidewell
- mgherman
- mikagika
- new23d
- reigner-yrastorza
- travisgroth
- tuladhar
- vinzent
- yagince
- Project config page: plugin properties of wrong scope displayed
- Security: Script plugins: password rendering option plugin property files not properly obscured
- Display of active jobs maxes out at 20
- dispatch command does not work when project config stored in RDB
- Schedules don't launch
- Fix LDAP nested groups for Active Directory
- Documentation: Database docs link to 404 Not Found
- Fixed typo in command in docs and grammar
- Project definitions and configuration stored in DB
- Refactor authorization into components, add preauth attribute role
- Support ServerAliveInterval and ServerAliveCountMax
- Rundeck v2.4.0-1 rundeck not deleting dispatch files
- Dispatched inline script has race condition with crontab
- Storage provider/converter config info on Plugins page is wrong
- Add default storage encryption plugin
- JettyPamLoginModule: supplementalRoles split regex requires whitespace
- Using SSH stored password for sudo
- Jobs initiated from the crontab do not respect the timeout value given for that job
- Script plugin non-instance configuration fails
- Add "server uuid" element to the Execution info
- API doc: Getting Project Info response xml has bad formatting
- ${result.resultCode} is not available in the error handler for a Local Command Plugin step.
- job state conditional plugin
- Add workflow step plugin: Assert state of another Job, optionally halt workflow with custom status string
- GUI: 2.4.x: Custom property input fields for node-step plugins style issues
- Export archive does not work
- LDAP auth requests have no timeout
- upload jobs page: after uploading, Delete action from action menu should be available
- List Plugins admin page should show Resource Model Source providers
- Scheduled jobs without a default value for required options fail to run
- 'Algorithm negotiation fail' JSCH
- Upgrade grails to 2.4.4
- Launcher: fix "nohup: redirecting stderr to stdout" warning
- Inline scripts for jobs do not honor File Copy Settings
- Add text/plain MIME type for YAML files
- Support project-specific email template overrides
- Add support for Java 8
- aclpolicy validation/builder tool
- adding orchestrator
- The run shell tool can clobber plugin cache
- Allow hybrid LDAP + properties file group authentication
- add configurable timeout for remote option URLs
Date: 2015-01-30
Name: "americano limegreen bullhorn"
This release has bug fixes.
See the release notes for v2.4.0
- ETAI Opérations
- Greg Schueler (gschueler)
- Mark Bidewell (mbidewell)
- Farzy
- bdmorin
- gschueler
- jedblack
- mbidewell
- mezbiderli
- mgsococo
- mika
- richiereynolds
- russellballestrini
- smithtimamy
- Fix ssh-agent variable names in documentation
- Activity page/tabs: events for deleted jobs appear incorrectly, options for other jobs hidden
- Run again with multi-valued enforced option doesn't select values
- Enter <cr> does not work under the activity view for a project
- SSH plugin appends ^M to scripts, failing jobs to fail
- timeout in job; rundeck doesn't retry
- User domain login field has too restrictive regex
- 2.4.0: upload jobs page: after uploading, action menus for new jobs are empty
- 2.4.0: job upload form radio buttons in wrong location
- ERROR FrameworkProject - Cannot get nodes from [DirectoryResourceModelSource
- 2.4.0 script plugin support ignoring the output of the file copier provider script
- Script plugin no longer works after upgrading from 2.2.3 to 2.4.0
- As an end user, I would like specific error messages when job imports fail
- Add destfilename expansion which contains the destinitation filename
- Number of nodes wrong on "Run Again" in 2.2.1, even more wrong in 2.2.3!
- Cascaded Options Don't Display Value on "Run Again" in v2.2.3, was fine in 2.2.1
- /tmp/rundeck has wrong permissions (Debian package)
Date: 2014-12-16
Name: "americano indigo briefcase"
This release has bug fixes and new features, including some GUI improvements.
- Job references can override Node Filters. See updates to XML and YAML job definition formats as well.
- Job and Option descriptions can contain markdown and HTML. For Jobs, the first line is the short description, and following lines are interpreted as markdown.
- MSSQL compatibility
- Some GUI tweaks and changes
- A new Action menu is available next to the Job name in job listing and view pages. Actions include Edit, Duplicate, Delete, and download XML/YAML definitions.
- The Delete Job link in the Job Edit page has been removed
- The Job Edit link in job lists has been replaced with an Action menu
- Hovering on job name in job lists now triggers the detail popup after a slight delay. Previously it was triggered by hovering on the Edit link.
- Execution follow page layout has been rearranged
- Added extended Job descriptions (sanitized Markdown/html)
- Job Edit/Create page: you are now asked to confirm navigation away from the page if you have made changes to the Job
-
Parallel step execution
-
this can be enabled with
rundeck-config.properties
entry:feature.incubator.parallelWorkflowStrategy=true
-
-
ssh-agent forwarding for ssh connections
-
this can be enabled per node, project, or server framework.properties:
framework.local.ssh-agent=<true|false> framework.local.ttl-ssh-agent=<time in sec>
project.properties:
project.local.ssh-agent=<true|false> project.local.ttl-ssh-agent=<time in sec>
Node properties:
local-ssh-agent=<true|false> local-ttl-ssh-agent=<time in sec>
-
A bug in API v11 XML responses caused them to sometimes be incorrectly wrapped in a <result>
element, this has now been corrected. See the API Docs for information. The Rundeck API Java Client library has been updated to workaround this issue (for previous versions of Rundeck).
New versions of Rundeck will have a name based on the version number. The 2.x theme is Coffee, and 2.4.x is "americano". The point release defines a combination of color and icon we can display in the GUI for easier visual differentiation. 2.4.0 is "indigo briefcase".
Why yes, I'd like an americano, thank you.
- Alex Honor (ahonor)
- Greg Schueler (gschueler)
- Jason (jasonhensler)
- Jonathan Li (onejli)
- Mathieu Payeur Levallois (mathpl)
- Ruslan Lutsenko (lruslan)
- mezbiderli
- Whitepatrick
- adamhamner
- ahonor
- danifr
- davealbert
- foundatron
- gmichels
- gschueler
- jasonhensler
- jcmoraisjr
- katanafleet
- lruslan
- mathpl
- mezbiderli
- new23d
- onejli
- ujfjhz
- zarry
- Cancel editing resource model source doesn't work
- Job run form triggered from Jobs list page incorrectly shows next scheduled time as "never"
- Nodes yaml format: if attribute values are not strings, throws exception
- Rundeck under Tomcat7 dump a lot a of serialization Warning
- Project Config permission needs Project Create ACL
- ssh-agent forwarding limited to job execution
- Parameterize grails central
- Failure saving project config when empty password field value is used
- Job references can override Node filters
- Allow markup in job and option descriptions
- script-based file copier plugin fails to load project/framework configuration
- Add server uuid element to the /system/info endpoint
- Project config: plugins with same property names will render same values
- "Copy file" step moves file rather than copy
- Do not look further if nodefilter.dispatch is not set
- rundeck.gui.login.welcome no longer allows html tags like to make all or part of the welcome message bold.
- Fix API v11 xml wrapper responses
- Improve validation messages during job import
- APIv11 responses should not include element
- ux: clicking "Top" link when browsing jobs in a group takes you to the rundeck home page
- Add MSSQL Support
- job.serverUrl not available in reference job.
- HMAC request tokens expiring prematurely: "request did not include a valid token"
- Issues/927 parallel execution
- Delete execution link should not be shown while execution is running
- Editing two workflow steps is unsupported
- Rundeck using MSSQL datasource
- URL encode ${option.[name].value} in Cascading Remote Options
- Job editor: don't allow user to lose changes
- Cannot use UTF8 in rundeck
- Jobref calls should support overriding node filter params
Date: 2014-11-06
Fix more regressions in executing remote inline script steps.
See 2.3.0 release notes.
- Alex Honor (ahonor)
- Greg Schueler (gschueler)
- ahonor
- gschueler
- ko-christ
- mumblez
- dispatch -s scriptfile -- args fails
- Create email settings page in admin guide
- that ^M aka CRLF line terminators
- node attributes not expanded in inline scripts in 2.3.1
Date: 2014-10-31
Fix a regression in executing local inline script steps.
See 2.3.0 release notes.
- Greg Schueler (gschueler)
- ko-christ
- richiereynolds
Date: 2014-10-28
- Improved support for use of Windows, both as a Rundeck server
and a remote node.
- Fixed outstanding issues with CLI .bat scripts
- Support powershell scripts by allowing configuration of file extension to be used in workflow script steps. E.g use ".ps1" because powershell will not execute a script that doesn't end in .ps1.
- Other fixes for issues with script-based plugins and Windows paths.
- Added support for storing Passwords in the Key Storage facility.
The built-in SSH execution and SCP file copy both now support using stored passwords. Note: the Key Storage facility is not encrypted by default, see Key Storage. - Added a new GUI for uploading Passwords and public/private keys to the Key Storage facility
- Bug fixes
- Disable SSLv3 by default
- Greg Schueler (gschueler)
- JayKim (c-jason-kim)
- aparsons
- c-jason-kim
- csciarri
- dennis-benzinger-hybris
- desaim
- gschueler
- jdmulloy
- jefffiser
- jippi
- lmayorga1980
- pwhack
- stagrlee
- Disable SSL Undesired Versions
- add MaxPermSize to default JVM args
- script-based file-copier plugin: always pass a destination path
- windows launcher: first run causes a '${framework.var.dir}' directory to be created
- node exec script plugins: allow custom plugin config properties
- 2.2: windows: file storage shows incorrect paths
- windows script-plugins: first invocation might fail because extracted file stream is not closed
- Broken Status Command in Rundeck Launcher Init Script
- Execution of reference job (by Parent Job) not working in v2.2.3-1
- java.lang.NullPointerException thrown when starting a job
- Can't save script step with a long script
- parallel execution continues after a node failure even if keepgoing is false
- Can't delete jobs using ACL Policy in documentation
- SSH key upload via GUI
- Broken link: "Option model provider" link to guide when adding job option
- Allow custom file extension for script temp files
- Documentation: SSL on Debian/Ubuntu Installs
- Issue with run.bat file on windows hosted rundeck instance
- Add a MaxPermSize to recommended launcher commandline
- profile.bat needs RDECK_JVM
- unix format on windows for profile.bat
- Add support for password storage to SSH plugins
Date: 2014-09-24
Fix several issues found in 2.2.2:
- 2.2.2: Workflow editor drag/drop or step delete doesn't work
- Documentation: Sudo password option type incorrect: should specify Secure Remote Authentication option
- plugin development: plugin properties using rendering options should allow String values
Release notes from 2.2.2 follow:
This release fixes a number of bugs and addresses several potential security issues:
- Require a unique token for each form request from the GUI, which prevents replay and CSRF attacks
- Updated all pages to prevent unencoded data from being written to the response, preventing XSS style attacks.
- Prevent access to the /api URLs via the web GUI.
- Some plugins (Resource model, Node Executor and File Copier) now support using Password fields displayed in the Project config page. The field values once set are never revealed in clear text via the GUI.
Please see the Notes below for some configuration information related to these changes.
A big Thank You to one of our clients for sponsoring the work for these enhancements.
Security Notes:
The new form tokens used in all form requests by default will expire in 30 minutes. This means that if your session timeout is larger than 30 minutes and you attempt to e.g. run a job after your web page has been sitting open for longer than that, you will see an "Invalid token" error. If this becomes a problem for you you can either change the expiration time for these tokens, or switch to using non-expiring tokens. See Administration - Configuration File Reference - Security.
To add a Password field definition to your plugin, see Plugin Development - Description Properties. (Note that currently using property annotations is not supported for the three plugin types that can use Password properties.)
Upgrade notes:
See the Upgrading Guide.
- Andreas Knifh (knifhen)
- Daniel Serodio (dserodio)
- Greg Schueler (gschueler)
- adolfocorreia
- ahonor
- arjones85
- danpilch
- dennis-benzinger-hybris
- dserodio
- garyhodgson
- gschueler
- jerome83136
- knifhen
- majkinetor
- rfletcher
- schicky
- dynamic node filter string incorrectly includes name: prefix
- aclpolicy files are listed in random order in Configure page
- Improve "Authenticating Users" docs re. logging
- Security: allow plugins to specify password properties that are obscured in project config page
- Job Variable Length is too low
- Config toggle: Hide error page stacktrace
- Security: CSRF prevention
- Security: prevent XSS issues
- Cannot pass multiple values to multivalued option with enforced values
- Rundeck 2.1.1 scheduling bug
- Selectively Disable metrics servlets features
- Broken Link in Documentation
- Machine tag style attributes don't get replaced
- Scheduled job with retry never completes 2.2.1
- API docs state latest version is 11, but it is 12
- NPE: Cannot get property 'nodeSet' on null object since upgrade to 2.2.1-1
- Powershell and script-exec - extension problem
- Ldap nestedGroup examples
- "Retry failed nodes" does not seem to work, when using dynamic nodes filters
- UI job status incorrect
- Odd page when not allowing node info access
Date: 2014-09-19
This release fixes a number of bugs and addresses several potential security issues:
- Require a unique token for each form request from the GUI, which prevents replay and CSRF attacks
- Updated all pages to prevent unencoded data from being written to the response, preventing XSS style attacks.
- Prevent access to the /api URLs via the web GUI.
- Some plugins (Resource model, Node Executor and File Copier) now support using Password fields displayed in the Project config page. The field values once set are never revealed in clear text via the GUI.
Please see the Notes below for some configuration information related to these changes.
A big Thank You to one of our clients for sponsoring the work for these enhancements.
Security Notes:
The new form tokens used in all form requests by default will expire in 30 minutes. This means that if your session timeout is larger than 30 minutes and you attempt to e.g. run a job after your web page has been sitting open for longer than that, you will see an "Invalid token" error. If this becomes a problem for you you can either change the expiration time for these tokens, or switch to using non-expiring tokens. See Administration - Configuration File Reference - Security.
To add a Password field definition to your plugin, see Plugin Development - Description Properties. (Note that currently using property annotations is not supported for the three plugin types that can use Password properties.)
Upgrade notes:
See the Upgrading Guide.
- Andreas Knifh (knifhen)
- Daniel Serodio (dserodio)
- Greg Schueler (gschueler)
- adolfocorreia
- ahonor
- arjones85
- danpilch
- dennis-benzinger-hybris
- dserodio
- garyhodgson
- gschueler
- jerome83136
- knifhen
- majkinetor
- rfletcher
- schicky
- dynamic node filter string incorrectly includes name: prefix
- aclpolicy files are listed in random order in Configure page
- Improve "Authenticating Users" docs re. logging
- Security: allow plugins to specify password properties that are obscured in project config page
- Job Variable Length is too low
- Config toggle: Hide error page stacktrace
- Security: CSRF prevention
- Security: prevent XSS issues
- Cannot pass multiple values to multivalued option with enforced values
- Rundeck 2.1.1 scheduling bug
- Selectively Disable metrics servlets features
- Broken Link in Documentation
- Machine tag style attributes don't get replaced
- Scheduled job with retry never completes 2.2.1
- API docs state latest version is 11, but it is 12
- NPE: Cannot get property 'nodeSet' on null object since upgrade to 2.2.1-1
- Powershell and script-exec - extension problem
- Ldap nestedGroup examples
- "Retry failed nodes" does not seem to work, when using dynamic nodes filters
- UI job status incorrect
- Odd page when not allowing node info access
Date: 2014-07-30
Bugfix release.
Upgrade notes:
See the Upgrading Guide.
- Greg Schueler (gschueler)
- example node filters in help popover when clicked go to error page
- Job references listed in workflow definition are hard to read
- Job retry is not documented
- file-copy-destination-dir default value for windows nodes is invalid
- Rundeck war should include bundled plugins
- Run-again screen with multi-select list json provider options duplicates parameters
- Links to localhost in the activity tab
- stacktrace.log location should be configurable
- aclpolicy: syntax error in yaml file should indicate file name
- login page "welcome message" needs formatting
- Allow multiple default values for "Multi-valued" options
Date: 2014-07-11
New features:
- Job timeout: specify a maximum duration for a job. If the job execution exceeds this duration, it will be halted (as if killed manually). You can use a simple format like "120m" (120 minutes) or "2h" (2 hours). You can specify the timeout via a job option by setting it to
${option.name}
. This only affects the job when executed directly, not when run as a job reference. - Job retry: specify a maximum retry attempt for a job. If the job fails or is timed out, it will be retried. The maximum value can be specified via a job option if set to
${option.name}
. - Delete executions: delete executions individually or in bulk. Requires a 'delete_execution' action allowed via aclpolicy.
Some bug fixes are included, as well as some pull requests to enhance the LDAP login module:
- Support nested LDAP group membership (see Added support for nested groups in JettyCachingLdapLoginModule.)
- Support a "supplementalRoles" setting, which can help avoid the
!role
issue. See Login Module Configuration.
Upgrade notes:
Several domain fields were added. Mysql and H2 should upgrade in place without issue.
- jdmulloy
- Greg Schueler (gschueler)
- Alex Honor (ahonor)
- new23d
- Bart van der Schans (schans)
- Andreas Knifh (knifhen)
- Server listening port number defined in profile instead of service start script
- Install fails when /etc/rundeck is a symlink
- Multiple Recepient E-mail Notification
- Added support for nested groups in JettyCachingLdapLoginModule.
- Add Job retry behavior
- Job's references are reported as Killed
- Ace editor cursor position bug on mac retina display
- add a Job Timeout behavior
- Added support for the supplementalRoles option to the LDAP Module
- Ansi 256 color support doesn't work
- Delete executions
Date: 2014-06-27
Fix several bugs, including a temporary fix for issue #821: Job references reported as killed
Upgrade notes:
- If you are upgrading from 2.0.1 or earlier, see the notes about schema changes in the previous release notes: 2.0.2 Release Notes.
- See the Upgrading Guide
- Greg Schueler (gschueler)
- option order not preserved when using cascading remote options
- Multiple Recepient E-mail Notification
- Ace editor cursor position bug on mac retina display
- Ansi 256 color support doesn't work
Date: 2014-05-23
Bugfix release. Some enhancements:
- ANSI colorized output support
- Updated icons to distinguish command, script and script-file steps
Upgrade notes:
- If you are upgrading from 2.0.1 or earlier, see the notes about schema changes in the previous release notes: 2.0.2 Release Notes.
- See the Upgrading Guide
- Greg Schueler (gschueler)
- Create job with nodeset: breaks using tagsa+tagb
- node filter exclusion of tags doesn't seem to work
- Add separate icons for script and scriptfile steps #787
- Built in step icons should differ for command, script, url
- Ansi color output support
- Wrong elapsed time for jobs running more than 24 hours.
- Directory node source should merge tags for multiple nodes
- Expand variables in ssh-keypath from a node #780
- SSH key storage path fails for node executor
- SSH keypath for a node should allow embedded context variables
- Add loading indicator for nodes in nodes/commands page #759
- Add missing context to execution data
- Importing a job always sets the month to *
- crontab parsing broken on intial import
- step description not encoded in form field
- Node results table should not uppercase attribute headers
- NPE if node step throws exception
- Create and Run job button in job create form is redundant
- 2.1.1 Debug output causes NPE when executing script or scp file
- HipChat Plugin Error with Rundeck 2.1.1
- Documentation: API tokens access has wrong URL path
- Display better status message when project node source is loading
- Receiving 400 error after logging out and trying to log back in
- allow per-job custom email subject line for #755
- Allow per-job custom email notification subject line
- Windows/chrome UI: long node list and job args overflow the page
- plugin not found: plugin cache dir has wrong permissions
- Unable to use multiple LDAP servers
- SSL truststore path is misconfigured by default in OS packages
- Add rundeck server name and UUID context variables to option model provider url
Date: 2014-05-01
Bugfix release, with a small feature enhancement.
Upgrade notes:
- If you are upgrading from 2.0.1 or earlier, see the notes about schema changes in the previous release notes: 2.0.2 Release Notes.
- See the Upgrading Guide
- Greg Schueler (gschueler)
- Jason R. McNeil (jasonrm)
- Simple custom email notification templates
- notification plugins are not working
- YAML documentation is wrong about dayofmonth
- 2.1.0 - Create Project Browse Storage doesn't work
- scheduled job shows "never" when viewing running execution
Date: 2014-04-23
This release enhances the Rundeck API and provides a facility for storing Key files that can be used for SSH.
- Project management improvements:
- Project Delete action in the Configuration page
- Project create/config/delete APIs
- Key storage facility:
- Upload public or private keys via API
- store the key file data on disk or in the DB
- Use private keys for SSH
- Note: no encryption is performed by default, but you can use plugins to encrypt the data
Upgrade notes:
- If you are upgrading from 2.0.1 or earlier, see the notes about schema changes in the previous release notes: 2.0.2 Release Notes.
- See the Upgrading Guide
- Diomidis Spinellis (dspinellis)
- Greg Schueler (gschueler)
- add link about project.properties in project setup guide
- After update to 2.0.4-1.15.GA ssh login fails with "bad ownership or modes for directory"
- Key storage and management
- deb requires java 6
- Feature/project api
- Allow script based plugins (-plugin.zip) to have just .zip extension instead
- Allow user configuration of authentication methods available to built-in SSH provider
- Update API to better manage rundeck administration
- API to get a project configuration
- API for api-key administration (list,create,remove)
- API for project remove
- API for project create
- API for project export and import
Date: 2014-04-18
This is a bugfix release (see Issues.)
Important Upgrade Note: This bug Issue 661 is caused by the VARCHAR length being too small for a database column. Unfortunately grails won't automatically update the VARCHAR size when you upgrade.
-
If you are using a different database (mysql, etc.), you will have to update your schema manually.
-
If you are using H2, you can use this script to update your database:
- Shutdown rundeck
- Run rundeck-2.0.2-h2-upgrade.sh
- Start rundeck
- Greg Schueler (gschueler)
- Required option value icon shown even when value is set
- [2.0.3] Documentation: job 'create' access not shown in admin example ACL policy
- debian package should not include jetty6 libs
- Job Run again after changing nodes doesn't keep the same nodes
- Allow serving content with an SSL terminated proxy
- ressources.xml handling questions
- Default Node File Copier -> Script Execution -> Missing variable
- V2.0.2 : Job report's page is broken when Job's parameters are too Long
- Job fails with "No matched nodes" unless target nodes explicitly selected
- Some UI issues in V2.X but not critic
- "run -f" in follow mode provides incorrect return code to shell
- Rundeck 2.0.2 - Project Configuration error when cancelling
- Deep link to UI not honoured is user authenticates (2.0.x)
- Large execution output takes a long time to load
- Job option names are not modifiable in 1.6.1+
Date: 2014-03-24
This is a bugfix release (see Issues.)
Important Upgrade Note: This bug Issue 661 is caused by the VARCHAR length being too small for a database column. Unfortunately grails won't automatically update the VARCHAR size when you upgrade.
-
If you are using a different database (mysql, etc.), you will have to update your schema manually.
-
If you are using H2, you can use this script to update your database:
- Shutdown rundeck
- Run rundeck-2.0.2-h2-upgrade.sh
- Start rundeck
- David Petzel
- Greg Schueler (gschueler)
- Alex Honor (ahonor)
Date: 2014-03-13
This is a bugfix release.
Important Upgrade Note: This bug Issue 661 is caused by the VARCHAR length being too small for a database column. Unfortunately grails won't automatically update the VARCHAR size when you upgrade.
-
If you are using a different database (mysql, etc.), you will have to update your schema manually.
-
If you are using H2, you can use this script to update your database:
- Shutdown rundeck
- Run rundeck-2.0.2-h2-upgrade.sh
- Start rundeck
- David Wittman
- Greg Schueler
- Alex Honor
- Grammar fix in Job editor view
- Import of an Exported Rundeck Project Results in "No such property: year for class: java.lang.String"
- Plugin development guide broken into per plugin pages
- Custom Attributes unusable in dynamic filters
- Required options are not visible when the job page is refreshed
- [2.0.1] Option field is split when use Run Again... button
- Rundeck 2.0.1 - cron settings reset in ui
- Rundeck 2.0.1 - Improve look of unauthorized access pages
- Activity page: can show activity for wrong project
- Project import: failure if execution workflow has nodeStep jobref
- Rundeck 2.0.1 - Can not hide 'Command' / adhoc section
- Update upstart init script to allow service stop command
- Rundeck can't be stopped/restarted on Ubuntu
- Show all tags button doesn't work correctly on Job run page
- rundeck 2.0.1 - change target nodes - sql error when run is activated
- Rundeck 2.0.1 - remove UUID doesn't work when uploading job definition
- Rundeck 2.0.1 - 2013 copyright in footer
- Export archive failed with NullPointerException in Rundeck 2.0.0
Date: 2014-02-11
This is a bugfix release.
Contributors:
- Alex Honor
- Diomidis Spinellis
- Greg Schueler
- Mark LaPerriere
Issues:
- Option values select boxes only fill the first option
- Update doc screenshots and improve organization
dispatch
command uses old node filter syntaxdispatch
command node filtering broken- 2.0: Copy file doesn't rename the file
- Rundeck 2.0 - Job fails if workflow execute another job 'for each node'
- Rundeck 2.0 - "Unable to create URL for mapping" on home page when rundeck.gui.startpage=jobs
- Configure Project should highlight the "Configure" tab (not Nodes)
- Rundeck 2.0 - Can not send email notifications
- Fix typo
- Rundeck 2.0.0: Job Add or Edit > Node Filter > Set Filter button broken
- Ensure rundeck/.ssh directory is created
- Run ssh-keygen after home directory is installed
- Rundeck RPM pre-install script fails to create home directory
- Running make outside bash fails to pickup the package version
- API Run Script Documentation Misleading
- Expanding inline script in definition view
Date: 2014-01-31
Rundeck 2.0.0 introduces a large number of major changes. We have revamped the entire UI and overhauled the underpinnings. Our goals were to improve the user experience and cut down some of the technical debt which had accrued.
Note that the documentation is still being updated. We will update it as it improves at http://rundeck.org/2.0.0
Before you upgrade to Rundeck 2.0, please be sure to read the Upgrading Guide located in the documentation.
Many thanks to everyone who was able to contribute ideas, feedback, code, time or money in helping us to improve Rundeck.
- New feature: live execution state view
- Live view of job executions to see what step is running on which node.
- Instantly drill in to view the output for the step and node that failed
- View node metrics and collated output.
- Please give a big thank-you to (an anonymous) "sponsored development client" for funding the work for this feature!
- New Projects home page displays readme and message of the day files that can be customized with markdown to display notices to users
- Improved Node filter
- Now supports all custom node attributes
- New filter expression syntax, simple examples:
tags: a+b
filters by tagsenvironment: (prod|qa)
Regular expression filter on an attribute calledenvironment
- New simpler UI
- Improved Nodes page to better navigate the data about the nodes in your infrastructure
- Navigate nodes through attribute links
- Run a job or execute a command from filter sets
- New Commands page dedicated to ad hoc command execution.
- Controls over thread count and error handling
- Reference saved defined filters or express your own.
- Step descriptions for workflow steps. Give your step a brief description, which will be displayed during execution.
- Improved Activity views with tabbed views for common queries
- Tabs for Now running, recent, errors and executions by you.
- Box score metrics for executions. Use Rundeck as an information radiator.
- Percent completed and Success/Failure metrics displayed for each execution
- New coat of paint: new logo, new GUI style using Bootstrap 3 and Flatly theme
- Caching and error catching for resource model source plugins
- Execution model API and json representation stored with log output
- Optimized internals to reduce service loading time
- Cruft removal (legacy formats and syntaxes), upgraded frameworks
- Copy file step plugin copies files from rundeck server to remote nodes.
- API
- Better REST-ful behavior
- removed use of 302 redirects between requests and some responses
- JDK7 support
The Rundeck organization on github is the new location for the Rundeck application source code as well as other associated projects:
- Rundeck source
- Rundeck api-java-client library
- New version 9.3 recently released.
Additionally, the Rundeck-plugin for Jenkins is now maintained by the core Rundeck project maintainers.
- Rundeck-plugin for Jenkins
- New version 3.0 recently released
(Special thanks to Vincent Behar who originally created both the rundeck-api-java-client and rundeck-plugin projects.)
Please let us know about any issues you find, or just if you like the new look:
- Github Issues: https://github.com/dtolabs/rundeck/issues
- Mailing list: [email protected]
- IRC: #rundeck on freenode.net (webchat link)
- Twitter: @rundeck
- Alex Honor
- Greg Schueler
- Damon Edwards
- John Burbridge
- Moto Ohno
- Kim Ho
- Matt Wise at Nextdoor.com
- Etienne Grignon at Disney
- Srinivas Peri and Aya Ivtan at Adobe
- Mark Maun and Eddie Wizelman at Ticketmaster
- Vincent Behar
- As well as (anonymous) Sponsored Development Clients - thank you!
- Update docs for Upgrading to 2.0
- Multiple node sources should merge the attributes for a node
- Running Rundeck in Tomcat and integrating with Jenkins
- [2.0-beta1] Execution log could not be found after renaming the job
- 2.0-beta1: LDAP authentication is broken for RPM install
- "Change the Target Nodes" option not work in Rundeck 2.0beta1
- NPE parsing YAML with empty tag
- named steps
- Emit execution status logs via Log4j
- SSH authentication in a workflow node step plugin
- update rundeck page URLs to include project context
- Rundeck should catch errors and cache node data from Resource Model Source providers
- MS IE / Rundeck Nodes Page: "Enter a shell command" caption not visible
- Refactor some execution finalization code for #511
- Node attributes with ":" character breaks XML serialization.
- Remove rpm java dependency
- rundeck does not output spaces/tabs properly
- edit job and duplicate to a new job buttons not-clickable in 2.0.0-1-alpha1
- Send Notification not saved
- Delete job
- Missing username causes failure with "Execution failed: X: null", even if project.ssh.user is set
- Default Option values are ignored when a jobs is referenced from another job..
- Remove dead/unused keys from framework.properties
- Remove auto-project creation from Setup
- The quick 'Run' page should allow for thread count adjustment as well as 'on failure' behavior changes.
- obsolete RDECK_HOME and rdeck.home
- 'group' and 'user' field should be wildcard-able in the aclpolicy files
- upgrade grails to 2.x
Date: 2013-09-19
Notable Changes:
- Bug fixes:
- Job references could not be edited after upgrading from 1.6.0 to 1.6.1
- using node rank attribute with the same value on two nodes would skip nodes
- error running jobs with no options defined
- LDAPS certificate validation fixes
- Secure option data should not be echoed in DEBUG logs
Many thanks to Kim Ho for his contributions for this release!
Contributors:
- Greg Schueler
- Kim Ho
Issues:
- LDAP SSL CN validation checks fail to validate wildcard SSL cert names
- No stacktraces in logs when plugins throw exceptions
- Improve execution page info when option variables are used in node filters
- Rundeck prints secure option data in DEBUG into execution logs
- Java notification plugin Configuration map does not contain all values
- Cannot edit job references if upgrading from 1.6.0 to 1.6.1
- Can't change current project if not authorized for last viewed project
- using node rank attribute when dispatching will skip nodes if rank values are the same
- Failed request: runJobInline . Result: Internal Server Error
- rundeck does not remove remote dispatch files
- ldaps authentication CN validation fails when using alias providerUrl
Date: 2013-08-24
Notable Changes:
- Bug fixes and updates to documentation to reflect changes in 1.6
- Added a unix PAM login module
- Added a feature to allow static definition of API auth tokens in a file
- Restored ability to use Job references as Node steps in a workflow (i.e. execute the job reference for each matched node in the parent job.)
- Fixed issue using the Jenkins rundeck-plugin when authenticating to Rundeck
Contributors:
- Alex Honor
- Greg Schueler
- Martin Strigl
Issues:
- Static authentication tokens defined in configuration file
- Jenkins rundeck-plugin fails to authenticate to rundeck
- * add the possibility to use ${session.user} for variable expansion in r...
- Add a unix PAM JAAS login module
- Restore node-step functionality for Job References
- API for now running executions over all projects
- Potential hanging job after execution completes
- Project archive import fails to copy log files
- Project import fails if execution has blank threadcount in xml
- Add a "Scaling Rundeck" chapter
- IE Javascript issue: can't enter option name
- GUI Java Script ReferenceError: ExecutionOptions is not defined
- Log API and Web requests
- feature request: add the variable ${job.user.name} to the Option model provider
- copy icon missing in 1.6
- Update docs with 1.6 screenshots and navigation changes
- Job scheduling issue with rundeck 1.5
- Working around Local Command automatic escaping
- Invalid option name can be defined in xml
- Add Option to strip UUID for imported jobs
- scp: ambiguous target - for Job with script referencing a node with a space
Date: 2013-08-02
Rundeck 1.6.0 introduces two major changes and a number of bug fixes and enhancements:
- Logging system plugins.
- New facility allows integration with other systems, like Logstash, and improves Rundeck's behavior in a clustered cloud environment by allowing you to have log files synched to a shared storage more easily.
- Refreshed GUI
- Did you know it hasn't really been changed since Rundeck 1.0?! We fixed some of the usability complaints about the old GUI, and our goal was to address usability without having to change functionality, but some of our future GUI enhancement ideas snuck in.
Notable issues:
- Allow scripts to be run as sudo - popular request!
- Use defaults for optional parameter values, and expand to blank value when missing - More intuitive and less annoying!
Many thanks for the helpful contributions from the community!
Contributors:
- Alex Honor
- Greg Schueler
- Jonathan Li
- Kim Ho
- UnsignedLong
Issues:
- Email subject line for aborted job says "KILLING" should say "KILLED"
- onstart email notification doesn't get saved
- Optional project element for job definitions
- Unprivileged users can access execution api actions
- Improve IE8/9 support
- Rename Admin link to Configure
- Re-running an adhoc command should return to Nodes/Command page
- Save job by default
- Cascading option does not display useful text if no choices available
- RSS feed content for job execution contains inline script
- Job "Created by" information is not accurate
- Cascading options can fail to load remote options, if an option has only a single allowed value
- RSS title should include options & date/time
- RSS feed for jobs does not reflect history view
- Import Job definition: existing UUID will move a job to the current project
- Potential division by zero in email notification
- Remove /api/1/reports/create endpoint
- Remove --noqueue flag from dispatch tool
- LDAP login module does not perform CN validation on certificate when ldaps is specified
- GUI updates for Rundeck 1.6
- project archive/import should allow preserving job UUIDs
- Cluster mode servers should not kill currently running jobs on other server UUIDs
- No Project Access: should display user groups
- aclpolicy example doesn't include application scope in example
- RSS feed should default to not be enabled
- Update Notification plugins: support other property scopes
- Timeout trying to lock table: remove h2 pessimistic locks
- Remove Project dropdown in Job form
- Project archive with incomplete execution causes error on import
- Job execution context should include the server URL, execution URL, and server UUID
- Feature/log storage - adds plugin system for streaming logs and storing log files
- Some log lines are truncated in GUI
- rpm install: new project doesn't automatically create resources.xml (regression)
- Remove cruft libs
- Jar plugins: add ability to resolve classes from embedded libs first
- asUser feature stops working after scheduling a job
- "num parameter is required" error when adding a workflow step to a job
- Feature/log storage - adds plugin system for streaming logs and storing log files
- example ssh-script plugin: disable hostkey verification
- update footers with simplifyops links
- Missing osFamily attribute in Node definition causes command to fail
- Use defaults for optional parameter values, and expand to blank value when missing
- Rundeck execution follow UI splits single steps into multiple sections
- Allow scripts to be run as sudo
- changing project via dropdown does not update job pane.
Date: 2013-05-30
Notable Changes:
- bug fixes
- plugins can define input properties that get displayed as textareas in the gui
Incubator changes:
- cluster mode, which allows scheduled (cron) jobs to only run on a single node when multiple Rundeck servers share a single DB. (Note: "incubator" features are experimental and likely to change)
Contributors:
- Alex Honor
- Greg Schueler
- Kim Ho
Issues:
- Unable to create scheduled jobs if user has too many authorization roles
- Add customizable text in the login box.
- Authentication Page in manual lists wrong port for LDAPS
- deb packaging: rd-queue script has wrong perms
- JarPluginProviderLoader NPE if the pluginJar cache dir is not readable or does not exist
- deb/rpm packaging, cli tools use wrong rdeck.base value
- Secure option default values are not used by scheduled jobs
- Feature/cluster mode unique server for job schedules
- JSch authentication retries until server maxes out allowed attempts
- Add support for textarea rendering option for String property type
- deb/rpm packaging rundeck-config doesn't set grails.serverURL
Date: 2013-05-06
Note: the 1.5.2 release fixes a packaging issue with rpm/debian installations. 1.5.1 release notes follow.
Notable Changes:
- Bug fixes
- Job Notification Plugins
- Jobs can now trigger notification plugins in addition to the built-in email and webhook
- plugins can be developed in Java or with a new Groovy DSL
- See the Notification Plugin Development Chapter.
- Example code at dtolabs/rundeck/examples
- Notification 'onstart' trigger
- Jobs can now cause a notification trigger when started via the 'onstart' trigger
- Notifications can now use the email address of the user who executed a job, as
${job.user.email}
. (You can set an email for your account in the Profile page.)
Contributors:
- Alex Honor
- Charles Duffy
- Greg Schueler
- John Burbridge
- Jonathan Li
- Kim Ho
Issues:
- Add static ordering to job options instead of always sorted by name
- Add job notification plugins
- Big number as option default causes exception on load job from xml
- Job XML parse fails if "false" value in an command step
- Local error handling command lost on export / import
- error handler has exception when attempting to handle No Matched Nodes failure for a job reference
- Multi-value options not pre-populated when doing a "run again"
- API: add "asUser" feature for running/killing jobs and executions
- init script doesn't work on CentOS (one-line fix provided)
- job group changes before authorization check in 1.5
- Many ACL policy files can slow down the Project drop down menu
- Unable to generate an api-token on rundeck 1.5
- Cannot send notification email using 1.5
- Long description for Option causes Job import failure in 1.5 for jobs exported from 1.4
- 1.5: GUI regression: Success rate % in job popup always shows 0%
- 1.5: GUI regression: Job execution follow page: progress meter stuck
- Invalid XML char in log output breaks CLI output follow mode.
- 1.5: html and ajax errors about "Timeout trying to lock table"
- sudo responder hangs
- CLIUtils.generateArgline does not quote IFS characters other than space
- documentation: upgrade guide "admin" aclpolicy doesn't allow all permissions
- Add Job Notification/webhook on job start
- projects folder under version control - .svn folder treated as project
- incorrect aclpolicy yaml structure can cause NPE
- Options are not passed correctly to programs
- Allow Email Address substitution in notification recipients list
Date: 2013-04-30
Notable Changes:
- Bug fixes
- Job Notification Plugins
- Jobs can now trigger notification plugins in addition to the built-in email and webhook
- plugins can be developed in Java or with a new Groovy DSL
- See the Notification Plugin Development Chapter.
- Example code at dtolabs/rundeck/examples
- Notification 'onstart' trigger
- Jobs can now cause a notification trigger when started via the 'onstart' trigger
- Notifications can now use the email address of the user who executed a job, as
${job.user.email}
. (You can set an email for your account in the Profile page.)
Contributors:
- Alex Honor
- Charles Duffy
- Greg Schueler
- John Burbridge
- Jonathan Li
- Kim Ho
Issues:
- Add static ordering to job options instead of always sorted by name
- Add job notification plugins
- Big number as option default causes exception on load job from xml
- Job XML parse fails if "false" value in an command step
- Local error handling command lost on export / import
- error handler has exception when attempting to handle No Matched Nodes failure for a job reference
- Multi-value options not pre-populated when doing a "run again"
- API: add "asUser" feature for running/killing jobs and executions
- init script doesn't work on CentOS (one-line fix provided)
- job group changes before authorization check in 1.5
- Many ACL policy files can slow down the Project drop down menu
- Unable to generate an api-token on rundeck 1.5
- Cannot send notification email using 1.5
- Long description for Option causes Job import failure in 1.5 for jobs exported from 1.4
- 1.5: GUI regression: Success rate % in job popup always shows 0%
- 1.5: GUI regression: Job execution follow page: progress meter stuck
- Invalid XML char in log output breaks CLI output follow mode.
- 1.5: html and ajax errors about "Timeout trying to lock table"
- sudo responder hangs
- CLIUtils.generateArgline does not quote IFS characters other than space
- documentation: upgrade guide "admin" aclpolicy doesn't allow all permissions
- Add Job Notification/webhook on job start
- projects folder under version control - .svn folder treated as project
- incorrect aclpolicy yaml structure can cause NPE
- Options are not passed correctly to programs
- Allow Email Address substitution in notification recipients list
Date: 2/21/2013
This release introduces a few new features and some bug fixes. The new features required some schema changes to the database, so direct upgrading from 1.4 to 1.5 is not possible. Please read the Upgrading document for upgrade information.
There is now a new type of plugin, the Workflow Step Plugin, which should allow rundeck workflows to integrate with more systems in a more direct fashion. These plugins can be either "Workflow Steps" (run once per workflow) or "Node Steps" (run once per node in a workflow.)
Steps can now have Error Handlers which run if the step fails. They will be provided with context data about the reason the step failed.
Notable Changes:
- Step Plugins - Plugins can now be created and used for workflow or node steps.
- Error Handlers - Each step in a workflow can now have an error handler that
- will be run if the step fails. bug fix: Job references in a workflow will now
- only run once, and not operate as a node-step.
Plugin developers:
You will need to update your plugins to work in Rundeck 1.5. Refer to the Developer Guide for more information.
Issues:
- User profile page broken
- Update docs for 1.5 release
- Update sample scripts in plugin docs for best practices conformance
- allow optional build parameter to rundeckapp to specify use of a local copy of the grails zip
- expose loglevel for executions
- script based plugin caching issue
- rpm/deb rundeck-config needs to be udpated
- Node dispatch threadcount can be set to blank
- job import: threadcount does not get set
- Now running and History views don't use Job view filter
- History views default to recentFilter=1d, should be all events
- History project filter is not exact
- Allow group path in URL of jobs page to filter groups
- Node dispatch threadcount can be set to blank. export+import fails.
- Bulk delete of jobs via GUI
- add release notes to generated docs
- more compatible rpm dependency for java
- remove unneeded "rdbsupport" config property for 1.5
- API: Now running execution project filter is not exact
- execution output api: xml content problems
- don't combine spaces for scripts output
- Job reference picker has incorrect behavior when clicking a group name
- Error handler failure reason as context data
- Workflow step plugins
- Job folder/group display still buggy
- dispatch -s scriptfile is broken
- can't delete job option
- dispatch with url option don't work
- Job references should run only once within a workflow
- divide by zero error on system info page
- workflow step failure handlers
- make H2 the default rundeck database backend
- UUID permits spaces
Date: 1/10/2013
This release is a minor bugfix update, with some bonus features.
Notable Changes:
- bug fixes
- dispatch -s, some API project filtering was wrong, node dispatch threadcount can be set blank
- Bulk delete jobs via GUI
- Job page group filters now apply to Now Running and History areas
- History views don't use 1 day as a filter by default anymore
Issues:
- maint-1.4.5: dispatch -s scriptfile is broken
- maint-1.4.5: API: Now running execution project filter is not exact
- Bulk delete of jobs via GUI
- Node dispatch threadcount can be set to blank. export+import fails.
- Allow group path in URL of jobs page to filter groups
- History project filter is not exact
- History views default to recentFilter=1d, should be all events
- Now running and History views don't use Job view filter
Date: 10/26/2012
This release marks the end of the 1.4 development cycle, and includes bug fixes and a few new features.
We are planning to make some changes in the DB schema for the next release (1.5.x) that may not be backwards compatible so have included a feature to export a Rundeck project into an archive file. This will allow us to change the schema yet still allow users to migrate their projects.
Notable Changes:
- bug fixes (scheduled jobs, mail notifications, rd-jobs yaml output, jenkins plugin + parallel jobs)
- Project archive/import - download an archive of Jobs, Executions and History that can be imported into a different project
- Added a second level of sudo password support
- Add a 'purge' action to rd-jobs tool to delete jobs
- Better support for Tomcat war deployment
- View all nodes button in Run page
- Cascading option values from remote URLs
- CLI tools can follow execution output from the server (rd-queue, run, dispatch)
- API enhancements:
- query for executions and history reports
- retrieve execution output
Issues:
- remote options URL failure allows text field input even if option is restricted (bug)
- project archive/import (enhancement)
- multiple sudo authentication support (enhancement)
- Document syntax of arguments passed to the run command (enhancement, documentation)
- add purge option to rd-jobs tool (enhancement, cli)
- Add query API for executions (enhancement, api)
- CLI tools can't authenticate to a tomcat war deployment of rundeck (bug)
- Allow history API to query for list of job names (enhancement, api)
- javascript problem: Can't change nodes when trying to run a saved job (bug, ux)
- Rundeck jobs fail to execute sometimes (bug)
- Rundeck war should not contain servlet api libraries (enhancement)
- deb dependency requires GUI libraries (enhancement, packaging)
- Enable property expansion in framework level default ssh user (enhancement, configuration, ssh)
- Mail notifications are broken in 1.4.3 (bug)
- resource model source URL basic auth support is broken (bug)
- Update wiki/documentation for remote option provider (documentation)
- Parallel/Concurrent jobs fail (bug)
- cli tool rd-jobs format yaml does not generate any content in file for 1.4.3 (bug, cli)
- Scheduled RunDeck jobs no longer work with RunDeck 1.4.3 (bug, scheduler, jobs)
- Allow disabling of hover popups (enhancement)
- Add a button to view all nodes in nodes filter view (enhancement, ux, filters)
- need REST interface to retrieve execution ouput (enhancement, api)
- dispatcher needs option to queue job but also observe log (enhancement)
- Ability to change the default number of lines to display for the TAIL output in the rundeck job execution history (enhancement)
- feature for cascading select list from options provider (enhancement)
Date: 6/21/2012
Notable Changes:
- Security fix for issue #555 - vulnerability with ldap authentication
- Scripts can be executed from URLs
- Secure options now have two types (authentication or normal)
- Easily run a job with the same arguments as a previous execution
- Bugfixes
See the Upgrading Guide if you are upgrading from Rundeck 1.3.
Tickets:
- #538 - Can't change nodes when trying to run a saved job
- #555 - vulnerability with ldap authentication
- #554 - in-place upgrade using the launcher leaves old jars in place
- #563 - multipleExecutions Error
- #287 - Force the home directory to be /home/rundeck (or perhaps /var/lib/rundeck/)
- #517 - default ssh key for projects doesn't match rpm install's rundeck user ssh key
- #552 - allow sudo auth configuration at project/framework level
- #526 - adhoc execution page shows kill button when it is not authorized
- #572 - export more vars for script plugins (contents basedir, var dir, etc)
- #571 - ScriptResourceModel plugin can't use script-args and script-interpreter
- #551 - Secure option values cannot be used in scripts/commands
- #537 - Temp files not being removed from /tmp when using a script as a resource model source
- #523 - passwordless sudo shouldn't fail after the timeout value
- #518 - undocumented gui default startpage configuration
- #524 - Secure option values for sudo/ssh do not get passed to sub-jobs
- #230 - Allow URL values for scriptfiles
- #528 - authorization for api call to system/info is not checked
- #550 - warning message after upgrade to 1.4.2
- #558 - Prevent job names containing slashes (/)
- #553 - dispatch yields NullPointerException and fails
- #560 - Re-run a job with the same arguments
- #567 - Execution page: Collapse view checkbox is set incorrectly
- #570 - Add "execution id" to job-context data in running jobs
- #527 - NPE on node view if a node has no description defined
- #529 - default apitoken aclpolicy differs for rpm/deb and launcher install
- #545 - rundeck option cannot take integer value
- #519 - Dispatch to one node only shows "1 node ok" even if job fails
- #564 - upgrade commons-codec dependency
- #530 - add faq/documentation about mysql autoreconnect flag
- #544 - The CronExpression link in docs and Web GUI to http://www.quartz-scheduler.org returns 404
- #522 - documentation typo/truncation on plugin dev guide