|
|
- #!/bin/bash
-
- BASE_COMMIT=95a80f598fc57c60aed3737c60ee437d94eb8540
- LABS=`git diff $BASE_COMMIT --stat | grep -o "lab[0-9]" | uniq`
-
- if [ "$LABS" = "" ]; then
- echo "No solutions provided. Skip this time."
- exit 0
- fi
-
- failed=0
-
- pwd=`pwd`
- summary=$pwd/.score_summary
-
- echo -n > $summary
- for lab in $LABS; do
- pushd $lab > /dev/null
- if ! make grade > .score 2>&1; then
- failed=`echo $lab | grep -o [0-9]`
- fi
- score=`egrep -o "Score: [0-9]+/[0-9]+" .score`
- echo "$lab $score" >> $summary
- make clean > /dev/null
- popd > /dev/null
- done
-
- echo "Labs with changes detected: " $LABS
- echo
- echo "============================== Summary =============================="
- cat $summary
- rm $summary
- echo
-
- for lab in $LABS; do
- echo "================================ $lab ==============================="
- cat $lab/.score
- rm $lab/.score
- done
-
- exit $failed
|