summaryrefslogtreecommitdiff
path: root/manifests/init.pp
blob: e7492ab52720a15cbd1a781152af8177c2a4876a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
class sysctl {

    file { "/etc/sysctl.conf":
      mode => 644,
      owner => root,
      group => root,
      ensure => present,
    }
}

define sysctl::config ($value, $comment) {

  include sysctl

  augeas { "sysctl_${name}":
    context => "/files/etc/sysctl.conf",
    changes => [ "set $name $value", "insert #comment before $name",
                 "set #comment[last()] '$comment'" ],
    onlyif  => "get $name != $value",
    notify  => Exec["sysctl_${name}"],
  }

  exec { "sysctl_${name}":
    command => "/sbin/sysctl -p",
    subscribe   => File["/etc/sysctl.conf"],
    refreshonly => true,
  }
}