Try adding a linux_module function
authorPeter Palfrader <peter@palfrader.org>
Sat, 19 Mar 2011 15:07:30 +0000 (16:07 +0100)
committerPeter Palfrader <peter@palfrader.org>
Sat, 19 Mar 2011 15:07:30 +0000 (16:07 +0100)
modules/debian-org/manifests/init.pp

index 1e23846..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 {