summaryrefslogtreecommitdiff
path: root/puppet
diff options
context:
space:
mode:
authorvarac <varacanero@zeromail.org>2016-06-09 17:34:39 +0200
committervarac <varacanero@zeromail.org>2016-06-14 12:05:18 +0200
commitc429f55ef10f3c757189bdab9823c0b74d81fb00 (patch)
tree42d550f747b77dd21e0d62a864776a6dd6064a1d /puppet
parentd2c8498b41bebc6a06216515b3cf75564b8fb61a (diff)
git subrepo clone https://leap.se/git/puppet_sysctl puppet/modules/sysctl
subrepo: subdir: "puppet/modules/sysctl" merged: "975852b" upstream: origin: "https://leap.se/git/puppet_sysctl" branch: "master" commit: "975852b" git-subrepo: version: "0.3.0" origin: "https://github.com/ingydotnet/git-subrepo.git" commit: "cb2995b"
Diffstat (limited to 'puppet')
-rw-r--r--puppet/modules/sysctl/.gitrepo11
-rw-r--r--puppet/modules/sysctl/README20
-rw-r--r--puppet/modules/sysctl/manifests/config.pp18
-rw-r--r--puppet/modules/sysctl/manifests/init.pp10
4 files changed, 59 insertions, 0 deletions
diff --git a/puppet/modules/sysctl/.gitrepo b/puppet/modules/sysctl/.gitrepo
new file mode 100644
index 00000000..40c0d662
--- /dev/null
+++ b/puppet/modules/sysctl/.gitrepo
@@ -0,0 +1,11 @@
+; DO NOT EDIT (unless you know what you are doing)
+;
+; This subdirectory is a git "subrepo", and this file is maintained by the
+; git-subrepo command. See https://github.com/git-commands/git-subrepo#readme
+;
+[subrepo]
+ remote = https://leap.se/git/puppet_sysctl
+ branch = master
+ commit = 975852b7acc1125b4cd9d4d490b9abd8d31217e6
+ parent = 99a3ff59aac9e8a93c015ac429aa15c5b67ad33a
+ cmdver = 0.3.0
diff --git a/puppet/modules/sysctl/README b/puppet/modules/sysctl/README
new file mode 100644
index 00000000..a3980f70
--- /dev/null
+++ b/puppet/modules/sysctl/README
@@ -0,0 +1,20 @@
+sysctl module
+-------------
+
+This puppet module handles the setting of variables in sysctl.conf, its
+a simple module that utilizes the puppet augeas built-in type and the
+sysctl binary. You must have the augeas ruby libraries installed to
+use this type.
+
+You can set a value and a comment for that value using this module,
+some examples:
+
+sysctl::config { "vm.mmap_min_addr":
+ value => 32768,
+ comment => "Never mmap into the first 32k of memory",
+}
+
+sysctl::config { "fs.file-max":
+ value => 65536,
+ comment => "Maximum number of filehandles",
+}
diff --git a/puppet/modules/sysctl/manifests/config.pp b/puppet/modules/sysctl/manifests/config.pp
new file mode 100644
index 00000000..79ddd295
--- /dev/null
+++ b/puppet/modules/sysctl/manifests/config.pp
@@ -0,0 +1,18 @@
+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,
+ }
+}
diff --git a/puppet/modules/sysctl/manifests/init.pp b/puppet/modules/sysctl/manifests/init.pp
new file mode 100644
index 00000000..43d9299e
--- /dev/null
+++ b/puppet/modules/sysctl/manifests/init.pp
@@ -0,0 +1,10 @@
+class sysctl {
+
+ file { '/etc/sysctl.conf':
+ ensure => present,
+ mode => '0644',
+ owner => root,
+ group => root
+ }
+}
+