]> gitweb.fluxo.info Git - puppet-virtual.git/commitdiff
Adding vs_rlimit
authorSilvio Rhatto <rhatto@riseup.net>
Wed, 15 Aug 2012 20:39:07 +0000 (17:39 -0300)
committerSilvio Rhatto <rhatto@riseup.net>
Wed, 15 Aug 2012 20:39:07 +0000 (17:39 -0300)
manifests/vserver.pp

index efee9e1ffe6a004b5d4a2deb4747fa47bc474846..cd420c03695c183ea0e877dd329dd64f1723b6c7 100644 (file)
@@ -157,6 +157,12 @@ define vs_create($in_domain, $context, $legacy = false, $distro = 'squeeze',
     }
   }
 
+  file { "/etc/vservers/${vs_name}/rlimits":
+    ensure => directory,
+    mode => 0755, owner => root, group => root,
+    require => Exec["vs_create_${vs_name}"],
+  }
+
   case $memory_limit {
     false: {
       file { "/etc/vservers/${vs_name}/rlimits/rss.hard":
@@ -176,12 +182,6 @@ define vs_create($in_domain, $context, $legacy = false, $distro = 'squeeze',
       }
     }
     default: {
-      file { "/etc/vservers/${vs_name}/rlimits":
-        ensure => directory,
-        mode => 0755, owner => root, group => root,
-        require => Exec["vs_create_${vs_name}"],
-      }
-
       file { "/etc/vservers/${vs_name}/rlimits/rss.hard":
         mode => 0644, owner => root, group => root,
         content => template("virtual/rss.hard.erb"),
@@ -636,3 +636,26 @@ define vs_cflags($vserver, $flag, $ensure = present) {
     }
   }
 }
+
+define vs_rlimit($vserver, $limit, $soft = '', $hard = '', $min = '', $ensure = present) {
+  file { "/etc/vservers/${vserver}/rlimits/$limit.soft":
+    mode    => 0644, owner => root, group => root,
+    content => "$soft\n",
+    require => File["/etc/vservers/${vserver}/rlimits"],
+    notify  => Exec["vs_restart_${vserver}"],
+  }
+
+  file { "/etc/vservers/${vserver}/rlimits/$limit.hard":
+    mode    => 0644, owner => root, group => root,
+    content => "$hard\n",
+    require => File["/etc/vservers/${vserver}/rlimits"],
+    notify  => Exec["vs_restart_${vserver}"],
+  }
+
+  file { "/etc/vservers/${vserver}/rlimits/$limit.min":
+    mode    => 0644, owner => root, group => root,
+    content => "$min\n",
+    require => File["/etc/vservers/${vserver}/rlimits"],
+    notify  => Exec["vs_restart_${vserver}"],
+  }
+}