Puppet Class: puppet::agent::install

Inherits:
puppet::params
Defined in:
manifests/agent/install.pp

Summary

Puppet 5 agent installation

Overview

puppet::agent::install

Puppet 5 agent installation

Examples:

include puppet::agent::install

Parameters:

  • agent_package_name (String) (defaults to: $puppet::params::agent_package_name)
  • agent_version (String) (defaults to: $puppet::agent_version)


13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'manifests/agent/install.pp', line 13

class puppet::agent::install (
  String $agent_package_name  = $puppet::params::agent_package_name,
  String $agent_version = $puppet::agent_version,
) inherits puppet::params {
  include puppet::repo

  case $facts['os']['family'] {
    'Debian': {
      $package_ensure = $agent_version
    }
    # default is RPM based systems
    default: {
      $version_data  = split($agent_version, '[-]')
      $major_version = $version_data[0]
      $build_version = $version_data[1]

      if $build_version or $agent_version in ['present', 'absent', 'purged', 'installed', 'latest'] {
        $package_ensure = $agent_version
      }
      else {
        $package_ensure = "${major_version}-${puppet::params::package_build}"
      }
    }
  }

  package { 'puppet-agent':
    ensure => $package_ensure,
    name   => $agent_package_name,
  }

  Class['puppet::repo'] -> Package['puppet-agent']
}