profile_guard

A module to guard named r_profile classes - for use in brownfield environments where rollouts must be controlled

Geoff Williams

geoffwilliams

8,180 downloads

8,180 latest version

4.1 quality score

Version information

  • 0.9.1 (latest)
released Feb 24th 2017

Start using this module

Documentation

geoffwilliams/profile_guard — version 0.9.1 Feb 24th 2017

Build Status

profile_guard

Table of Contents

  1. Description
  2. Usage - Configuration options and additional functionality
  3. Reference - An under-the-hood peek at what the module is doing and how
  4. Limitations - OS compatibility, etc.
  5. Development - Guide for contributing to the module

Description

Profile Guard wraps r_profile profiles with the trlinkin/noop module in order to placing all resources contained into noop mode.

Each profile_guard profile used will be in noop mode until deactivated, which is normally done by setting the appropriate value in Hiera.

Usage

See individual profile_guard classes for documentation. Classes are typically used by including them, for example:

include profile_guard::linux::ntp

Would activate r_profile::linux::ntp in noop mode. When ready for real deployment, ensuring the hiera lookup for: profile_guard::linux::ntp:noop_mode returns false would apply the profile in enforcing mode to apply changes:

profile_guard::linux::ntp:noop_mode: false

This pattern is used throughout the module

Reference

Reference documentation is generated directly from source code using puppet-strings. You may regenerate the documentation by running:

bundle exec puppet strings

Or you may view the current generated documentation.

The documentation is no substitute for reading and understanding the module source code, and all users should ensure they are familiar and comfortable with the operations this module performs before using it.

Limitations

  • Not supported by Puppet, Inc.
  • Depends entirely on the trlinkin/noop module for per-resource noop functionality

Development

PRs accepted :)

Testing

This module supports testing using PDQTest.

Test can be executed with:

bundle install
bundle exec pdqtest all