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,
|
||||
}
|
||||
|
||||
@@ -10,30 +10,33 @@ rundir=/var/run/puppet
|
||||
factsignore = .svn CVS .git
|
||||
pluginsync=true
|
||||
factpath=$vardir/lib/facter
|
||||
templatedir=/etc/puppet/templates
|
||||
## should we use this?
|
||||
#prerun_command=/etc/puppet/etckeeper-commit-pre
|
||||
#postrun_command=/etc/puppet/etckeeper-commit-post
|
||||
|
||||
|
||||
<% if (fqdn == scope.lookupvar("puppetmaster_server")) || (fqdn == scope.lookupvar("puppetmasterdev_server")) -%>
|
||||
dbmigrate=true
|
||||
dbadapter=<%= scope.lookupvar('puppetmaster_dbtype') %>
|
||||
dbname=<%= scope.lookupvar('puppetmaster_dbname') %>
|
||||
dbserver=<%= scope.lookupvar('puppetmaster_dbhost') %>
|
||||
dbuser=<%= scope.lookupvar('puppetmaster_dbuser') %>
|
||||
dbpassword=<%= scope.lookupvar('puppetmaster_dbpassword') %>
|
||||
#dbmigrate=true
|
||||
#dbadapter=<%= scope.lookupvar('puppetmaster_dbtype') %>
|
||||
#dbname=<%= scope.lookupvar('puppetmaster_dbname') %>
|
||||
#dbserver=<%= scope.lookupvar('puppetmaster_dbhost') %>
|
||||
#dbuser=<%= scope.lookupvar('puppetmaster_dbuser') %>
|
||||
#dbpassword=<%= scope.lookupvar('puppetmaster_dbpassword') %>
|
||||
|
||||
[master]
|
||||
ssl_client_header = SSL_CLIENT_S_DN
|
||||
ssl_client_verify_header = SSL_CLIENT_VERIFY
|
||||
reports=<%= scope.lookupvar('puppetmaster_reports') %>
|
||||
<% if scope.lookupvar('puppet::puppetmaster::dns_alt_names') -%>
|
||||
dns_alt_names=<%= scope.lookupvar('puppet::puppetmaster::dns_alt_names') %>
|
||||
<% end -%>
|
||||
<% if @reports -%>
|
||||
reports=<%= @reports %>
|
||||
<% end -%>
|
||||
<% if scope.lookupvar('puppetmaster_reporturl') != false -%>
|
||||
reporturl=<%= scope.lookupvar('puppetmaster_reporturl') %>
|
||||
<% end -%>
|
||||
modulepath=<%= scope.lookupvar('puppetmaster_modulepath') %>
|
||||
storeconfigs=true
|
||||
rails_loglevel=info
|
||||
modulepath=<%= scope['puppet::puppetmaster::modulepath'] %>
|
||||
storeconfigs=<%= scope['puppet::puppetmaster::storeconfigs'] %>
|
||||
<% if scope['puppet::puppetmaster::storeconfigs_backend'] -%>
|
||||
storeconfigs_backend=<%= scope['puppet::puppetmaster::storeconfigs_backend'] %>
|
||||
<% end -%>
|
||||
#rails_loglevel=info
|
||||
<% end -%>
|
||||
|
||||
[agent]
|
||||
|
||||
Reference in New Issue
Block a user