Defined Type: psick::puppet::module

Defined in:
manifests/puppet/module.pp

Overview

Installs a Puppet module for a user

Parameters:

  • user (String) (defaults to: 'root')
  • modulename (String) (defaults to: $title)
  • arguments (Optional[String]) (defaults to: undef)


2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'manifests/puppet/module.pp', line 2

define psick::puppet::module (
  String $user                = 'root',
  String $modulename          = $title,
  Optional[String] $arguments = undef,
) {
  $split_title = split($modulename,'-')
  $creates = $user ? {
    'root'  => "/etc/puppetlabs/code/modules/${split_title[1]}",
    default => "/home/${user}/.puppetlabs/etc/code/modules/${split_title[1]}",
  }
  $home = $user ? {
    'root'  => '/root',
    default => "/home/${user}",
  }
  exec { "puppet module install ${modulename}":
    command     => "puppet module install ${modulename} ${arguments}",
    user        => $user,
    creates     => $creates,
    path        => $facts['path'],
    environment => ["HOME=${home}"],
  }
}