Forge Home

apply

Apply Puppet resources using tasks

26,597 downloads

26,597 latest version

5.0 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.

Version information

  • 0.1.0 (latest)
released Apr 26th 2018
This version is compatible with:
  • Puppet Enterprise 2018.1.x, 2017.3.x, 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
  • Puppet >= 4.7.0 < 6.0.0
  • , , , , , ,
Tasks:
  • resource

Start using this module

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

Add this module to your Puppetfile:

mod 'puppetlabs-apply', '0.1.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

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

Manually install this module globally with Puppet module tool:

puppet module install puppetlabs-apply --version 0.1.0

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

puppetlabs/apply — version 0.1.0 Apr 26th 2018

apply

Table of Contents

  1. Description
  2. Setup - The basics of getting started with apply
  3. Usage - Configuration options and additional functionality
  4. Reference - An under-the-hood peek at what the module is doing and how
  5. Limitations - OS compatibility, etc.

Description

The apply module contains a task to apply a single arbitrary Puppet resource. This makes it easy to take advantage of existing Puppet content while running tasks.

Setup

The Puppet agent package must be installed on all target nodes. However, the Puppet agent service doesn't need to be running. Any external resource types will need to be present on the target node (either by installing the module or through pluginsync) before they can be used.

Usage

To run the apply::resource task with bolt

bolt task run apply::resource --nodes $TARGETNODES type=package title=vim params='{"ensure": "present"}'

This task can also be run from a bolt plan:

plan install_vim(TargetSpec $nodes) {
  run_task(apply::resource, $nodes, type => 'package', title => 'vim', params => {'ensure' => 'present'})
}

Reference

Tasks

apply::resource

Parameters

type String[1]: The type of resource to apply

title String[1]: The title of the resource to apply

params Hash[String[1], Data]: A map of parameter names and values to apply

Output

On success, the result will contain the following keys:

type: The type of the resource that was applied title: The title of the resource that was applied changed: A boolean indicating whether the resource was modified by the task changes: An array of change event, each containing property, previous_value, desired_value, message representing a single property changed on the resource. Absent if the resource was not changed.

On failure, the result will contain the previous keys and additionally:

_error: An error object describing the failure failures: An array of failure events, each containing property, previous_value, desired_value, message representing a single property that failed on the resource.

Limitations

This is a pre 1.0.0 release and future versions may have breaking changes.