ULHPC-openssl

Configure OpenSSL and manage X509 certificates (generation etc.)


Keywords
ssl, certificates, openssl, keys
License
GPL-3.0
Install
puppet module install ULHPC-openssl --version 1.1.2

Documentation

-- mode: markdown; mode: visual-line; --

Openssl Puppet Module

Puppet Forge License Supported Platforms Documentation Status

Configure OpenSSL and manage X509 certificates (generation etc.)

  Copyright (c) 2016 S. Varrette, H. Cartiaux, V. Plugaru, S. Diehl aka. UL HPC Management Team <Hyacinthe.Cartiaux@uni.lu>

| Project Page | Sources | Documentation | Issues |

Synopsis

Configure OpenSSL and manage X509 certificates (generation etc.).

This module implements the following elements:

  • Puppet classes:

    • openssl
    • openssl::ca
    • openssl::ca::common
    • openssl::ca::common::debian
    • openssl::ca::common::redhat
    • openssl::common
    • openssl::common::debian
    • openssl::common::redhat
    • openssl::params
  • Puppet definitions:

    • openssl::ca::init
    • openssl::ca::sign
    • openssl::x509::generate

All these components are configured through a set of variables you will find in manifests/params.pp.

Note: the various operations that can be conducted from this repository are piloted from a Rakefile and assumes you have a running Ruby installation. See docs/contributing.md for more details on the steps you shall follow to have this Rakefile working properly.

Dependencies

See metadata.json. In particular, this module depends on

Overview and Usage

Class openssl

This is the main class defined in this module. It accepts the following parameters:

  • $ensure: default to 'present', can be 'absent'

Use it as follows:

 include ' openssl'

See also tests/init.pp

Class openssl::ca

See tests/ca.pp

Definition openssl::ca::init

The definition openssl::ca::init provides ... This definition accepts the following parameters:

  • $ensure: default to 'present', can be 'absent'
  • $content: specify the contents of the directive as a string
  • $source: copy a file as the content of the directive.

Example:

    openssl::ca::init { 'toto':
	      ensure => 'present',
    }

See also tests/ca/init.pp

Definition openssl::ca::sign

The definition openssl::ca::sign provides ... This definition accepts the following parameters:

  • $ensure: default to 'present', can be 'absent'
  • $content: specify the contents of the directive as a string
  • $source: copy a file as the content of the directive.

Example:

    openssl::ca::sign { 'toto':
	      ensure => 'present',
    }

See also tests/ca/sign.pp

Definition openssl::x509::generate

The definition openssl::x509::generate provides ... This definition accepts the following parameters:

  • $ensure: default to 'present', can be 'absent'
  • $content: specify the contents of the directive as a string
  • $source: copy a file as the content of the directive.

Example:

    openssl::x509::generate { 'toto':
	      ensure => 'present',
    }

See also tests/x509/generate.pp

Librarian-Puppet / R10K Setup

You can of course configure the openssl module in your Puppetfile to make it available with Librarian puppet or r10k by adding the following entry:

 # Modules from the Puppet Forge
 mod "ULHPC/openssl"

or, if you prefer to work on the git version:

 mod "ULHPC/openssl", 
     :git => 'https://github.com/ULHPC/puppet-openssl',
     :ref => 'production' 

Issues / Feature request

You can submit bug / issues / feature request using the ULHPC/openssl Puppet Module Tracker.

Developments / Contributing to the code

If you want to contribute to the code, you shall be aware of the way this module is organized. These elements are detailed on docs/contributing.md.

You are more than welcome to contribute to its development by sending a pull request.

Puppet modules tests within a Vagrant box

The best way to test this module in a non-intrusive way is to rely on Vagrant. The Vagrantfile at the root of the repository pilot the provisioning various vagrant boxes available on Vagrant cloud you can use to test this module.

See docs/vagrant.md for more details.

Online Documentation

Read the Docs aka RTFD hosts documentation for the open source community and the ULHPC/openssl puppet module has its documentation (see the docs/ directly) hosted on readthedocs.

See docs/rtfd.md for more details.

Licence

This project and the sources proposed within this repository are released under the terms of the GPL-3.0 licence.

Licence