Defined Type: sysctl::entry

Defined in:
manifests/entry.pp

Overview

Class: sysctl::entry

Set a single value

Parameters:

  • value (Any)
  • ensure (Any) (defaults to: 'present')
[View source]

5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'manifests/entry.pp', line 5

define sysctl::entry(
  $value,
  $ensure = 'present'
) {
  require sysctl

  file_line { "Set sysctl::value::${name} to ${value}":
    ensure            => $ensure,
    path              => '/etc/sysctl.conf',
    line              => "${name}=${value}",
    match             => "^${name}=.*$",
    match_for_absence => true
  }

  if $ensure == 'present' {
    exec { "Live-update sysctl::value::${name} to ${value}":
      command => "/usr/sbin/sysctl '${name}=${value}'",
      unless  => "/usr/sbin/sysctl -n '${name}' | grep '^${value}$'",
      user    => 'root'
    }
  }
}