Puppet Class: puppet::repo

Inherits:
puppet::globals
Defined in:
manifests/repo.pp

Summary

Setup Puppet Platform repository

Overview

puppet::repo

Setup Puppet Platform repository

Examples:

include puppet::repo

Parameters:

  • package_name (String) (defaults to: $puppet::globals::package_name)
  • deccomission_packages (Array[String]) (defaults to: $puppet::globals::deccomission_packages)
  • package_filename (String) (defaults to: $puppet::globals::package_filename)
  • platform_repository (String) (defaults to: $puppet::globals::platform_repository)
  • package_provider (String) (defaults to: $puppet::params::package_provider)


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
# File 'manifests/repo.pp', line 16

class puppet::repo (
  String  $package_name = $puppet::globals::package_name,
  Array[String] $deccomission_packages = $puppet::globals::deccomission_packages,
  String $package_filename = $puppet::globals::package_filename,
  String $platform_repository = $puppet::globals::platform_repository,
  String $package_provider = $puppet::params::package_provider,
) inherits puppet::globals {
  exec { 'puppet-release':
    command => "curl ${platform_repository} -s -o ${package_filename}",
    cwd     => '/tmp',
    path    => '/bin:/usr/bin',
    creates => "/tmp/${package_filename}",
  }

  package { 'puppet-release':
    name     => $package_name,
    provider => $package_provider,
    source   => "/tmp/${package_filename}",
    require  => Exec['puppet-release'],
  }

  $deccomission_packages.each |String $puppet_release| {
    package { $puppet_release:
      ensure => absent,
      before => Package['puppet-release'],
    }
  }
}