Defined Type: psick::sysctl::set

Defined in:
manifests/sysctl/set.pp

Overview

Parameters:

  • value (Any)
  • key (String) (defaults to: $title)


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
# File 'manifests/sysctl/set.pp', line 2

define psick::sysctl::set (
  Any    $value,
  String $key = $title,
) {
  sysctl { $key :
    val    => $value,
    before => Exec["exec_sysctl_${key}"],
  }

  $command = $facts['kernel'] ? {
    'openbsd' => "sysctl ${key}=\"${value}\"",
    default   => "sysctl -w ${key}=\"${value}\"",
  }

  $unless = $facts['kernel'] ? {
    'openbsd' => "sysctl ${key} | grep -q '=${value}\$'",
    default   => "sysctl ${key} | grep -q ' = ${value}'",
  }

  exec { "exec_sysctl_${key}" :
    command => $command,
    unless  => $unless,
    require => Sysctl[$key],
    path    => '/sbin:/bin:/usr/sbin:/usr/bin',
  }
}