refactoring, part 1
This commit is contained in:
21
manifests/client.pp
Normal file
21
manifests/client.pp
Normal file
@@ -0,0 +1,21 @@
|
||||
class puppet::client (
|
||||
$ensure = 'present',
|
||||
$version = $::PUPPET_VERSION) {
|
||||
class { 'puppet':
|
||||
daemonize => false,
|
||||
require => Exec['apt_update'],
|
||||
}
|
||||
|
||||
if !defined(Class['puppet::puppetlabs_apt']) {
|
||||
class { 'puppet::puppetlabs_apt': }
|
||||
require 'puppet::puppetlabs_apt'
|
||||
}
|
||||
|
||||
apt::pin { 'puppet':
|
||||
version => $version,
|
||||
packages => 'puppet*',
|
||||
priority => '100',
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
define puppet::defines::fact_d ($value, $ensure = 'present', $key = false) {
|
||||
require 'puppet::common'
|
||||
require 'puppet::facter'
|
||||
$k_real = $key ? {
|
||||
false => $name,
|
||||
default => $key,
|
||||
}
|
||||
|
||||
file { "${puppet::common::facts_d}/${k_real}.txt":
|
||||
file { "${puppet::facter::facts_d}/${k_real}.txt":
|
||||
ensure => $ensure,
|
||||
content => "${k_real}=${value}",
|
||||
}
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
class puppet::common (
|
||||
class puppet::facter (
|
||||
$ensure = 'present') {
|
||||
$pkg_ens = $ensure ? {
|
||||
'present' => 'latest',
|
||||
default => $ensure,
|
||||
}
|
||||
|
||||
package { 'facter': ensure => '1.7.5-1puppetlabs1' }
|
||||
package { 'facter': ensure => $ensure }
|
||||
|
||||
package { 'libaugeas-ruby': }
|
||||
$ens_dir = $ensure ? {
|
||||
@@ -1,4 +1,4 @@
|
||||
import 'defines/*.pp'
|
||||
#import 'defines/*.pp'
|
||||
|
||||
class puppet (
|
||||
$ensure = 'present',
|
||||
@@ -16,7 +16,7 @@ class puppet (
|
||||
}
|
||||
$factpath = '/var/lib/puppet/lib/facter'
|
||||
|
||||
require 'puppet::common'
|
||||
require 'puppet::facter'
|
||||
|
||||
if !defined(Class['puppet::puppetlabs_apt']) {
|
||||
require 'puppet::puppetlabs_apt'
|
||||
@@ -111,31 +111,20 @@ class puppet (
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
if defined(Class['ganglia::monitor']) {
|
||||
Ganglia::Gmetric::Cron {
|
||||
source => 'puppet/ganglia',
|
||||
ensure => $ensure,
|
||||
}
|
||||
|
||||
ganglia::gmetric::cron { 'puppetd_lastrun.sh': runwhen => '5'; 'puppetd_runtime.sh': runwhen => '15'; }
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
$puppet_user = $operatingsystem ? {
|
||||
$puppet_user = $::operatingsystem ? {
|
||||
'Darwin' => $adm,
|
||||
default => 'puppet',
|
||||
}
|
||||
$puppet_group = $operatingsystem ? {
|
||||
$puppet_group = $::operatingsystem ? {
|
||||
'Darwin' => 'wheel',
|
||||
default => 'puppet',
|
||||
}
|
||||
# 'FreeBSD' => '/usr/local/etc/puppet/puppet.conf',
|
||||
$puppetconf = $operatingsystem ? {
|
||||
$puppetconf = $::operatingsystem ? {
|
||||
default => '/etc/puppet/puppet.conf',
|
||||
}
|
||||
|
||||
file { $puppetconf:
|
||||
ensure => $ensure,
|
||||
content => template('puppet/puppet.conf.erb'),
|
||||
|
||||
20
manifests/monitored/client.pp
Normal file
20
manifests/monitored/client.pp
Normal file
@@ -0,0 +1,20 @@
|
||||
class puppet::monitored::client (
|
||||
$ensure = 'present') {
|
||||
$check = '/usr/lib/nagios/plugins/check_file_age -w10800 -c36000 -f/var/lib/puppet/state/last_run_summary.yaml'
|
||||
|
||||
icinga::object::hostgroupmember { 'puppet-clients': ensure => 'absent', }
|
||||
|
||||
sudo::conf { 'puppet-clients-icinga-sudo':
|
||||
content => "nagios ALL=NOPASSWD: ${check}",
|
||||
ensure => $ensure,
|
||||
}
|
||||
|
||||
massive_passive::icinga::service { 'Puppet last run':
|
||||
freshness_threshold => '5800',
|
||||
command => "/usr/bin/sudo ${check}",
|
||||
use => 'workhours-passive-service',
|
||||
hostgroup_name => 'linux-servers',
|
||||
notifications_enabled => 1,
|
||||
ensure => $ensure,
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
class puppet::puppet-dashboard ($ensure = 'present') {
|
||||
require 'puppet::common'
|
||||
require 'puppet::facter'
|
||||
|
||||
package { ['libjson-ruby', 'puppet-dashboard']:
|
||||
ensure => $ensure,
|
||||
|
||||
@@ -1,29 +1,17 @@
|
||||
class puppet::puppetmaster ($ensure = 'present', $puppetqd = false) {
|
||||
require 'puppet::common'
|
||||
|
||||
class puppet::puppetmaster (
|
||||
$ensure = 'present',
|
||||
$dns_alt_names = undef,
|
||||
$storeconfigs = false,
|
||||
$storeconfigs_backend = undef,
|
||||
$reports = undef,
|
||||
$modulepath = undef) {
|
||||
require 'puppet::facter'
|
||||
|
||||
if !defined(Class['puppet::puppetlabs_apt']) {
|
||||
class { 'puppet::puppetlabs_apt': }
|
||||
require 'puppet::puppetlabs_apt'
|
||||
}
|
||||
|
||||
if $puppetqd {
|
||||
class { 'activemq': ensure => $ensure }
|
||||
|
||||
package { 'libnet-arp-perl': ensure => $ensure }
|
||||
|
||||
service { 'stompserver':
|
||||
ensure => false,
|
||||
enable => false,
|
||||
before => Class['activemq'],
|
||||
}
|
||||
|
||||
service { 'puppetqd':
|
||||
ensure => running,
|
||||
pattern => 'puppet queue queue',
|
||||
enable => true,
|
||||
}
|
||||
}
|
||||
|
||||
if defined(Class['ganglia::monitor']) {
|
||||
Ganglia::Gmetric::Cron {
|
||||
source => 'puppet/ganglia',
|
||||
@@ -41,7 +29,7 @@ class puppet::puppetmaster ($ensure = 'present', $puppetqd = false) {
|
||||
|
||||
# ## remove disk reports from time to time
|
||||
tidy { "${::puppet_vardir}/reports":
|
||||
age => '1d',
|
||||
age => '1m',
|
||||
recurse => true,
|
||||
backup => false,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user