]> gitweb.fluxo.info Git - puppet-mumble.git/commitdiff
make it possible to pass config content
authormh <mh@immerda.ch>
Wed, 5 Jun 2013 20:50:40 +0000 (22:50 +0200)
committermh <mh@immerda.ch>
Wed, 5 Jun 2013 20:50:40 +0000 (22:50 +0200)
manifests/init.pp

index 9de93646684334565682b0eceef31e4b6852fe95..85865dc6f22879452a62d444a3ad45a6f46a8a60 100644 (file)
@@ -1,24 +1,37 @@
 # setup mumble
-class mumble {
-  package { 'mumble-server':
+#
+#  Parameters:
+#
+#    * config_content: get content for central config file from
+#      this parameter. Useful for using templates
+#    * config_source: Source path for your config
+#
+class mumble(
+  $config_content = false,
+  $config_source  = [ "puppet:///modules/site_mumble/${::fqdn}/mumble-server.ini",
+                      "puppet:///modules/site_mumble/mumble-server.ini",
+                      "puppet:///modules/mumble/mumble-server.ini" ],
+) {
+  package{'mumble-server':
     ensure => installed,
-  }
-
-  service { 'mumble-server':
+  } -> file{'/etc/mumble-server.ini':
+    owner   => root,
+    group   => mumble-server,
+    mode    => 0640;
+  } ~> service{'mumble-server':
     ensure    => 'running',
     enable    => true,
     hasstatus => false,
     pattern   => '/usr/sbin/murmurd',
   }
 
-  file{'/etc/mumble-server.ini':
-    source => [ "puppet:///modules/site_mumble/${::fqdn}/mumble-server.ini",
-                "puppet:///modules/site_mumble/mumble-server.ini",
-                "puppet:///modules/mumble/mumble-server.ini" ],
-    require => Package['mumble-server'],
-    notify  => Service['mumble-server'],
-    owner   => root,
-    group   => mumble-server,
-    mode    => 0640;
+  if $config_content {
+    File['/etc/mumble-server.ini']{
+      content => $config_content,
+    }
+  } else {
+    File['/etc/mumble-server.ini']{
+      source => $config_source,
+    }
   }
 }