Forge Home

cloudpassage

Module that will manage the CloudPassage Halo Agent

35,167 downloads

32,615 latest version

4.3 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Support the Puppet Community by contributing to this module

You are welcome to contribute to this module by suggesting new features, currency updates, or fixes. Every contribution is valuable to help ensure that the module remains compatible with the latest Puppet versions and continues to meet community needs. Complete the following steps:

  1. Review the module’s contribution guidelines and any licenses. Ensure that your planned contribution aligns with the author’s standards and any legal requirements.
  2. Fork the repository on GitHub, make changes on a branch of your fork, and submit a pull request. The pull request must clearly document your proposed change.

For questions about updating the module, contact the module’s author.

Version information

  • 1.0.5 (latest)
  • 1.0.3
  • 1.0.2
  • 1.0.1
  • 1.0.0 (deleted)
released Dec 6th 2017
This version is compatible with:
  • Puppet Enterprise 2017.2.x, 2017.1.x, 2016.4.x
  • Puppet >= 4.9.0 < 5.0.0
  • , , , , , ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'cloudpassage-cloudpassage', '1.0.5'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add cloudpassage-cloudpassage
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install cloudpassage-cloudpassage --version 1.0.5

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download

Documentation

cloudpassage/cloudpassage — version 1.0.5 Dec 6th 2017

Cloudpassage Puppet

Author: CloudPassage & Tech Accelerator

Master branch: Build Status (develop branch)

Develop branch: Build Status (develop branch)

Feedback: toolbox@cloudpassage.com

Table of Contents

  1. Overview
  2. Requirements and dependencies
  3. Setup
  4. Usage
  5. Reference
  6. Limitations - OS compatibility, etc.
  7. Development

Overview

The cloudpassage module installs and configures the CloudPassage Halo agent.

Requirements

Tested and Supported Platforms

  • Ubuntu 14.04
  • CentOS 6.7
  • CentOS 7.1
  • RHEL 7.2
  • Amazon Linux 2015.09
  • Windows Server 2012R2

Tested Ruby version

  • 2.2

Tested Puppet versions

  • Puppet 4.9.0
  • Puppet 4.9.1
  • Puppet 4.9.2
  • Puppet 4.9.3
  • Puppet 4.9.4

Setup

There is no extra setup required.

Usage

Download CloudPassage Puppet Module to Puppet Master

cd /etc/puppetlabs/code/environments/production/modules
git clone https://github.com/cloudpassage/puppet-cloudpassage.git
mv puppet-cloudpassage cloudpassage 

All interaction with the cloudpassage module can be done through the main cloudpassage class in the manifest (/etc/puppetlabs/code/environments/production/manifests) on Pupper Master. Below are example classes for Linux and Windows servers to function. Please see later section for required parameters.

Example for Linux servers

class { 'cloudpassage':
  agent_key => 'myagentkey',
}

Example for Windows servers

class { 'cloudpassage':
         agent_key => 'myagentkey',
         package_file => 'cphalo-3.9.7-win64.exe',
         package_url => 'https://production.packages.cloudpassage.com/windows/cphalo-3.9.7-win64.exe',
         destination_dir => 'C:\\Users\Administrator\Downloads',
         server_label => 'puppet_windows',
         audit_mode => true
}

Reference

Classes

Public classes

  • cloudpassage: Main class, includes all other classes.

Private classes

* cloudpassage::params: Handles the module's params and sets defaults.
* cloudpassage::install: Handles the packages.
* cloudpassage::config: Configures the cphalo daemon on installation.
* cloudpassage::service: Handles the cphalod service.
* cloudpassage::yum: Manages the cloudpassage yum repo where applicable.
* cloudpassage::apt: Manages the cloudpassage apt repo where applicable.

Parameters

The following parameters are available in the cloudpassage class:

agent_key (Required)

The CloudPassage Agent key.

azure_id

Unique identifer of the VM combined with the hostname. server_label will supersede azure_id if server_label field is populated.

audit_mode

Controls the Halo Agent's "read-only" attribute

destination_dir (Windows only)

Controls where we'll download the installer EXE

manage_repos (Linux only)

Set to true by default, will add cloudpassage package repo for install

package_ensure

Controls the package resource's "ensure" attribute

package_file (Windows only)

Controls the filename of the installer EXE

package_name

Controls the package resource's "name" attribute

package_url (Windows only)

Base URL from which we'll download the installer EXE

repo_ensure (Linux only)

Controls the apt or yum repo's "ensure" attribute

service_name

The name of the service

server_label

Unique identifer of the VM

tags

The CloudPassage tags that this node will be configured with. If nothing is provided will not include --tags in the agent registration process (default set to undef)

proxy

Proxing settings. To configure the agent to use an outbound pro

proxy_user

Proxy username

proxy_password

Proxy password

dns

Controls DNS resolution (True | False)

Limitations

Module dependencies

This module uses the puppetlabs-apt module for the management of the NodeSource repository, [puppetlabs-stdlib module] and [puppetlabs-powershell module]

For Windows installations, this module uses the puppet-download_file module to download the necessary installers.

Development

We welcome contributions to this module from the Puppet community - the preferred way would be to send a pull request to the module repo on GitHub (https://github.com/cloudpassage/puppet-cloudpassage). Bonus points if you follow this process:

  1. Fork the module on github
  2. pull it down
  3. run the acceptance tests included in the module
  4. make your changes
  5. add spec tests to test your changes
  6. then submit a pull request

This module is regularly reviewed and maintained by the CloudPassage integrations team. For any feedback, questions or support issues, please contact support@cloudpassage.com.