<% if @operatingsystem == "Fedora" then # Fedora auto-mounts subsystems under /sys/fs/cgroup/ already, so no # mount section is needed. %> <% elsif @operatingsystem == "Suse" then # SUSE auto-mounts subsystems under /sys/fs/cgroup/ already, so no # mount section is needed. %> <% elsif @osfamily == "RedHat" then %> mount { cpuset = /cgroup/cpuset; cpu = /cgroup/cpu; cpuacct = /cgroup/cpuacct; memory = /cgroup/memory; devices = /cgroup/devices; freezer = /cgroup/freezer; net_cls = /cgroup/net_cls; blkio = /cgroup/blkio; } <% elsif ( @operatingsystemrelease < '12.10' ) or ( @operatingsystem != 'Ubuntu' ) then %> mount { cpu = /sys/fs/cgroup/cpu; cpuacct = /sys/fs/cgroup/cpuacct; devices = /sys/fs/cgroup/devices; memory = /sys/fs/cgroup/memory; freezer = /sys/fs/cgroup/freezer; } <% end %> group jenkins { perm { task { uid = jenkins; gid = jenkins; } admin { uid = root; gid = root; } } } group jenkins/children { perm { task { uid = jenkins; gid = jenkins; } admin { uid = root; gid = root; } } memory { memory.soft_limit_in_bytes = <%= (@memorytotalbytes.to_f * 0.75).to_i %>; memory.limit_in_bytes = <%= (@memorytotalbytes.to_f * 0.9).to_i %>; <% if (@operatingsystem == "Fedora") and (@operatingsystemrelease == "18") then # Because of Red Hat bug 918951, swap management doesn't # work in Fedora 18 but should be fixed in 19. %> <% elsif (@operatingsystem == "Ubuntu") and (@lsbdistrelease == "14.04") then %> # memory.memsw.limit_in_bytes is not supported on Trusty, setting this # raises a 'setting not supported by kernel error'. Checked with upstream, # they confirmed lack of support in several kernels, so we should skip it. <% else %> memory.memsw.limit_in_bytes = <%= (@memorytotalbytes.to_f * 0.9).to_i %>; <% end %> } }