Bug 15839: Koha::Reviews - Add Koha::Review[s] classes
[koha.git] / debian / scripts / koha-stop-zebra
1 #!/bin/sh
2 #
3 # koha-stop-zebra - Stop Zebra for named Koha instances
4 # Copyright 2010  Catalyst IT, Ltd
5
6 # This program is free software: you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation, either version 3 of the License, or
9 # (at your option) any later version.
10
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 # GNU General Public License for more details.
15
16 # You should have received a copy of the GNU General Public License
17 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
18
19 set -e
20
21 # include helper functions
22 if [ -f "/usr/share/koha/bin/koha-functions.sh" ]; then
23     . "/usr/share/koha/bin/koha-functions.sh"
24 else
25     echo "Error: /usr/share/koha/bin/koha-functions.sh not present." 1>&2
26     exit 1
27 fi
28
29 stop_zebra_instance()
30 {
31     local instancename=$1
32
33     local PIDFILE="/var/run/koha/${instancename}/${instancename}-koha-zebra.pid"
34     echo "Stopping Zebra server for $instancename"
35
36     if start-stop-daemon --pidfile ${PIDFILE} --stop --quiet --retry=TERM/30/KILL/5; then
37         return 0;
38     else
39         return 1;
40     fi
41
42 }
43
44 usage()
45 {
46     local scriptname=$0
47     cat <<EOF
48 Stops Zebra for Koha instances.
49
50 Usage: $scriptname instancename1 instancename2...
51
52 EOF
53 }
54
55 # Parse command line.
56 #[ $# -ge 1 ] || ( usage ; die "Missing instance name..." )
57
58 # Loop through the instance names
59 for name in "$@"
60 do
61     if is_instance $name ; then
62         if is_zebra_running $name; then
63             if ! stop_zebra_instance $name; then
64                 warn "Something went wrong stopping Zebra for $name."
65             fi
66         else
67             warn "Zebra already stopped for instance $name."
68         fi
69     else
70         warn "Unknown instance $name."
71     fi
72 done
73
74 exit 0