Adoptable Cookbooks List

Looking for a cookbook to adopt? You can now see a list of cookbooks available for adoption!
List of Adoptable Cookbooks

Supermarket Belongs to the Community

Supermarket belongs to the community. While Chef has the responsibility to keep it running and be stewards of its functionality, what it does and how it works is driven by the community. The chef/supermarket repository will continue to be where development of the Supermarket application takes place. Come be part of shaping the direction of Supermarket by opening issues and pull requests or by joining us on the Chef Mailing List.

Select Badges

Select Supported Platforms

Select Status


rundeck-server (18) Versions 1.3.3

Installs rundeck and configure as needed

cookbook 'rundeck-server', '= 1.3.3', :supermarket
cookbook 'rundeck-server', '= 1.3.3'
knife supermarket install rundeck-server
knife supermarket download rundeck-server
Quality 50%


Installs rundeck and configure as needed



  • Chef >= 12.1.0
  • Centos


  • yum
  • java
  • rundeck-bridge (Suggested but not required)
  • rundeck-node (Suggested but not required)


Name Description Default
* node['rundeck_server']['install_java'] Installs Java Defaults to true.
* node['rundeck_server']['packages'] A hash of package name and version to install Defaults to 2.5.3-1.10.GA.
* node['rundeck_server']['confdir'] Defaults to "/etc/rundeck".
* node['rundeck_server']['basedir'] Defaults to "/var/lib/rundeck".
* node['rundeck_server']['logdir'] Defaults to "/var/log/rundeck".
* node['rundeck_server']['datadir'] Defaults to "/var/rundeck".
* node['rundeck_server']['rolename'] Default security-role/role-name allowed to authenticate. Defaults to "user".
* node['rundeck_server']['session_timeout'] session timeout in the UI (in minutes). Defaults to "30".
* node['rundeck_server']['repo'] Repository containing the rundeck package. Defaults to "".
* node['rundeck_server']['plugins']['winrm']['url'] Plugin list to install. Type is { 'pluginname' => { 'url' => URL } }. Defaults to "".
* node['rundeck_server']['jvm'][''] Defaults to "RDpropertyfilelogin".
* node['rundeck_server']['jvm']['Drdeck.config'] Defaults to "node['rundeck_server']['confdir']".
* node['rundeck_server']['jvm']['Drundeck.server.configDir'] Defaults to "node['rundeck_server']['confdir']".
* node['rundeck_server']['jvm']['Drundeck.server.serverDir'] Defaults to "node['rundeck_server']['basedir']".
* node['rundeck_server']['jvm']['Drdeck.base'] Defaults to "node['rundeck_server']['basedir']".
* node['rundeck_server']['jvm'][''] Address/hostname to listen on. Defaults to "".
* node['rundeck_server']['jvm']['Dserver.http.port'] The HTTP port to use for the server. Defaults to "4440".
* node['rundeck_server']['jvm']['Dserver.https.port'] The HTTPS port to use or the server. Defaults to "4443".
* node['rundeck_server']['jvm'][''] Defaults to "::File.join('tmp', 'rundeck')".
* node['rundeck_server']['jvm']['Dserver.datastore.path'] Path to server datastore dir. Defaults to "::File.join(node['rundeck_server']['basedir'], 'data')".
* node['rundeck_server']['jvm'][''] Defaults to "::File.join(node['rundeck_server']['confdir'], 'jaas-loginmodule.conf')".
* node['rundeck_server']['jvm']['Drdeck.projects'] Defaults to "::File.join(node['rundeck_server']['datadir'], 'projects')".
* node['rundeck_server']['jvm']['Drdeck.runlogs'] Defaults to "::File.join(node['rundeck_server']['basedir'], 'logs')".
* node['rundeck_server']['jvm']['Drundeck.config.location'] Defaults to "::File.join(node['rundeck_server']['confdir'], '')".
* node['rundeck_server']['jvm']['XX:MaxPermSize'] Defaults to "256m".
* node['rundeck_server']['jvm']['Xmx1024m'] Defaults to "true".
* node['rundeck_server']['jvm']['Xms256m'] Defaults to "true".
* node['rundeck_server']['jvm']['server'] Defaults to "true".
* node['rundeck_server']['threadcount'] Quartz job threadCount. Defaults to "10".
* node['rundeck_server']['']['loglevel.default'] Defaults to "INFO".
* node['rundeck_server']['']['dataSource.url'] Default database URL Defaults to jdbc:h2:file:~/grailsh2.
* node['rundeck_server']['']['rdeck.base'] Defaults to "node['rundeck_server']['basedir']".
* node['rundeck_server']['']['rss.enabled'] Defaults to "false".
* node['rundeck_server']['']['grails.serverURL'] Defaults to "http://localhost:4440".
* node['rundeck_server']['rundeck-config.framework'][''] Defaults to "localhost".
* node['rundeck_server']['rundeck-config.framework']['framework.server.hostname'] Defaults to "localhost".
* node['rundeck_server']['rundeck-config.framework']['framework.server.port'] Defaults to "4440".
* node['rundeck_server']['rundeck-config.framework']['framework.server.url'] Defaults to "http://localhost:4440".
* node['rundeck_server']['rundeck-config.framework']['framework.server.username'] Defaults to "admin".
* node['rundeck_server']['rundeck-config.framework']['framework.server.password'] Defaults to "admin".
* node['rundeck_server']['rundeck-config.framework']['rdeck.base'] Defaults to "/var/lib/rundeck".
* node['rundeck_server']['rundeck-config.framework']['framework.projects.dir'] Defaults to "/var/rundeck/projects".
* node['rundeck_server']['rundeck-config.framework']['framework.etc.dir'] Defaults to "/etc/rundeck".
* node['rundeck_server']['rundeck-config.framework']['framework.var.dir'] Defaults to "/var/lib/rundeck/var".
* node['rundeck_server']['rundeck-config.framework']['framework.tmp.dir'] Defaults to "/var/lib/rundeck/var/tmp".
* node['rundeck_server']['rundeck-config.framework']['framework.logs.dir'] Defaults to "/var/lib/rundeck/logs".
* node['rundeck_server']['rundeck-config.framework']['framework.libext.dir'] Defaults to "/var/lib/rundeck/libext".
* node['rundeck_server']['rundeck-config.framework']['framework.ssh.keypath'] Defaults to "/var/lib/rundeck/.ssh/id_rsa".
* node['rundeck_server']['rundeck-config.framework']['framework.ssh.user'] Defaults to "rundeck".
* node['rundeck_server']['rundeck-config.framework']['framework.ssh.timeout'] Defaults to "0".
* node['rundeck_server']['']['admin'] Admin User Password, Roles Defaults to "admin,user,admin,architect,deploy,build".
* node['rundeck_server']['jaas'] The JAAS login configuration file with one entry and multiple modules may be generated from this attribute. Defaults to "[ ... ]".
* node['rundeck_server']['aclpolicy']['admin'] The admin ACL policy in YAML is generated from this attribute. Defaults to "[ ... ]".
* node['rundeck_server']['yum']['description'] Rundeck yum resource parameter Defaults to "Rundeck Official Repo"
* node['rundeck_server']['yum']['gpgcheck'] Rundeck yum resource parameter Defaults to true
* node['rundeck_server']['yum']['enabled'] Rundeck yum resource parameter Defaults to true
* node['rundeck_server']['yum']['baseurl'] Rundeck yum resource parameter Defaults to ""
* node['rundeck_server']['yum']['gpgkey'] Rundeck yum resource parameter Defaults to ""
* node['rundeck_server']['yum']['action'] Rundeck yum resource parameter Defaults to :create
* node['rundeck_server']['cli']['config'] Parameters to configure Rundeck CLI for Rundeck 2.7.x . See documentation Defaults to { RD_URL: 'http://localhost:4440' }
* node['rundeck_server']['cli']['version'] Allows to dictate version of Rundeck CLI to install Defaults to 1.0.4-1



This recipe call config recipe and setup rundeck-server service
It also install rundeck gem to allow to configure rundeck via ruby



Manage rundeck jobs through rundeck api


  • create: Create and update rundeck job Default action.
  • delete: Delete the job

Attribute Parameters

  • name: Name of the job, will be used to identify the job when interacting with rundeck.
  • project: Project in which the job will be defined
  • config: Job configuration, it is a hash version of yaml output from rundeck api Defaults to <code>{}</code>.
  • endpoint: Defaults to <code>"https://localhost"</code>.
  • api_token: Token used to interact with the api. See rundeck documentation to generate a token.


rundeck_server_job 'uname_job' do
  project 'linux_servers'
    description: 'A simple job running uname on all servers',
    sequence: {
      keepgoing: false,
      strategy: 'node-first',
      commands: [
        { exec: 'uname -a', description: 'Display uname command output' }
    nodefilters: { dispatch: { threadcount: 10 } },
    filter: '.*'


project provider configures a rundeck project


  • create: Create a rundeck project. Default action.
  • delete: Delete a rundeck project.

Attribute Parameters

  • name: Name of the project
  • executor: Executor name + configuration. Could be a plain string (ssh) or complex hash configuration. Defaults to <code>:ssh</code>.
  • sources: List of node sources
  • cookbook: Defaults to <code>"rundeck-server"</code>.


 # winrm example
 rundeck_server_project 'windows_servers' do
     provider: 'overthere-winrm',
     config: {
      'winrm-auth-type'      => 'certificate',
      'winrm-protocol'       => 'https',
      'winrm-cert-trust'     => 'all',
      'winrm-hostname-trust' => 'all',
      'winrm-cert'           =>  [PKCS#12 key for Java]
    'type'            => 'url',
    'config.url'      => "http://url,
    'config.timeout'  => 30,
    'config.cache'    => true,

 # ssh example
 rundeck_server_project 'linux_servers' do
   executor 'ssh'
    'type'            => 'url',
    'config.url'      => "http://chef-bridge/linux,
    'config.timeout'  => 30,
    'config.cache'    => true,

Mysql conf example

If you need to connect rundeck to a mysql example, you simply have to put:

  • default['rundeck_server']['']['dataSource.url'] = 'jdbc:mysql://localhost/rundeckdb?autoReconnect=true'
  • default['rundeck_server']['']['dataSource.username'] = 'rundeck'
  • default['rundeck_server']['']['dataSource.password'] = 'secret'

See rundeck doc for more information.

License and Maintainer

Maintainer:: Robert Veznaver (

License:: Apache License 2.0


* Bump the Rundeck CLI versioning to 1.0.5-1. 1.0.4-1 had a bug in it which
  would not allow file-based configuration


* Update to allow installation of Rundeck 2.7.x
* Add CLI installation recipe
* Fix a lot of rubocop warnings/cautions
* Update documentation


1.1.2 (2015-12-10)

* Manage Log4J properties file
* Enforce a specific version of Rundeck packages

1.1.1 (2015-10-01)

* Support non encoded job definitions

1.1.0 (2015-05-12)

* Change job provider to go through YAML

1.0.1 (2015-03-16)

* Fix travis deploy encrypted client.pem

1.0.0 (2015-03-10)

* First release

Foodcritic Metric

1.3.3 failed this metric

FC052: Metadata uses the deprecated "suggests" keyword: rundeck-server/metadata.rb:13
FC052: Metadata uses the deprecated "suggests" keyword: rundeck-server/metadata.rb:14
FC066: Ensure chef_version is set in metadata: rundeck-server/metadata.rb:1
FC069: Ensure standardized license defined in metadata: rundeck-server/metadata.rb:1
Run with Foodcritic Version 11.1.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any

License Metric

1.3.3 failed this metric

rundeck-server does not have a valid open source license.
Acceptable licenses include Apache-2.0, apachev2, Apache 2.0, MIT, mit, GPL-2.0, gplv2, GNU Public License 2.0, GPL-3.0, gplv3, GNU Public License 3.0.

No Binaries Metric

1.3.3 passed this metric

Version Tag Metric

1.3.3 passed this metric