[zopeorg-checkins] CVS: NZO_SiteLayout/bin - squidctl.in:1.2
Chris McDonough
chrism at zope.com
Thu May 2 01:18:56 EDT 2002
Update of /cvs-zopeorg/NZO_SiteLayout/bin
In directory cvs.zope.org:/tmp/cvs-serv3569/bin
Modified Files:
squidctl.in
Log Message:
Changes to make Squid work.
=== NZO_SiteLayout/bin/squidctl.in 1.1.1.1 => 1.2 ===
+##############################################################################
+#
+# Copyright (c) 2001 Zope Corporation and Contributors. All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.0 (ZPL). A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE
+#
+##############################################################################
+
+# squidctl -- a script to manage a squid server suitable in rc scripts
+# by Chris McDonough (chrism at zope.com)
+
+ETCDIR=%ETCDIR%
+BINDIR=%BINDIR%
+VARDIR=%VARDIR%
+LOGDIR=%LOGDIR%
+
+# check if the squid conf file is present
+[ -f $ETCDIR/squid.conf ] || exit 1
+
+# determine the name of the squid binary
+[ -f $BINDIR/squid ] && SQUID=$BINDIR/squid
+
+# find the cache_dir
+confline=`grep ^cache_dir $ETCDIR/squid.conf`
+#echo "confline is $confline"
+if [ -n "$confline" ]
+ then
+ CACHE_SWAP=`echo $confline|cut --delimiter=" " --fields=3`;
+ else
+ CACHE_SWAP=$VARDIR/cache;
+fi
+
+# find the pid filename
+confline=`grep ^pid_filename $ETCDIR/squid.conf`;
+if [ -n "$confline" ]
+ then
+ PID_FILENAME=`echo $confline|cut --delimiter=" " --fields=2`;
+ else
+ PID_FILENAME=$VARDIR/squid.pid;
+fi
+
+# find the cache.log filename
+confline=`grep ^cache_log $ETCDIR/squid.conf`;
+if [ -n "$confline" ]
+ then
+ CACHELOG_FILENAME=`echo $confline|cut --delimiter=" " --fields=2`;
+ else
+ CACHELOG_FILENAME=$LOGDIR/cache.log;
+fi
+
+SQUID_OPTS="-f %ETCDIR%/squid.conf"
+RETVAL=0
+
+case "$1" in
+
+start)
+ # make cache_dir if it doesn't exist
+ if [ ! -d $CACHE_SWAP/00 ]; then
+ echo -n "Initializing squid cache_dir $CACHE_SWAP... "
+ $SQUID $SQUID_OPTS -z -F 2>/dev/null
+ fi
+
+ # start squid
+ WESTARTED=0
+ $SQUID $SQUID_OPTS &
+ RETVAL=$?
+ if [ $RETVAL -eq 0 ]; then
+ for dummy in 0 1 2 3 4 5 6 7 8 9; do
+ if [ -f $PID_FILENAME ]; then
+ break
+ else
+ echo -n "."; sleep 2
+ fi
+ done
+ else
+ echo "Start failed: error code $RETVAL"
+ break
+ fi
+
+ if [ -f $PID_FILENAME ]; then
+ echo "Started"
+ else
+ echo "Start failed: check $CACHELOG_FILENAME"
+ fi
+
+ ;;
+
+stop)
+ if [ ! -f $PID_FILENAME ]; then
+ echo "Could not stop (no pidfile $PID_FILENAME, no running copy?)"
+ exit 1
+ fi
+ $SQUID $SQUID_OPTS -k shutdown &
+ RETVAL=$?
+ if [ $RETVAL -eq 0 ] ; then
+ for dummy in 0 1 2 3 4 5 6 7 8 9; do
+ if [ -f $PID_FILENAME ]; then
+ echo -n "."; sleep 2
+ else
+ break
+ fi
+ done
+ else
+ echo "Error stopping: $RETVAL"
+ fi
+
+ if [ ! -f $PID_FILENAME ]; then
+ echo "Stopped"
+ else
+ echo "Stop failed: check $CACHELOG_FILENAME"
+ fi
+ ;;
+
+reload)
+ $SQUID $SQUID_OPTS -k reconfigure
+ exit $?
+ ;;
+
+rotate)
+ $SQUID $SQUID_OPTS -k rotate
+ exit $?
+ ;;
+
+restart)
+ $0 stop
+ $0 start
+ ;;
+
+*)
+echo "Usage: $0 {start|stop|reload|restart|rotate}"
+exit 1
+esac
+
+exit $RETVAL
More information about the zopeorg-checkins
mailing list