Bug 13791: make koha-list aware of plack
[koha.git] / debian / scripts / koha-foreach
1 #!/bin/sh
2 # koha-foreach -- run a command for each Koha instance
3 # Copyright 2010  Catalyst IT, Ltd
4
5 # This program is free software: you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation, either version 3 of the License, or
8 # (at your option) any later version.
9
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 # GNU General Public License for more details.
14
15 # You should have received a copy of the GNU General Public License
16 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
17
18
19 set -e
20
21 listopts=""
22 while [ ! -z "$1" ]
23 do
24     case "$1" in
25         --email) listopts="$listopts --email";;
26       --noemail) listopts="$listopts --noemail";;
27       --enabled) listopts="$listopts --enabled";;
28      --disabled) listopts="$listopts --disabled";;
29           --sip) listopts="$listopts --sip";;
30         --nosip) listopts="$listopts --nosip";;
31         --plack) listopts="$listopts --plack";;
32       --noplack) listopts="$listopts --noplack";;
33               *) break;;
34     esac
35     shift
36 done
37             
38 for name in $(koha-list $listopts)
39 do
40     cmd=`echo "$@" | sed -e s/__instancename__/${name}/g`
41     (
42     exec 3>&1
43     sudo -u "$name-koha" \
44     env PERL5LIB=/usr/share/koha/lib \
45         KOHA_CONF="/etc/koha/sites/$name/koha-conf.xml" \
46         ${cmd} 2>&1 >&3 | sed -e "s/^/$name: /" >&2 3>&-
47     exec 3>&-
48     ) | sed -e "s/^/$name: /"
49
50 done
51