summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorR.I.Pienaar <rip@devco.net>2010-05-12 16:35:46 +0100
committerR.I.Pienaar <rip@devco.net>2010-05-12 16:35:46 +0100
commit166891e2811db4df1f512b92fd662751fb84ed2b (patch)
tree6e735b79d172f284efd91d5073be9caffe311b38
parentd09acb4a426da691e2fccbed7bb26b1679fa141e (diff)
update README with a sample
-rw-r--r--README49
1 files changed, 49 insertions, 0 deletions
diff --git a/README b/README
index bfa262f..f69ce92 100644
--- a/README
+++ b/README
@@ -5,6 +5,55 @@ as well as posts on my blog at www.devco.net
Released under the Apache 2.0 licence
+USAGE:
+
+If you wanted a /etc/motd file that listed all the major modules
+on the machine. And that would be maintained automatically even
+if you just remove the include lines for other modules you could
+use code like below, a sample /etc/motd would be:
+
+Puppet modules on this server:
+
+ -- Apache
+ -- MySQL
+
+
+# class to setup basic motd, include on all nodes
+class motd {
+ concat{"/etc/motd":
+ owner => root,
+ group => root,
+ mode => 644
+ }
+
+ concat::fragment{"motd_header":
+ content => "\nPuppet modules on this server:\n\n",
+ order => 1,
+ }
+}
+
+# used by other modules to register themselves in the motd
+define motd::register($content="", $order=10) {
+ if $content == "" {
+ $body = $name
+ } else {
+ $body = $content
+ }
+
+ concat::fragment{"motd_fragment_$name":
+ target => "/etc/motd",
+ content => " -- $body\n"
+ }
+}
+
+# a sample apache module
+class apache {
+ include apache::install, apache::config, apache::service
+
+ motd::register{"Apache": }
+}
+
+
KNOWN ISSUES:
- In 0.24.8 you will see inintended notifies, if you build a file
in a run, the next run will also see it as changed. This is due