Skip to content

Manage the installation and configuration of the puppet_webhook gem

License

Notifications You must be signed in to change notification settings

voxpupuli/puppet-puppetwebhook

puppetwebhook

Puppet Forge Puppet Forge Puppet Forge Puppet Forge

Puppet module for installing and managing Vox Pupuli's puppet_webhook API Server.

Version 2 and newer of this module manage the new puppet_webhook project, which is a Ruby application, packaged as rpms/debs. Version 1 only supports the deprecated puppet_webhook gem

Table of Contents

  1. Description
  2. Setup - The basics of getting started with puppetwebhook
  3. Usage - Configuration options and additional functionality
  4. Limitations - OS compatibility, etc.
  5. Development - Guide for contributing to the module

Description

puppet-puppetwebhook will install the puppet_webhook Ruby project, configure it and start said service.

Setup

The Module manages the following:

Usage

This module provides one public class puppetwebhook.

include puppetwebhook

With all default parameter values, this installs, enables, and starts the puppet_webhook service. The package provider, user/group that owns the process and files, and the configuration options themselves.

Limitations

The rpm/deb packages expect that you provide a running redis instance.

You can install redis from different sources. One solution is our own puppet module voxpupuli/redis. After deploying this to your environment, simply do a include redis to deploy redis listening only on localhost. One exception is CentOS, where the shipped Redis version is too old. But you can enable the SCL repository:

class{ 'redis::globals':
  scl => 'rh-redis5',
}
include puppetwebhook
class{ 'redis':
  manage_repo => true,
  notify => Service['puppet-webhook'],
}

On Debian-like systems you need to install the puppetlabs/apt module.

On RedHat-like systems you need to enable epel. To do so you can use our voxpupuli/epel module, or something like

puppet resource package epel-release ensure=present

in the CLI or this in your profile:

package { 'epel-release':
  ensure => 'installed',
}

Development

Please see the CONTRIBUTING.md file for instructions regarding development environments and testing.

Authors