diff --git a/redhat/Makefile.am b/redhat/Makefile.am index 04c3a90489..ac36126873 100644 --- a/redhat/Makefile.am +++ b/redhat/Makefile.am @@ -7,4 +7,5 @@ EXTRA_DIST = \ varnish.logrotate \ varnish.spec \ varnish.sysconfig \ - varnishlog.initrc + varnishlog.initrc \ + varnishncsa.initrc diff --git a/redhat/varnish.logrotate b/redhat/varnish.logrotate index b79c95de21..382f3d43ea 100644 --- a/redhat/varnish.logrotate +++ b/redhat/varnish.logrotate @@ -1,8 +1,9 @@ -/var/log/varnish/varnish.log { +/var/log/varnish/*.log { missingok notifempty sharedscripts postrotate /bin/kill -HUP `cat /var/run/varnish/varnishlog.pid 2>/dev/null` 2> /dev/null || true + /bin/kill -HUP `cat /var/run/varnish/varnishncsa.pid 2>/dev/null` 2> /dev/null || true endscript } diff --git a/redhat/varnish.spec b/redhat/varnish.spec index 1e7ea349ec..a1dace0dae 100644 --- a/redhat/varnish.spec +++ b/redhat/varnish.spec @@ -1,7 +1,7 @@ Summary: Varnish is a high-performance HTTP accelerator Name: varnish Version: 2.0 -Release: 0.7.20080908svn3173%{?dist} +Release: 0.9.20080912svn3184%{?dist} License: BSD Group: System Environment/Daemons URL: http://www.varnish-cache.org/ @@ -110,11 +110,12 @@ EOF tail -n +11 etc/default.vcl >> redhat/default.vcl -%if "%dist" == "el4" +%if 0%{?fedora}%{?rhel} == 0 || 0%{?rhel} <= 4 && 0%{?fedora} <= 8 + # Old style daemon function sed -i 's,--pidfile \$pidfile,,g; s,status -p \$pidfile,status,g; s,killproc -p \$pidfile,killproc,g' \ - redhat/varnish.initrc redhat/varnishlog.initrc + redhat/varnish.initrc redhat/varnishlog.initrc redhat/varnishncsa.initrc %endif %check @@ -138,6 +139,7 @@ mkdir -p %{buildroot}/var/run/varnish %{__install} -D -m 0644 redhat/varnish.logrotate %{buildroot}%{_sysconfdir}/logrotate.d/varnish %{__install} -D -m 0755 redhat/varnish.initrc %{buildroot}%{_initrddir}/varnish %{__install} -D -m 0755 redhat/varnishlog.initrc %{buildroot}%{_initrddir}/varnishlog +%{__install} -D -m 0755 redhat/varnishncsa.initrc %{buildroot}%{_initrddir}/varnishncsa %clean rm -rf %{buildroot} @@ -158,6 +160,7 @@ rm -rf %{buildroot} %config(noreplace) %{_sysconfdir}/logrotate.d/varnish %{_initrddir}/varnish %{_initrddir}/varnishlog +%{_initrddir}/varnishncsa %files libs %defattr(-,root,root,-) @@ -196,19 +199,23 @@ exit 0 %post /sbin/chkconfig --add varnish /sbin/chkconfig --add varnishlog +/sbin/chkconfig --add varnishncsa %preun if [ $1 -lt 1 ]; then /sbin/service varnish stop > /dev/null 2>&1 /sbin/service varnishlog stop > /dev/null 2>&1 + /sbin/service varnishncsa stop > /dev/null 2>%1 /sbin/chkconfig --del varnish /sbin/chkconfig --del varnishlog + /sbin/chkconfig --del varnishncsa fi %postun if [ $1 -ge 1 ]; then /sbin/service varnish condrestart > /dev/null 2>&1 /sbin/service varnishlog condrestart > /dev/null 2>&1 + /sbin/service varnishncsa condrestart > /dev/null 2>&1 fi %post libs -p /sbin/ldconfig @@ -216,6 +223,10 @@ fi %postun libs -p /sbin/ldconfig %changelog +* Fri Sep 12 2008 Ingvar Hagelund - 2.0-0.8.20080912svn3184 +- Added varnisnsca init script (Colin Hill) +- Corrected varnishlog init script (Colin Hill) + * Tue Sep 02 2008 Ingvar Hagelund - 2.0-0.7.beta1 - Added a hack that changes the ports for 64bits builds, so they can run in parallell with 32bits build on same build host. diff --git a/redhat/varnishlog.initrc b/redhat/varnishlog.initrc index 58745a1619..e22be7df5f 100644 --- a/redhat/varnishlog.initrc +++ b/redhat/varnishlog.initrc @@ -48,7 +48,7 @@ start() { } stop() { - echo -n "Stopping varnish daemon: " + echo -n "Stopping varnish logging daemon: " killproc $prog retval=$? echo diff --git a/redhat/varnishncsa.initrc b/redhat/varnishncsa.initrc new file mode 100644 index 0000000000..2e937a6b74 --- /dev/null +++ b/redhat/varnishncsa.initrc @@ -0,0 +1,114 @@ +#! /bin/sh +# +# varnishncsa Control the varnish nsca logging daemon +# +# chkconfig: - 90 10 +# description: Varnish logging daemon +# processname: varnishncsa +# config: +# pidfile: /var/run/varnish/varnishncsa.pid + +### BEGIN INIT INFO +# Provides: varnishncsa +# Required-Start: $network $local_fs $remote_fs +# Required-Stop: $network $local_fs $remote_fs +# Short-Description: start and stop varnishncsa +# Description: Varnish HTTP accelerator logging daemon +### END INIT INFO + +# Source function library. +. /etc/init.d/functions + +retval=0 +pidfile="/var/run/varnishncsa.pid" +lockfile="/var/lock/subsys/varnishncsa" +logfile="/var/log/varnish/varnish.log" + +exec="/usr/bin/varnishncsa" +prog="varnishncsa" + +DAEMON_OPTS="-a -w $logfile -D -P $pidfile" + +# Include defaults +[ -e /etc/sysconfig/varnishncsa ] && . /etc/sysconfig/varnishncsa + +start() { + + if [ ! -x $exec ] + then + echo $exec not found + exit 5 + fi + + echo -n "Starting varnish ncsa logging daemon: " + + daemon --pidfile $pidfile $exec "$DAEMON_OPTS" + echo + return $retval +} + +stop() { + echo -n "Stopping varnish ncsa logging daemon: " + killproc $prog + retval=$? + echo + [ $retval -eq 0 ] && rm -f $lockfile + return $retval +} + +restart() { + stop + start +} + +reload() { + restart +} + +force_reload() { + restart +} + +rh_status() { + status -p $pidfile $prog +} + +rh_status_q() { + rh_status >/dev/null 2>&1 +} + +# See how we were called. +case "$1" in + start) + rh_status_q && exit 0 + $1 + ;; + stop) + rh_status_q || exit 0 + $1 + ;; + restart) + $1 + ;; + reload) + rh_status_q || exit 7 + $1 + ;; + force-reload) + force_reload + ;; + status) + rh_status + ;; + condrestart|try-restart) + rh_status_q || exit 0 + restart + ;; + *) + echo "Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}" + + exit 2 +esac + +exit $? +