#!/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 '' > 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 "" >> 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