summaryrefslogtreecommitdiff
path: root/qa/565
diff options
context:
space:
mode:
Diffstat (limited to 'qa/565')
-rwxr-xr-xqa/565137
1 files changed, 137 insertions, 0 deletions
diff --git a/qa/565 b/qa/565
new file mode 100755
index 0000000..59602d4
--- /dev/null
+++ b/qa/565
@@ -0,0 +1,137 @@
+#! /bin/sh
+# PCP QA Test No. 565
+# Install/Remove for sendmail PMDA
+#
+# Copyright (c) 1995-2002 Silicon Graphics, Inc. All Rights Reserved.
+#
+
+seq=`basename $0`
+echo "QA output created by $seq"
+
+# get standard environment, filters and checks
+. ./common.product
+. ./common.filter
+. ./common.check
+
+rm -f $seq.out
+case $PCP_PLATFORM
+in
+ irix)
+ ln $seq.irix $seq.out || exit 1
+ ;;
+ linux|darwin|solaris)
+ # same output for Linux, Mac OS X and OpenSolaris
+ if [ $PCP_VER -lt 3600 ]
+ then
+ ln $seq.linux $seq.out || exit 1
+ else
+ ln $seq.out.2 $seq.out || exit 1
+ fi
+ ;;
+ *)
+ _notrun "Need qualified output for $PCP_PLATFORM"
+ ;;
+esac
+
+status=1 # failure is the default!
+done_clean=false
+
+_cleanup()
+{
+ if $done_clean
+ then
+ :
+ else
+ [ -f $tmp.pmcd.conf ] && $sudo mv $tmp.pmcd.conf $PCP_PMCDCONF_PATH
+ rm -f $tmp.*
+ $sudo $PCP_RC_DIR/pcp restart | _filter_pcp_start
+ _wait_for_pmcd
+ if $install_on_cleanup
+ then
+ ( cd $PCP_PMDAS_DIR/sendmail; $sudo ./Install </dev/null >/dev/null 2>&1 )
+ else
+ ( cd $PCP_PMDAS_DIR/sendmail; $sudo ./Remove </dev/null >/dev/null 2>&1 )
+ fi
+ done_clean=true
+ fi
+ exit $status
+}
+
+install_on_cleanup=false
+pminfo sendmail >/dev/null 2>&1 && install_on_cleanup=true
+
+trap "_cleanup" 0 1 2 3 15
+
+_filter()
+{
+ sed \
+ -e 's/.* \(hash table entries\)/ NNN \1/' \
+ -e 's/.* \(non-leaf nodes\)/ NNN \1/' \
+ -e 's/.* \(leaf nodes\)/ NNN \1/' \
+ -e 's/.* \(bytes of symbol table\)/ NNN \1/' \
+ -e 's/[0-9][0-9]* warnings, //' \
+ -e 's/metrics and [0-9][0-9]*/metrics and N/' \
+ -e '/^sendmail\..* No value(s) available/d' \
+ -e "/make: Nothing to be done for .install./d" \
+ -e '/^Installing .mchart view*/d' \
+ -e '/Installing files \.\.\./d' \
+ -e '/Removing files \.\.\./d'
+}
+
+# real QA test starts here
+home=$PCP_PMDAS_DIR
+iam=sendmail
+if [ ! -d $home/$iam ]
+then
+ echo "Where is $home/$iam?"
+ exit 1
+fi
+cd $home/$iam
+unset ROOT MAKEFLAGS
+
+# copy the pmcd config file to restore state later.
+cp $PCP_PMCDCONF_PATH $tmp.pmcd.conf
+
+# start from a known starting point
+$sudo ./Remove >/dev/null 2>&1
+
+if [ -f Makefile ] ; then
+ if $sudo make clobber >$tmp.out 2>&1
+ then
+ :
+ else
+ cat $tmp.out
+ echo "Arrgh, make clobber failed"
+ exit
+ fi
+
+ if $sudo make >$tmp.out 2>&1
+ then
+ :
+ else
+ cat $tmp.out
+ echo "Arrgh, make failed"
+ exit
+ fi
+fi
+
+echo
+echo "=== default $iam agent installation ==="
+$sudo ./Remove >$tmp.out 2>&1
+$sudo ./Install </dev/null >>$tmp.out 2>&1
+
+# cp $tmp.out $here/$seq.full
+
+_filter <$tmp.out
+
+echo
+echo "=== validate pmns ==="
+pminfo $iam
+
+echo
+echo "=== remove $iam agent ==="
+$sudo ./Remove >$tmp.out 2>&1
+_filter <$tmp.out
+
+status=0
+exit