diff --git a/shared/additional-modules/squid/templates/squid-init.d b/shared/additional-modules/squid/templates/squid-init.d index d9e7e5f..278b519 100644 --- a/shared/additional-modules/squid/templates/squid-init.d +++ b/shared/additional-modules/squid/templates/squid-init.d @@ -46,29 +46,15 @@ start() { umask 027 ulimit -n 65535 $BIN $ARGS + chown <%= scope.lookupvar('squid::user') %> $PID RETVAL=$? return $RETVAL } stop() { - PIDID=`cat $PID 2>/dev/null` - - if [ -f $PID ]; then - kill $PIDID - fi - - cnt=0 - while kill -0 $PIDID 2>/dev/null - do - cnt=`expr $cnt + 1` - if [ $cnt -gt 24 ] - then - RETVAL=1 - return RETVAL - fi - sleep 5 - done + $BIN $ARGS -k shutdown + $BIN $ARGS -k kill return $RETVAL } diff --git a/shared/additional-modules/tc/manifests/debian.pp b/shared/additional-modules/tc/manifests/debian.pp new file mode 100644 index 0000000..d622f41 --- /dev/null +++ b/shared/additional-modules/tc/manifests/debian.pp @@ -0,0 +1,9 @@ +class tc::debian($config) { + $packages = [ 'ethtool' ] + + init_d_bundle { 'tc': + init_d_prolog => template('tc/debian/init-d-prolog'), + init_d_prerun => template('tc/debian/init-d-prerun'), + require => Class['squid'] + } +} diff --git a/shared/additional-modules/tc/manifests/init.pp b/shared/additional-modules/tc/manifests/init.pp new file mode 100644 index 0000000..e69de29 diff --git a/shared/additional-modules/tc/templates/debian/init-d-prerun b/shared/additional-modules/tc/templates/debian/init-d-prerun new file mode 100644 index 0000000..e69de29 diff --git a/shared/additional-modules/tc/templates/debian/init-d-prolog b/shared/additional-modules/tc/templates/debian/init-d-prolog new file mode 100644 index 0000000..879dccd --- /dev/null +++ b/shared/additional-modules/tc/templates/debian/init-d-prolog @@ -0,0 +1,8 @@ +### BEGIN INIT INFO +# Provides: tc +# Required-Start: $local_fs $remote_fs $network +# Required-Stop: $local_fs $remote_fs $network +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Traffic shaping +### END INIT INFO diff --git a/shared/additional-modules/tc/templates/tc-init.d b/shared/additional-modules/tc/templates/tc-init.d new file mode 100644 index 0000000..9cd1f58 --- /dev/null +++ b/shared/additional-modules/tc/templates/tc-init.d @@ -0,0 +1,23 @@ +<%= scope.function_template('base/init-d-header') %> + +<%= init_d_prolog %> +<%= init_d_prerun %> + +start() { + echo -n "Starting $NAME: " + + <%= scope.lookupvar('tc::debian::config') %> + + echo "done" +} + +stop() { + echo -n "Stopping $NAME: " + + tc qdisc del dev eth0 root + + echo "done" +} + +<%= scope.function_template('base/init-d-actions') %> + diff --git a/shared/additional-modules/varnish/templates/defaults b/shared/additional-modules/varnish/templates/defaults deleted file mode 100644 index bbdc96a..0000000 --- a/shared/additional-modules/varnish/templates/defaults +++ /dev/null @@ -1,3 +0,0 @@ -DAEMON_OPTS="\ - " -