Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/garethr/web-puppet
A tiny ruby rack application which exposes the data from puppet as JSON over HTTP
https://github.com/garethr/web-puppet
Last synced: 2 months ago
JSON representation
A tiny ruby rack application which exposes the data from puppet as JSON over HTTP
- Host: GitHub
- URL: https://github.com/garethr/web-puppet
- Owner: garethr
- Created: 2011-10-29T21:14:23.000Z (about 13 years ago)
- Default Branch: master
- Last Pushed: 2013-04-01T21:29:40.000Z (almost 12 years ago)
- Last Synced: 2024-10-30T01:43:23.264Z (2 months ago)
- Language: Ruby
- Homepage:
- Size: 114 KB
- Stars: 22
- Watchers: 3
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README
Awesome Lists containing this project
README
A tiny ruby rack application which exposes the data from puppet as JSON over HTTP.
gem install web-puppet
Provides a simple command line tool which runs a built in web server. On accessing the specified port you should get a JSON response containing the current node information.
web-puppet --help
Usage: web-puppet [options] ...Configuration options:
--no-daemonize Don't daemonize the web server process
-p, --port PORT The port to run web-puppet on
-c, --config FILE The file to load with configuration options
-h, --help Display this screenpNote that in most setups the yaml directory containing the node information isn't readable
by all users, so you may need to run this as puppet or root.You can configure web-puppet using a configuration file, using the following format, and
specifying the filename with the --config option above.username=gilbert
password=george
port=3009
daemonize=true
filters="ec2_public_keys_0_openssh_key, ec2_userdata, sshdsakey, sshrsakey"Note that the port and daemonize options will override those on the command line. The username and password options enable HTTP basic authentication using details specified.
The filters option will remove sensitive items from the output, you can specify any keys you like and they'll be remove automatically.
If you're using puppet to manage your puppetmaster then the provided puppet module might be of use. Include in your puppet module diretory and modify as needed. You can use like so:
import "web-puppet"
class { "webpuppet": username => "username", password => "password" }