From fc150dfee79fdd5418a97202c881bb16e0ece9d1 Mon Sep 17 00:00:00 2001 From: Daniel Black Date: Tue, 7 Apr 2026 13:29:42 +1000 Subject: [PATCH 1/2] MDBF-1199 Submit docker library test results to cross reference Use the xml form of .test/run.sh to generate a cross reference result. (https://github.com/MariaDB/mariadb-docker/pull/685) If the healthcheck fails on CR, produce a warning (exit 2). Other errors are BB errors. --- master-nonlatent/master.cfg | 4 +++- scripts/docker-library-test.sh | 41 +++++++++++++++++++++++++++++++++- 2 files changed, 43 insertions(+), 2 deletions(-) diff --git a/master-nonlatent/master.cfg b/master-nonlatent/master.cfg index 8c87d8b5a..93df98457 100644 --- a/master-nonlatent/master.cfg +++ b/master-nonlatent/master.cfg @@ -735,7 +735,9 @@ f_dockerlibrary.addStep( "bash", "-xc", util.Interpolate( - './docker-library-test.sh "%(prop:tarbuildnum)s" "%(prop:parentbuildername)s"' + './docker-library-test.sh "%(prop:tarbuildnum)s" "%(prop:parentbuildername)s" "' + + os.environ.get("MTR_LOG_COLLECTOR_BASE_URL") + + '" "%(prop:branch)s" "%(prop:revision)s" "%(prop:buildername)s" "%(prop:buildnumber)s"' ), ], warnOnWarnings=True, diff --git a/scripts/docker-library-test.sh b/scripts/docker-library-test.sh index ec6011286..9907d3a28 100755 --- a/scripts/docker-library-test.sh +++ b/scripts/docker-library-test.sh @@ -4,6 +4,15 @@ set -xeuvo pipefail tarbuildnum=${1} buildername=${2} +BASE_URL="$3" # e.g., http://100.64.101.1:9990 +BRANCH="$4" +REVISION="$5" +PLATFORM="$6" +BBNUM="$7" + +UPLOAD_URL="${BASE_URL}/upload-test-results/" +HEALTH_URL="${BASE_URL}/health" + builderarch=${buildername%%-*} @@ -32,5 +41,35 @@ fi # clean images if test does not succeed #trap 'buildah rmi "$image"' EXIT -mariadb-docker/.test/run.sh "$image" +mariadb-docker/.test/run.sh --xml=doi.xml "$image" + +if ! curl "$HEALTH_URL" \ + --max-time 5 \ + --retry 3 \ + --retry-max-time 0 \ + --retry-delay 5 \ + --retry-connrefused \ + --fail-with-body; then + echo "Service health check failed. Aborting uploads." + exit 2 +fi + +if [ ! -f doi.xml ]; then + echo "Test result file doi.xml not created" + exit 1 +fi + +curl \ + --max-time 120 \ + --connect-timeout 10 \ + --fail-with-body \ + -X POST "$UPLOAD_URL" \ + -F "branch=${BRANCH}" \ + -F "revision=${REVISION}" \ + -F "platform=${PLATFORM}" \ + -F "bbnum=${BBNUM}" \ + -F "typ=docker_offical_images" \ + -F "file=@doi.xml;type=application/xml" || exit 1 +rm -f doi.xml + trap - EXIT From 1f34866ea6614fa8b7003dfd3412f0ed9cfda93f Mon Sep 17 00:00:00 2001 From: Daniel Black Date: Tue, 14 Apr 2026 18:35:06 +1000 Subject: [PATCH 2/2] MDBF-1199: docker library xml results to cr - submit on failure --- scripts/docker-library-test.sh | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/scripts/docker-library-test.sh b/scripts/docker-library-test.sh index 9907d3a28..2df613ab8 100755 --- a/scripts/docker-library-test.sh +++ b/scripts/docker-library-test.sh @@ -41,9 +41,10 @@ fi # clean images if test does not succeed #trap 'buildah rmi "$image"' EXIT -mariadb-docker/.test/run.sh --xml=doi.xml "$image" +ret=0 +mariadb-docker/.test/run.sh --xml=doi.xml "$image" || ret=1 -if ! curl "$HEALTH_URL" \ +if [ $ret ] && ! curl "$HEALTH_URL" \ --max-time 5 \ --retry 3 \ --retry-max-time 0 \ @@ -59,7 +60,7 @@ if [ ! -f doi.xml ]; then exit 1 fi -curl \ +[ $ret ] && curl \ --max-time 120 \ --connect-timeout 10 \ --fail-with-body \ @@ -73,3 +74,5 @@ curl \ rm -f doi.xml trap - EXIT + +exit $ret