diff --git a/README.md b/README.md index 0fbe574..7ebd68f 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,16 @@ # DOCGroup scoreboard configuration files +## Adding to the scoreboard + Edit one of the xml files in this repository to add builds to the [DOCGroup](https://github.com/DOCGroup) scoreboard. These xml files will be used to generate the [DOCGroup scoreboard](https://www.dre.vanderbilt.edu/scoreboard/). + +## Running locally + +To run locally, run `naboo_dre.sh` with these environment variables: + +1. `AUTOBUILD_ROOT` - Path to [autobuild](https://github.com/DOCGroup/autobuild) to use. +1. `OUTPUT` - Path to destination of the web site. + +Otherwise they default to hardcoded paths that you probably don't want to use. diff --git a/ace.xml b/ace.xml index dedea0d..b85ca80 100644 --- a/ace.xml +++ b/ace.xml @@ -1,6 +1,16 @@ + + + + + -

ACE Scoreboard

+
+

ACE Scoreboard

+ +

This is the ACE scoreboard. It shows all the OS/platform combinations on which ACE is tested everyday. diff --git a/ace6.xml b/ace6.xml index 95ef072..55dca63 100644 --- a/ace6.xml +++ b/ace6.xml @@ -1,6 +1,16 @@ + + + + + -

ACE 6.5.x Scoreboard

+
+

ACE 6.5.x Scoreboard

+ +

This is the ACE scoreboard for ACE 6.5.x. It shows all the OS/platform combinations on which ACE 6.5.x is tested everyday. diff --git a/naboo_dre.sh b/naboo_dre.sh index e9228b5..2ad7a56 100755 --- a/naboo_dre.sh +++ b/naboo_dre.sh @@ -1,40 +1,56 @@ -#!/bin/sh +#!/bin/bash -PERLLIB=autobuild -export PERLLIB -OUTPUTDIR=/export/web/www/scoreboard -export OUTPUTDIR -CONFIGDIR=$HOME/scoreboard -export CONFIGDIR +set -ue -cd $HOME/scoreboard -git pull -cd $HOME/autobuild +OUTPUT="${OUTPUT:-/export/web/www/scoreboard}" +if ! [ -d "$OUTPUT" ] +then + echo "\$OUTPUT directory ($OUTPUT) does not exist" + exit 1 +fi + +SCOREBOARD_ROOT=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +cd "$SCOREBOARD_ROOT" git pull -# Generate the index page! -/usr/bin/perl ./scoreboard.pl -v -d $OUTPUTDIR -i $CONFIGDIR/index.xml 2>&1 & -# Generate other pages! -/usr/bin/perl ./scoreboard.pl -b -d $OUTPUTDIR -f $CONFIGDIR/ace.xml -o ace.html 2>&1 & -/usr/bin/perl ./scoreboard.pl -b -d $OUTPUTDIR -f $CONFIGDIR/ace6.xml -o ace6.html 2>&1 & -/usr/bin/perl ./scoreboard.pl -b -d $OUTPUTDIR -f $CONFIGDIR/tao.xml -o tao.html 2>&1 & -/usr/bin/perl ./scoreboard.pl -b -d $OUTPUTDIR -f $CONFIGDIR/tao2.xml -o tao2.html 2>&1 & +AUTOBUILD_ROOT="${AUTOBUILD_ROOT:-$HOME/autobuild}" +cd "$AUTOBUILD_ROOT" +git pull -# Generate the test matrices! -##testmatrix/update_scoreboard.sh 2>&1 & +groups=( + ace + ace6 + tao + tao2 +) -# Generate integrated pages! -/usr/bin/perl ./scoreboard.pl -b -d /export/web/www/scoreboard -z -j $CONFIGDIR/ace.xml,$CONFIGDIR/ace6.xml,$CONFIGDIR/tao.xml,$CONFIGDIR/tao2.xml 2>&1 & +# Generate the index page! +/usr/bin/perl ./scoreboard.pl -v -d "$OUTPUT" -i "$SCOREBOARD_ROOT/index.xml" -#Generate build matrix -#/usr/bin/perl buildmatrix/buildmatrix.pl $CONFIGDIR/ace.xml $OUTPUTDIR 1 > /project/taotmp/scoreboard/buildmatrix/output.html 2> /tmp/build.out +xml_files=() +for group in ${groups[@]} +do + echo "Generating pages for $group..." + xml_file="$SCOREBOARD_ROOT/$group.xml" + xml_files+=("$xml_file") -#/usr/bin/perl buildmatrix/buildmatrix.pl $CONFIGDIR/tao.xml $OUTPUTDIR 1 > /project/taotmp/scoreboard/buildmatrix/tao.html 2> /tmp/build.out + # Generate the normal pages for this group + /usr/bin/perl ./scoreboard.pl -b -d "$OUTPUT" -f "$xml_file" -o "$group.html" -v -#Remove the obsolete db files and give the list of available db files. -##matrix_database/RemoveAndListCompilationDbFiles.sh + # Generate the text matrix pages for this group + ./matrix.py "${OUTPUT}" -# -wait + # Remove the builds.json for this group + rm "$OUTPUT/builds.json" +done -exit 0 +# Generate integrated pages! +echo "Generating integrated pages..." +function join_by { + local d=${1-} f=${2-} + if shift 2 + then + printf %s "$f" "${@/#/$d}" + fi +} +/usr/bin/perl ./scoreboard.pl -b -d "$OUTPUT" -z -j "$(join_by , ${xml_files[@]})" diff --git a/tao.xml b/tao.xml index ac983b5..929f39f 100644 --- a/tao.xml +++ b/tao.xml @@ -1,6 +1,16 @@ + + + + + -

TAO Scoreboard

+
+

TAO Scoreboard

+ +

This is the TAO scoreboard. It shows all the OS/platform combinations on which TAO is tested everyday. diff --git a/tao2.xml b/tao2.xml index b63542f..9384892 100644 --- a/tao2.xml +++ b/tao2.xml @@ -1,6 +1,16 @@ + + + + + -

TAO 2.5.x Scoreboard

+
+

TAO 2.5.x Scoreboard

+ +

This is the TAO 2.5.x scoreboard. It shows all the OS/platform combinations on which TAO 2.5.x is tested everyday.