Lines 1-6
Link Here
|
1 |
#!/bin/sh |
1 |
#!/bin/sh |
2 |
# |
2 |
# |
3 |
# koha-disable -- disable a Koha instance. |
3 |
# koha-disable -- disable Koha instances. |
4 |
# Copyright 2010 Catalyst IT, Ltd |
4 |
# Copyright 2010 Catalyst IT, Ltd |
5 |
# |
5 |
# |
6 |
# This program is free software: you can redistribute it and/or modify |
6 |
# This program is free software: you can redistribute it and/or modify |
Lines 20-39
Link Here
|
20 |
set -e |
20 |
set -e |
21 |
|
21 |
|
22 |
|
22 |
|
23 |
die() { |
23 |
die() |
|
|
24 |
{ |
24 |
echo "$@" 1>&2 |
25 |
echo "$@" 1>&2 |
25 |
exit 1 |
26 |
exit 1 |
26 |
} |
27 |
} |
27 |
|
28 |
|
|
|
29 |
warn() |
30 |
{ |
31 |
echo "$@" 1>&2 |
32 |
} |
33 |
|
34 |
is_enabled() |
35 |
{ |
36 |
local instancename=$1 |
37 |
|
38 |
if ! is_instance $instancename; then |
39 |
return 1 |
40 |
fi |
41 |
|
42 |
if grep -q '^[[:space:]]*Include /etc/koha/apache-shared-disable.conf' \ |
43 |
"/etc/apache2/sites-available/$instancename" ; then |
44 |
return 1 |
45 |
else |
46 |
return 0 |
47 |
fi |
48 |
} |
49 |
|
50 |
is_instance() |
51 |
{ |
52 |
local instancename=$1 |
53 |
|
54 |
if find /etc/koha/sites -mindepth 1 -maxdepth 1 \ |
55 |
-type d -printf '%f\n'\ |
56 |
| grep -q -x $instancename ; then |
57 |
return 0 |
58 |
else |
59 |
return 1 |
60 |
fi |
61 |
} |
62 |
|
63 |
disable_instance() |
64 |
{ |
65 |
local instancename=$1 |
66 |
|
67 |
if is_enabled $instancename; then |
68 |
sed -i 's:^\s*#\(\s*Include /etc/koha/apache-shared-disable.conf\)$:\1:' \ |
69 |
"/etc/apache2/sites-available/$instancename" |
70 |
return 0 |
71 |
else |
72 |
return 1 |
73 |
fi |
74 |
} |
28 |
|
75 |
|
29 |
# Parse command line. |
76 |
# Parse command line. |
30 |
[ "$#" = 1 ] || die "Usage: $0 instancename..." |
77 |
[ "$#" > 1 ] || die "Usage: $0 instancename..." |
31 |
|
78 |
|
|
|
79 |
restart_apache="no" |
32 |
|
80 |
|
33 |
for name in "$@" |
81 |
for name in "$@" |
34 |
do |
82 |
do |
35 |
sed -i 's:^\s*#\(\s*Include /etc/koha/apache-shared-disable.conf\)$:\1:' \ |
83 |
if is_instance $name ; then |
36 |
"/etc/apache2/sites-available/$name" |
84 |
if disable_instance $name; then |
|
|
85 |
restart_apache="yes" |
86 |
else |
87 |
warn "Instance $name already disabled." |
88 |
fi |
89 |
else |
90 |
warn "Unknown instance $name." |
91 |
fi |
37 |
done |
92 |
done |
38 |
|
93 |
|
39 |
/etc/init.d/apache2 restart |
94 |
if [ "$restart_apache" = "yes" ]; then |
|
|
95 |
/etc/init.d/apache2 restart |
96 |
fi |
97 |
|
98 |
exit 0 |
99 |
|
40 |
- |
|
|