--- /dev/null
+#! /bin/bash
+n=false
+if [ $1 = -n ];then
+ n=true
+ shift
+fi
+diff_u="diff $(if $n;then echo -U999999999;else echo -u;fi)"
+if [ $# != 2 ];then
+ echo >&2 "$0: <dir1> <dir2>"
+fi
+for dir in "$@";do
+ if [ ! -e $dir ];then
+ echo >&2 "!-e: $dir"
+ exit 1
+ fi
+ sed -i -e 's#\(failed for \)[0-9]*\(: Operation not permitted\)#\1\2#' $(find $dir -name summary.txt)
+done
+dir1=$(realpath $1)
+dir2=$(realpath $2)
+cd $1
+(
+ for i in $(find -name summary.txt);do
+ echo "$dir1/$i -> $dir2/$i"
+ $diff_u $i $dir2/$i
+ done
+ function prep8
+ {
+ sed <$1 -n 's/^\(Passed\|FAILED\): \(.*\)$/\2: \1/p'|sort
+ }
+ for i in $(find -name "*-test.release.log");do
+ echo "$dir1/$i -> $dir2/$i"
+ $diff_u <(prep8 $i) <(prep8 $dir2/$i)
+ done
+)|if $n;then cat;else grep -v '^+++ '|grep -v '^--- '|grep -v '^[ @]';fi
--- /dev/null
+#! /bin/bash
+for arg in $@;do
+ # http://cherry.azulsystems.com:8080/job/zulu17-silver-build/377/
+ arg="$(echo $arg|sed 's#[a-z]\+/\?$##')"
+ build="$(echo $arg|sed -n 's#^.*/\([0-9]\+\)/$#\1#p')"
+ if [ -z "$build" ];then
+ echo >&2 "parse error: $arg"
+ exit 1
+ fi
+ build="build$build"
+ if [ -e "$build" ];then
+ echo >&2 "exists: $build"
+ exit 1
+ fi
+ mkdir $build
+ outcome="$(wget -O - "${arg}artifact/outcome/")"
+ if [ -z "$outcome" ];then
+ echo >&2 "no outcome: $arg"
+ exit 1
+ fi
+ for release in $(echo "$outcome"|perl -ne 'while (m{<a href="([^"]*)/release">}g) { print "$1\n"; }');do
+ # java17, java8
+ ok=false
+ for file in test-results.tar.gz test.release.log;do
+ url="${arg}artifact/outcome/$release/release/$file"
+ if wget --read-timeout=5 -O "$build/$release-$file" "$url";then
+ ok=true
+ break
+ fi
+ rm -f "$build/$release-$file"
+ done
+ if ! $ok;then
+ echo >&2 "wget error"
+ exit 1
+ fi
+ done
+ (cd $build;if compgen -G "*test-results.tar.gz";then exx *test-results.tar.gz;fi)
+done