projects
/
monit-cn.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
* prilagodbe za Wheezy
[monit-cn.git]
/
debian
/
postinst
diff --git
a/debian/postinst
b/debian/postinst
index
7f1b54c
..
d503cf6
100755
(executable)
--- a/
debian/postinst
+++ b/
debian/postinst
@@
-30,11
+30,10
@@
esac
# import CN-functions
. /usr/share/carnet-tools/functions.sh
# import CN-functions
. /usr/share/carnet-tools/functions.sh
-# check if monitrc is an empty template
+# check if monitrc is ours
installfile=1
if [ -e /etc/monit/monitrc ]; then
installfile=1
if [ -e /etc/monit/monitrc ]; then
- lines=$(grep -v '^#' /etc/monit/monitrc | wc -l)
- if [ $lines -lt 4 ]; then
+ if ! grep -q "CARNet package monit-cn" /etc/monit/monitrc; then
installfile=1
mv -f /etc/monit/monitrc /etc/monit/monitrc.dpkg-old
else
installfile=1
mv -f /etc/monit/monitrc /etc/monit/monitrc.dpkg-old
else
@@
-56,17
+55,25
@@
if grep -q '@localhost' /etc/monit/monitrc; then
/etc/monit/monitrc || true
fi
/etc/monit/monitrc || true
fi
-# fix "but not on { changed } bug in monitrc
-cp_check_and_sed '^set alert [^[:space:]]*@[^[:space:]]*$' \
+# migrate to "but not on { instance }" alerting style
+cp_check_and_sed '^set alert [^[:space:]]*@[^[:space:]]* ' \
's/^set alert \([^[:space:]]*@[^[:space:]]*\) .*$/set alert \1 but not on { instance }/g' \
/etc/monit/monitrc || true
's/^set alert \([^[:space:]]*@[^[:space:]]*\) .*$/set alert \1 but not on { instance }/g' \
/etc/monit/monitrc || true
+# migrate from old hierarchy
+if [ -d /etc/monit.d ]; then
+ find /etc/monit.d -type f -print0 | xargs -0r -I% mv % /etc/monit/conf.d || true
+ rmdir /etc/monit.d >/dev/null 2>&1 || true
+fi
+
# (re)generate monit.d files
update-monit.d || true
# disable monit startup
cp_check_and_sed '^startup[[:space:]]*=[[:space:]]*1' \
's/^startup[[:space:]]*=.*/startup=0/g' /etc/default/monit || true
# (re)generate monit.d files
update-monit.d || true
# disable monit startup
cp_check_and_sed '^startup[[:space:]]*=[[:space:]]*1' \
's/^startup[[:space:]]*=.*/startup=0/g' /etc/default/monit || true
+cp_check_and_sed '^START[[:space:]]*=[[:space:]]*yes' \
+ 's/^START[[:space:]]*=.*/START=no/g' /etc/default/monit || true
# systemv part
if ! grep -q 'CARNet package monit-cn' /etc/init.d/monit; then
# systemv part
if ! grep -q 'CARNet package monit-cn' /etc/init.d/monit; then
@@
-95,21
+102,28
@@
EOF
fi
fi
fi
fi
+# if old inittab is referencing sbin, fix it
+if grep -q '/usr/sbin/monit' /etc/inittab; then
+ cp_check_and_sed '/usr/sbin/monit' \
+ 's:/usr/sbin/monit:/usr/bin/monit:g' \
+ /etc/inittab || true
+fi
+
# install as inittab service
# install as inittab service
-if ! grep -q '/usr/sbin/monit' /etc/inittab; then
+if ! grep -q '/usr/bin/monit' /etc/inittab; then
echo "CN: Installing monit service in /etc/inittab"
cp -a /etc/inittab /etc/inittab.$$
cp-update monit-cn /etc/inittab.$$ <<EOF
echo "CN: Installing monit service in /etc/inittab"
cp -a /etc/inittab /etc/inittab.$$
cp-update monit-cn /etc/inittab.$$ <<EOF
-mo:2345:respawn:/usr/sbin/monit -Ic /etc/monit/monitrc
-m0:06:wait:/usr/sbin/monit -Ic /etc/monit/monitrc stop myprocess
+mo:2345:respawn:/usr/bin/monit -Ic /etc/monit/monitrc
+m0:06:wait:/usr/bin/monit -Ic /etc/monit/monitrc stop myprocess
EOF
cp_mv /etc/inittab.$$ /etc/inittab
fi
# reload init, since we have new configuration
echo "CN: (Re)starting monit service, please check /var/log/daemon.log"
EOF
cp_mv /etc/inittab.$$ /etc/inittab
fi
# reload init, since we have new configuration
echo "CN: (Re)starting monit service, please check /var/log/daemon.log"
-pkill -9 -f '/usr/sbin/monit$' || true
-kill -HUP 1
+pkill -9 -f '/usr/bin/monit$' || true
+telinit q
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.