Merge remote branch 'pkern/master'
[mirror/dsa-puppet.git] / modules / debian-org / manifests / init.pp
index b19a745..75bb70d 100644 (file)
@@ -17,6 +17,26 @@ define set_alternatives($linkto) {
         }
 }
 
+define linux_module ($ensure) {
+    case $ensure {
+        present: {
+            exec { "append_module_${name}":
+                command => "echo '${name}' >> /etc/modules",
+                unless => "grep -q -F -x '${name}' /etc/modules",
+            }
+        }
+        absent: {
+            exec { "remove_module_${name}":
+                command => "sed -i -e'/^${name}\$/d' /etc/modules",
+                onlyif => "grep -q -F -x '${name}' /etc/modules",
+            }
+        }
+        default: {
+             err("invalid ensure value ${ensure}")
+         }
+    }
+}
+
 
 class debian-org {
     package {
@@ -89,7 +109,7 @@ class debian-org {
             ;
         "/etc/pam.d/common-session":
             require => Package["libpam-pwdfile"],
-            source => "puppet:///modules/debian-org/pam.common-session",
+            content => template("debian-org/pam.common-session.erb"),
             ;
         "/etc/rc.local":
             mode   => 0755,
@@ -139,7 +159,7 @@ class debian-proliant inherits debian-org {
         "hp-health": ensure => installed;
         "arrayprobe": ensure => installed;
     }
-    case extractnodeinfo($nodeinfo, 'squeeze') {
+    case getfromhash($nodeinfo, 'squeeze') {
         true: {}
         default: {
             package {