|
4 | 4 | # |
5 | 5 | # === Parameters |
6 | 6 | # |
| 7 | +# [*ensure*] |
| 8 | +# What state the package should be in. Defaults to +latest+. Valid values are |
| 9 | +# +present+ (also called +installed+), +absent+, +purged+, +held+, +latest+, |
| 10 | +# or a specific version number. |
| 11 | +# |
| 12 | +# [*package_name*] |
| 13 | +# The name of the package on the relevant distribution. Default is set by |
| 14 | +# Class['puppet::params']. |
| 15 | +# |
7 | 16 | # === Actions |
8 | 17 | # |
9 | 18 | # - Install Puppet server package |
10 | | -# - Ensure puppet-master daemon is running |
11 | | -# - Configure Puppet to use nodes.pp and modules from /vagrant directory |
12 | 19 | # - Configure Puppet to autosign puppet client certificate requests |
| 20 | +# - Configure Puppet to use nodes.pp and modules from /vagrant directory |
| 21 | +# - Ensure puppet-master daemon is running |
13 | 22 | # |
14 | 23 | # === Requires |
15 | 24 | # |
16 | 25 | # === Sample Usage |
17 | 26 | # |
18 | 27 | # class { 'puppet::server': } |
19 | 28 | # |
20 | | -class puppet::server { |
| 29 | +# class { 'puppet::server': |
| 30 | +# ensure => '2.6.8-0.5.el5', |
| 31 | +# } |
| 32 | +# |
| 33 | +class puppet::server( |
| 34 | + $ensure = $puppet::params::server_ensure, |
| 35 | + $package_name = $puppet::params::server_package_name |
| 36 | +) inherits puppet::params { |
21 | 37 |
|
22 | | - package { 'puppet-server': |
23 | | - ensure => latest, |
| 38 | + # required to prevent syslog error on ubuntu |
| 39 | + # https://bugs.launchpad.net/ubuntu/+source/puppet/+bug/564861 |
| 40 | + file { [ '/etc/puppet', '/etc/puppet/files' ]: |
| 41 | + ensure => directory, |
| 42 | + before => Package[ 'puppetmaster' ], |
| 43 | + } |
| 44 | + |
| 45 | + package { 'puppetmaster': |
| 46 | + ensure => $ensure, |
| 47 | + name => $package_name, |
24 | 48 | } |
25 | 49 |
|
26 | 50 | file { 'puppet.conf': |
|
29 | 53 | group => 'puppet', |
30 | 54 | mode => '0644', |
31 | 55 | source => 'puppet:///modules/puppet/puppet.conf', |
32 | | - require => Package[ 'puppet-server' ], |
33 | | - notify => Service[ 'puppet-server' ], |
| 56 | + require => Package[ 'puppetmaster' ], |
| 57 | + notify => Service[ 'puppetmaster' ], |
34 | 58 | } |
35 | 59 |
|
36 | 60 | file { 'site.pp': |
|
39 | 63 | group => 'puppet', |
40 | 64 | mode => '0644', |
41 | 65 | source => 'puppet:///modules/puppet/site.pp', |
42 | | - require => Package[ 'puppet-server' ], |
| 66 | + require => Package[ 'puppetmaster' ], |
| 67 | + } |
| 68 | + |
| 69 | + file { 'autosign.conf': |
| 70 | + path => '/etc/puppet/autosign.conf', |
| 71 | + owner => 'puppet', |
| 72 | + group => 'puppet', |
| 73 | + mode => '0644', |
| 74 | + content => '*', |
| 75 | + require => Package[ 'puppetmaster' ], |
43 | 76 | } |
44 | 77 |
|
45 | 78 | file { '/etc/puppet/manifests/nodes.pp': |
46 | 79 | ensure => link, |
47 | 80 | target => '/vagrant/nodes.pp', |
| 81 | + require => Package[ 'puppetmaster' ], |
48 | 82 | } |
49 | 83 |
|
50 | 84 | # initialize a template file then ignore |
51 | 85 | file { '/vagrant/nodes.pp': |
52 | 86 | ensure => present, |
53 | 87 | replace => false, |
54 | 88 | source => 'puppet:///modules/puppet/nodes.pp', |
55 | | - require => Package[ 'puppet-server' ], |
56 | | - } |
57 | | - |
58 | | - file { 'autosign.conf': |
59 | | - path => '/etc/puppet/autosign.conf', |
60 | | - owner => 'puppet', |
61 | | - group => 'puppet', |
62 | | - mode => '0644', |
63 | | - content => '*', |
64 | | - require => Package[ 'puppet-server' ], |
65 | 89 | } |
66 | 90 |
|
67 | | - service { 'puppet-server': |
| 91 | + service { 'puppetmaster': |
68 | 92 | enable => true, |
69 | 93 | ensure => running, |
70 | | - name => 'puppetmaster', |
71 | 94 | } |
72 | 95 |
|
73 | 96 | } |
0 commit comments