Skip to content

voxpupuli/puppet-hyperglass

puppet-hyperglass

CI Puppet Forge Puppet Forge - downloads Puppet Forge - endorsement Puppet Forge - scores puppetmodule.info docs AGPL v3 License

Table of contents

Hyperglass Setup

Hyperglass is shipped as a python package. This Puppet module can install all the required services:

  • nginx
  • redis
  • npm
  • yarn

And hyperglass itself. It ships gunicorn as a webserver. nginx is used as a reverse proxy.

Examples

In case you want this module to manage all the required services, simply do:

include hyperglass::server

In your puppet code. If this is a box with multiple applications, you might want to manage the required services on your own. In this case you can do:

class { 'hyperglass::server':
  manage_depended_services => false,
}

hyperglass needs a list of devices to talk to. You can pass the hash from the docs to the $devices parameter. It will be converted to yaml and written to the config file.

The same applies for the generic hyperglass server configuration ($data attribute) and specific commands for the devices $commands attribute).

class { 'hyperglass::server':
  data     => {...},
  commands => {...},
  devices  => {...},
}

Please take a look at the official hyperglass documentation.

It explains the three different options very well. You can pass the hashes from the documentation 1:1 to the three parameters.

Tests

This module has several unit tests and linters configured. You can execute them by running:

bundle exec rake test

Detailed instructions are in the CONTRIBUTING.md file.

Contributions

Contribution is fairly easy:

  • Fork the module into your namespace
  • Create a new branch
  • Commit your bugfix or enhancement
  • Write a test for it (maybe start with the test first)
  • Create a pull request

Detailed instructions are in the CONTRIBUTING.md file.

License and author

This module was originally written by Tim Meusel. It's licensed with AGPL version 3.