From f36a2bfe59eba5e6eec40dc385bd6e288af74d4b Mon Sep 17 00:00:00 2001 From: Stephen Gran Date: Mon, 23 Apr 2012 11:34:50 +0100 Subject: [PATCH 1/1] emulate procps handling on bsd Signed-off-by: Stephen Gran --- modules/kfreebsd/files/procps.init | 60 ++++++++++++++++++++++++++++++ modules/kfreebsd/manifests/init.pp | 12 ++++++ modules/site/manifests/init.pp | 5 --- 3 files changed, 72 insertions(+), 5 deletions(-) create mode 100755 modules/kfreebsd/files/procps.init diff --git a/modules/kfreebsd/files/procps.init b/modules/kfreebsd/files/procps.init new file mode 100755 index 000000000..4ecb6010f --- /dev/null +++ b/modules/kfreebsd/files/procps.init @@ -0,0 +1,60 @@ +#! /bin/sh +# /etc/init.d/procps: Set kernel variables from /etc/sysctl.conf +# +# written by Stephen Gran based on work by Elrond + +### BEGIN INIT INFO +# Provides: procps +# Required-Start: mountkernfs $local_fs +# Required-Stop: +# Default-Start: S +# Default-Stop: +# Short-Description: Configure kernel parameters at boottime +# Description: Loads kernel parameters that are specified in /etc/sysctl.conf +### END INIT INFO + +PATH=/sbin:/bin + +SYSCTL=/bin/sysctl + +test -x $SYSCTL || exit 0 + +. /lib/lsb/init-functions + +# Comment this out for sysctl to print every item changed +QUIET_SYSCTL="-q" + +# Check for existance of the default file +if [ -f /etc/default/rcS ] ; then + . /etc/default/rcS +fi + +set -e + +VERBOSE=yes +case "$1" in + start|restart|force-reload) + log_action_begin_msg "Setting kernel variables " + STATUS=0 + for file in /etc/sysctl.conf /etc/sysctl.d/*.conf ; do + if [ -r "$file" ] ; then + if [ "$VERBOSE" = "yes" ] ; then + log_action_cont_msg " $file" + fi + egrep -v '^[[:space:]]*(#|$)' "$file" | while read line; do + $SYSCTL $QUIET_SYSCTL "$(echo $line | sed -e 's/ = /=/')" + done + fi + done + log_action_end_msg $STATUS + ;; + stop) + ;; + *) + echo "Usage: /etc/init.d/procps {start|stop|restart|force-reload}" >&2 + exit 3 + ;; +esac + +exit 0 + diff --git a/modules/kfreebsd/manifests/init.pp b/modules/kfreebsd/manifests/init.pp index 8d2cf7967..815950920 100644 --- a/modules/kfreebsd/manifests/init.pp +++ b/modules/kfreebsd/manifests/init.pp @@ -1,8 +1,20 @@ class kfreebsd { + file { '/etc/cron.d/dsa-killruby': source => 'puppet:///modules/kfreebsd/dsa-killruby', } + file { '/etc/sysctl.d/': + ensure => directory, + mode => '0755' + } + + file { '/etc/init.d/procps': + source => 'puppet:///modules/kfreebsd/procps.init', + mode => '0555', + before => Service['procps'], + } + site::sysctl { 'maxfiles': key => 'kern.maxfiles', value => 65536, diff --git a/modules/site/manifests/init.pp b/modules/site/manifests/init.pp index 8fe1dafaf..4d09074a9 100644 --- a/modules/site/manifests/init.pp +++ b/modules/site/manifests/init.pp @@ -9,9 +9,4 @@ class site { status => '/bin/true', } - file { '/etc/sysctl.d/': - ensure => directory, - mode => '0755' - } - } -- 2.20.1