summaryrefslogtreecommitdiff
path: root/qa/734
diff options
context:
space:
mode:
Diffstat (limited to 'qa/734')
-rwxr-xr-xqa/73442
1 files changed, 42 insertions, 0 deletions
diff --git a/qa/734 b/qa/734
new file mode 100755
index 0000000..4ab0b0d
--- /dev/null
+++ b/qa/734
@@ -0,0 +1,42 @@
+#!/bin/sh
+# PCP QA Test No. 734
+# Exercise bug in pmGetContextHostName with pmcd.hostname metric.
+#
+# Copyright (c) 2014 Red Hat.
+#
+
+seq=`basename $0`
+echo "QA output created by $seq"
+
+# get standard environment, filters and checks
+. ./common.product
+. ./common.filter
+. ./common.check
+
+status=1 # failure is the default!
+$sudo rm -rf $tmp.* $seq.full
+trap "cd $here; rm -rf $tmp.*; exit \$status" 0 1 2 3 15
+
+# prefer an old host without pmcd.hostname, however the test is still
+# useful even with more recent remotes (exercises different paths).
+oldhost=`./getpmcdhosts -L -n 1 -v 'pcp<3.8.4' 2>$seq.full`
+[ -z "$oldhost" ] && oldhost=`./getpmcdhosts -L -n 1`
+[ -z "$oldhost" ] && _notrun "No remote hosts available"
+short_oldhost=`echo $oldhost | sed -e 's/\..*//'`
+
+# real QA test starts here
+set -- `pmprobe -h localhost -v pmcd.hostname`
+eval newhost=$3
+short_newhost=`echo $newhost | sed -e 's/\..*//'`
+
+echo "using oldhost $oldhost ($short_oldhost)" >> $seq.full
+echo "using newhost $newhost ($short_newhost)" >> $seq.full
+
+pmstat -t 0.2 -s 2 -h localhost -h $oldhost > $tmp.out
+grep -q $short_newhost $tmp.out && echo "Correct local hostname in pmstat output"
+grep -q $short_oldhost $tmp.out && echo "Correct remote hostname in pmstat output"
+cat $tmp.out >> $seq.full
+
+# success, all done
+status=0
+exit