Skip to content

UnsignedLong/puppet-rundeck

 
 

Repository files navigation

Integrates Puppet with RunDeck.

Visiting the URL, for example localhost:8144, should return a list of all nodes on the Puppet master and populates the appropriate facts for use with RunDeck.

Note: Version 0.0.2 required stored configuration to be enabled. Later versions do not.

Requires:

  • Puppet (0.25.5 and later)

  • Builder (2.0.0 and later)

Install the gem:

$ sudo gem install puppet-rundeck

Run the puppet-rundeck binary. We’ve assumed you’re running puppet-rundeck on the Puppet master host.

$ puppet-rundeck

Then browse to appropriate URL, by default localhost:8144

$ curl localhost:8144

A list of the current hosts and appropriate facts to configure them on RunDeck will be returned in XML.

For example:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE project PUBLIC "-//DTO Labs Inc.//DTD Resources Document 1.0//EN" "project.dtd">
<project>
  <node name="pelin.lovedthanlost.net"
  type="Node"
  description="pelin.lovedthanlost.net"
  osArch="Linux"
  osFamily="Linux"
  osName="Fedora"
  osVersion="14"
  tags="production"
  username="root"
  hostname="pelin.lovedthanlost.net"/>
</project>

To use with RunDeck specify the target URL as the value of the project.resources.url option in the project.properties file for your project, for example:

project.resources.url = http://localhost:8144

Yo can also specify a required tag to filter the node list, to provide different project URLs based on the same puppet server and puppet-rundeck instance:

project.resources.url = http://localhost:8144/tag/production

You can specify some configuration options:

  • -c or –config to override the default Puppet configuration file (defaults to /etc/puppet/puppet.conf)

  • -u or –username the user for RunDeck to SSH as, defaults to current user

  • -p or –port the port to start puppet-rundeck on, default to 8144

Original concept heavily stolen from Adam Jacob’s chef-rundeck gem

Copyright © 2011 James Turnbull. See LICENSE for details.

About

Puppet integration with RunDeck

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • Ruby 98.2%
  • Puppet 1.8%