]> granicus.if.org Git - icinga2/commitdiff
Refactor Puppet files.
authorGunnar Beutner <gunnar@beutner.name>
Wed, 16 Oct 2013 06:25:11 +0000 (08:25 +0200)
committerGunnar Beutner <gunnar@beutner.name>
Wed, 16 Oct 2013 06:25:11 +0000 (08:25 +0200)
.vagrant-puppet/manifests/default.pp
.vagrant-puppet/modules/apache/manifests/init.pp
.vagrant-puppet/modules/icinga-classicui/manifests/init.pp
.vagrant-puppet/modules/icinga-web/manifests/init.pp
.vagrant-puppet/modules/icinga2/manifests/init.pp

index 5a663c48b5d1e3bf455b4d2db5cb0f73f36132d6..c8b5cda308b789e5d5a28814f3e33f356873f679 100644 (file)
@@ -1,10 +1,5 @@
 include apache
-include mysql
-# enable when icinga2-ido-pgsql is ready
-#include pgsql
-include epel
 include icinga-classicui
-include icinga2
 include icinga-web
 include nagios-plugins
 
index b3c21449adabb736dfef9dfb6e4135c075eb4494..5ff882eedf1fdd2385c35be4ee8e9f947e34e5f0 100644 (file)
@@ -25,7 +25,7 @@ class apache {
 
   exec { 'iptables-allow-http':
     path => '/bin:/usr/bin:/sbin:/usr/sbin',
-    unless => 'grep -Fxqe "-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT" /etc/sysconfig/iptables',
+    unless => 'grep -Fxqe "-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT" /etc/sysconfig/iptables',
     command => 'lokkit --enabled --service=http'
   }
 
index b25d5c995f81ca930898d083afd7ef354f782a04..1d522fc500a20a8ff62c956a36cd03aa7810bf23 100644 (file)
@@ -1,5 +1,6 @@
 class icinga-classicui {
   include icinga-rpm-snapshot
+  include icinga2
 
   # workaround for package conflicts
   # icinga-gui pulls icinga-gui-config automatically
@@ -31,12 +32,9 @@ class icinga-classicui {
     require => [ Class['apache'], Group['icingacmd'] ]
   }
 
-  exec { 'enable-icinga2-features':
-    path => '/bin:/usr/bin:/sbin:/usr/sbin',
-    command => 'i2enfeature statusdat; \
-                i2enfeature compat-log; \
-                i2enfeature command;',
-    require => [ Package['icinga2'] ],
-    notify => Service['icinga2']
-  }
+  icinga2::feature { 'statusdat': }
+
+  icinga2::feature { 'command': }
+
+  icinga2::feature { 'compat-log': }
 }
index 8b5f8762b98b7e626983d4ac9fa9fa4d934fb8f5..4d1483600cc027c4707315ea814afbc2132107aa 100644 (file)
@@ -1,6 +1,7 @@
 class icinga-web {
   include icinga-rpm-snapshot
   include icinga2-ido-mysql
+  include mysql
 
   php::extension { ['php-mysql']:
     require => [ Class['mysql'] ]
@@ -27,4 +28,4 @@ class icinga-web {
     command => 'mysql -uicinga_web -picinga_web icinga_web < /usr/share/icinga-web/etc/schema/mysql.sql',
     require => [ Package['icinga-web'], Exec['create-mysql-icinga-web-db'] ]
   }
-}
\ No newline at end of file
+}
index d6f6639f47f8ef5c3fecc97f362552836c47d15e..2b909e5fd46ea7bc510405897941edf1c0ca71f5 100644 (file)
@@ -42,13 +42,6 @@ class icinga2-ido-mysql {
     notify => Service['icinga2']
   }
 
-  exec { 'enable-icinga2-ido-mysql':
-    path => '/bin:/usr/bin:/sbin:/usr/sbin',
-    command => 'i2enfeature ido-mysql;',
-    require => [ Package['icinga2'], Exec['populate-icinga2-ido-mysql-db'] ],
-    notify => Service['icinga2']
-  }
-
   exec { 'create-mysql-icinga2-ido-db':
     path => '/bin:/usr/bin:/sbin:/usr/sbin',
     unless => 'mysql -uicinga -picinga icinga',
@@ -65,6 +58,10 @@ class icinga2-ido-mysql {
     command => 'mysql -uicinga -picinga icinga < /usr/share/doc/icinga2-ido-mysql-$(rpm -q icinga2-ido-mysql | cut -d\'-\' -f4)/schema/mysql.sql',
     require => [ Package['icinga2-ido-mysql'], Exec['create-mysql-icinga2-ido-db'] ]
   }
+
+  icinga2::feature { 'ido-mysql':
+    require => Exec['create-mysql-icinga2-ido-db']
+  }
 }
 
 #class icinga2-ido-pgsql {
@@ -93,4 +90,14 @@ class icinga2-ido-mysql {
 #  php::extension { ['php-pgsql']:
 #    require => [ Class['pgsql'] ]
 #  }
-#}
\ No newline at end of file
+#}
+
+define icinga2::feature ($feature = $title) {
+  exec { "icinga2-feature-${feature}":
+    path => '/bin:/usr/bin:/sbin:/usr/sbin',
+    unless => "readlink /etc/icinga2/features-enabled/${feature}.conf",
+    command => "i2enfeature ${feature}",
+    require => [ Package['icinga2'] ],
+    notify => Service['icinga2']
+  }
+}