/var/lib/pcp/testsuite/642 is in pcp-testsuite 3.10.8build1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 | #! /bin/sh
# PCP QA Test No. 642
# concurrent PMDA installs trash the PMNS?
#
# Copyright (c) 2015 Red Hat.
# Copyright (c) 1995-2002 Silicon Graphics, Inc. All Rights Reserved.
#
seq=`basename $0`
echo "QA output created by $seq"
# get standard filters
. ./common.product
. ./common.filter
. ./common.check
[ -f $PCP_PMDAS_DIR/trace/pmdatrace ] || _notrun "trace pmda not installed"
[ -f $PCP_PMDAS_DIR/sendmail/pmdasendmail ] || _notrun "sendmail pmda not installed"
rm -f $seq.out $seq.full
if [ $PCP_VER -ge 30813 ]
then
ln $seq.out.4 $seq.out || exit 1
elif [ $PCP_VER -ge 30801 ]
then
ln $seq.out.3 $seq.out || exit 1
elif [ $PCP_VER -ge 30600 ]
then
ln $seq.out.2 $seq.out || exit 1
else
ln $seq.out.1 $seq.out || exit 1
fi
status=0 # success is the default!
$sudo rm -rf $tmp.*
done_clean=false
pcp >>$here/$seq.full
pminfo trace >/dev/null 2>&1
remove_trace=$?
echo "remove_trace=$remove_trace" >>$here/$seq.full
pminfo trivial >/dev/null 2>&1
remove_trivial=$?
echo "remove_trivial=$remove_trivial" >>$here/$seq.full
pminfo sendmail >/dev/null 2>&1
remove_sendmail=$?
echo "remove_sendmail=$remove_sendmail" >>$here/$seq.full
_setup_pmdas()
{
cd $PCP_PMDAS_DIR
for pmda in trivial simple sample sendmail trace
do
cd $pmda
$sudo ./Install -e -Q </dev/null >>$here/$seq.full 2>&1
cd ..
done
}
_cleanup()
{
if $done_clean
then
:
else
if [ $remove_trace -ne 0 ]
then
cd $PCP_PMDAS_DIR/trace
$sudo ./Remove >>$here/$seq.full 2>&1
fi
if [ $remove_trivial -ne 0 ]
then
cd $PCP_PMDAS_DIR/trivial
$sudo ./Remove >>$here/$seq.full 2>&1
fi
if [ $remove_sendmail -ne 0 ]
then
cd $PCP_PMDAS_DIR/sendmail
$sudo ./Remove >>$here/$seq.full 2>&1
fi
_restore_config $PCP_PMCDCONF_PATH
$sudo $PCP_RC_DIR/pcp restart | _filter_pcp_start
_wait_for_pmcd
_wait_for_pmlogger
done_clean=true
fi
$sudo rm -f $tmp.*
exit $status
}
trap "_cleanup; exit \$status" 0 1 2 3 15
# copy the pmcd config file to restore state later.
_save_config $PCP_PMCDCONF_PATH
# real QA test starts here
unset ROOT TOOLROOT MAKEFLAGS
_setup_pmdas
pminfo -n $PCP_VAR_DIR/pmns/root | LC_COLLATE=POSIX sort >$tmp.pmns.start
# do 'em in parallel
#
cd $PCP_PMDAS_DIR
i=1
for pmda in trivial simple sample sendmail trace
do
cd $pmda
$sudo ./Install -e -Q </dev/null >$tmp.out.$i 2>&1 &
cd ..
i=`expr $i + 1`
done
wait
for i in 1 2 3 4 5
do
echo
echo "=== install #$i ==="
_filter_pmda_install <$tmp.out.$i
done
echo
echo "=== PMNS differences (none expected) ==="
pminfo -n $PCP_VAR_DIR/pmns/root \
| LC_COLLATE=POSIX sort \
| diff - $tmp.pmns.start
echo
# success, all done
exit
|