reviewstats/genresults-openreviews.sh
Matthieu Huin 1b9116f225 Add GERRIT_KEY and GERRIT_SERVER options in scripts
This allows the user to specify the private key to use to connect
to the gerrit server, and to specify which gerrit server to use.

Change-Id: I391e9a81350dfc8820d181392574b2cd8f2c3f6a
2015-03-26 17:53:29 +01:00

57 lines
1.6 KiB
Bash
Executable File

#!/bin/bash
projects=$1
all=0
if [ "$projects" = "" ] ; then
projects=projects/*.json
all=1
fi
mkdir -p results
rm -f results/*-openreviews*
rm -f results/*-openapproved*
if [ -n "${GERRIT_USER}" ] ; then
EXTRA_ARGS="-u ${GERRIT_USER}"
fi
if [ -n "${GERRIT_KEY}" ]; then
EXTRA_ARGS="${EXTRA_ARGS} -k ${GERRIT_KEY}"
fi
if [ -n "${GERRIT_SERVER}" ]; then
EXTRA_ARGS="${EXTRA_ARGS} --server ${GERRIT_SERVER}"
fi
metadata() {
date -u
echo -n "reviewstats HEAD: "
git rev-parse HEAD
echo
}
for project in ${projects} ; do
project_base=$(basename $(echo ${project} | cut -f1 -d'.'))
(metadata > results/${project_base}-openreviews.txt && openreviews -p ${project} -l 15 ${EXTRA_ARGS} -o results/${project_base}-openreviews.txt)
openreviews -p ${project} --html -l 15 ${EXTRA_ARGS} -o results/${project_base}-openreviews.html
(metadata && openapproved -p ${project} ${EXTRA_ARGS}) > results/${project_base}-openapproved.txt
done
if [ "${all}" = "1" ] ; then
(metadata && openreviews -a ${EXTRA_ARGS}) > results/all-openreviews.txt.tmp
for f in results/*-openreviews.txt ; do
(echo && cat $f) >> results/all-openreviews.txt.tmp
done
mv results/all-openreviews.txt.tmp results/all-openreviews.txt
openreviews -a --html ${EXTRA_ARGS} | grep -v '</html>' > results/all-openreviews.html.tmp
for f in results/*-openreviews.html ; do
cat $f | grep -v 'html>' | grep -v 'head>' >> results/all-openreviews.html.tmp
done
echo "</html>" >> results/all-openreviews.html.tmp
mv results/all-openreviews.html.tmp results/all-openreviews.html
(metadata && openapproved -a ${EXTRA_ARGS}) > results/all-openapproved.txt
fi