voxpupuli / puppet-rundeck

Module for managing the installatation and configuration of the rundeck orchestration tool
https://forge.puppet.com/puppet/rundeck
MIT License
39 stars 129 forks source link

435 - Update threadCount configuration key #436

Closed Jayfrown closed 4 years ago

Jayfrown commented 4 years ago

As described in rundeck/docs issue 44, and fixed in this commit, the threadCount configuration key changed from quartz.props.threadPool.threadCount to quartz.threadPool.threadCount

Pull Request (PR) description

Replaces the threadCount configuration key with the correct one (as indicated by a change in rundeck documentation)

This Pull Request (PR) fixes the following issues

Fixes #435

Jayfrown commented 4 years ago

TODO: reflect change in rspec tests

Jayfrown commented 4 years ago

It'd be great if we could get some feedback, or have this merged - we would prefer not having to fork and maintain this.

Jayfrown commented 4 years ago

See this comment on the related issue for a workaround.

dandunckelman commented 4 years ago

Thanks for doing this @Jayfrown

I just got bit by this.

EDIT

I set this up yesterday, and it worked as expected! 👍

tsde commented 4 years ago

Thank you for this @Jayfrown @dandunckelman Another workaround is to define quartz.threadPool.threadCount under rundeck::gui_config as it takes arbitrary key/value configuration. I did this through hiera and it works just fine. Of course, this leaves the obsolete quartz.props.threadPool.threadCount entry but there seems to be no conflict between the two.

@Jayfrown Maybe the main concern for this PR is the backward compatibility with Rundeck 2. It seems that quartz.props.threadPool.threadCount is the valid key with Rundeck 2 as stated here: https://docs.rundeck.com/2.11.14/administration/tuning-rundeck.html#quartz-job-threadcount

Jayfrown commented 4 years ago

Thanks for the feedback @dandunckelman @tsde. A little after opening this PR we spotted the possibility to specify a custom template location like so:

Class { 'rundeck':
  rdeck_config_template => 'profile/application/rundeck/rundeck-config.erb'
}

We simply copied the vendored rundeck-config.erb to modules/profile/templates/application/rundeck/rundeck-config.erb, making the necessary adjustments there.

Leaving the issue/PR open as I'm guessing upstream might want to provide different templates per rundeck version.