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.1.0

Installs rundeck and configure as needed

cookbook 'rundeck-server', '= 1.1.0', :supermarket
cookbook 'rundeck-server', '= 1.1.0'
knife supermarket install rundeck-server
knife supermarket download rundeck-server
Quality 100%


Installs rundeck and configure as needed



  • Centos


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


Name Description Default
* node['rundeck_server']['confdir'] Defaults to "/etc/rundeck".
* node['rundeck_server']['basedir'] Defaults to "/var/lib/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']['']['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']['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 "[ ... ]".



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

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.1.0 passed this metric