summaryrefslogtreecommitdiff
path: root/zshrc
diff options
context:
space:
mode:
authorPeter Palfrader <peter@palfrader.org>2008-12-11 14:30:13 +0000
committerweasel <weasel@bc3d92e2-beff-0310-a7cd-cc87d7ac0ede>2008-12-11 14:30:13 +0000
commit0a65c98322672f2841013d08bdc01a374a3cfaa4 (patch)
treebb4beae0c8b653bcb15ef25f2ddf8f06be235744 /zshrc
parente8bdeb6693f88ece16acae62697a86fc8e3d4426 (diff)
check in all my functions
git-svn-id: svn+ssh://asteria.noreply.org/svn/weaselutils/trunk@375 bc3d92e2-beff-0310-a7cd-cc87d7ac0ede
Diffstat (limited to 'zshrc')
-rw-r--r--zshrc112
1 files changed, 87 insertions, 25 deletions
diff --git a/zshrc b/zshrc
index 1bdb510..2a3c9b4 100644
--- a/zshrc
+++ b/zshrc
@@ -312,26 +312,16 @@ cols() {
upgrade-porter-chroots() {
cd
- for i in `cat ~/.csshrc | grep '^debporterbox' | sed -e 's/^.*=//' | tr ' ' '\n'`; do
+ for i in $DEBPORTERHOSTS; do
mkdir hosts/chroot-$i 2>/dev/null || continue;
echo $i;
preexec $i;
ssh $i -t 'sudo /usr/sbin/upgrade-porter-chroots'
- #ssh $i -t 'cd ~/chroot &&
- # for i in */; do
- # echo;
- # echo `hostname` $i;
- # echo;
- # sudo chroot $i apt-get update &&
- # sudo chroot $i apt-get dist-upgrade -y &&
- # sudo chroot $i apt-get clean;
- # sudo chroot $i apt-get autoremove;
- # done';
done
}
upgrade-debian-hosts() {
cd
- for i in `cat ~/.csshrc | grep '^deb' | sed -e 's/^.*=//' | tr ' ' '\n'`; do
+ for i in $DEBHOSTS; do
mkdir hosts/$i 2>/dev/null || continue;
echo $i;
preexec $i;
@@ -344,7 +334,7 @@ upgrade-debian-hosts() {
}
upgrade-systems() {
cd
- for i in `cat ~/.csshrc | tr ' ' '\n' | grep @`; do
+ for i in $HOSTS; do
mkdir hosts/$i 2>/dev/null || continue;
echo $i;
preexec $i;
@@ -357,19 +347,91 @@ upgrade-systems() {
apt-get clean';
done
}
-upgrade-came() {
- cd
- for i in $HOSTS; do
- mkdir hosts/$i 2>/dev/null || continue;
- echo $i;
+upgrade-debian-samhain() {
+ for i in $DEBHOSTS; do
+ mkdir hosts/$i 2> /dev/null || continue;
+ echo $i
preexec $i;
- ssh -l root $i -t 'apt-get update &&
- if [ -e /usr/bin/apt-get.distrib ]; then
- aptitude dist-upgrade;
- else
- apt-get dist-upgrade;
- fi &&
- apt-get clean';
+ ssh $i -t '
+ check() {
+ sudo /usr/sbin/samhain -t check -i -p err -s none -l none -m none
+ };
+ reinit() {
+ if [ "`check 2>&1 | grep "^CRIT" | wc -l`" != 0 ]; then
+ echo Updating samhain db...
+ sudo samhain --foreground -t update
+ echo done.
+ fi
+ }
+ if [ -x /usr/sbin/samhain ]; then
+ t="`tempfile`";
+ trap "rm -f $t" 0 1 2 5 15;
+ check > "$t" 2>&1;
+ if [ "`grep "^CRIT" "$t" | wc -l`" != 0 ]; then
+ echo "samhain db errors found:";
+ sed -e "s/.*path=<\([^>]*\)>, .*/\1/" "$t";
+ echo;
+ echo "Enter 'y' to continue upgrade and update samhaindb for `hostname`";
+ read ans;
+ [ "$ans" = "y" ] || exit;
+ fi;
+ fi
+ sudo apt-get update &&
+ sudo apt-get dist-upgrade &&
+ sudo apt-get clean &&
+ [ -x /usr/sbin/samhain ] && reinit
+ ';
+ done
+}
+
+reinit-debian-samhain-one() {
+ host=$1
+ if [ "$host" = "${host%%.debian.org}" ]; then
+ host="$host.debian.org"
+ fi
+ echo $host
+ preexec $host;
+ ssh $host -t '
+ check() {
+ sudo /usr/sbin/samhain -t check -i -p err -s none -l none -m none
+ };
+ if [ -x /usr/sbin/samhain ]; then
+ t="`tempfile`";
+ trap "rm -f $t" 0 1 2 5 15;
+ check > "$t" 2>&1;
+ if [ "`grep "^CRIT" "$t" | wc -l`" != 0 ]; then
+ echo "samhain db errors found:";
+ sed -e "s/.*path=<\([^>]*\)>, .*/\1/" "$t";
+ echo;
+ echo "Enter 'y' to continue upgrade and update samhaindb for `hostname`";
+ read ans;
+ [ "$ans" = "y" ] || exit;
+
+ echo Updating samhain db...
+ sudo samhain --foreground -t update
+ echo done.
+ fi;
+ fi
+ ';
+}
+reinit-debian-samhain() {
+ for i in $DEBHOSTS; do
+ mkdir hosts/$i 2> /dev/null || continue;
+ reinit-debian-samhain-one $i
+ done
+}
+
+update-debian-exim() {
+ for i in $DEBHOSTS; do
+ mkdir hosts/$i 2> /dev/null || continue;
+ echo $i
+ preexec $i;
+ ssh $i -t '
+ [ -d /etc/exim4 ] || exit;
+ cd /etc/exim4 &&
+ sudo ./Git/bin/update &&
+ sudo env -i /etc/init.d/exim4 reload
+ ';
done
}