diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c121e951f97a5ef6878593aef1bfa701fa9e084e..666fe1033b8ea90a8d4dd36da239ca9adbc27569 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -118,7 +118,7 @@ FileMediaCheck: - git fetch upstream - gawk -f ci_scripts/static_check.awk media.geo -CheckRadLen: +Bin2Txt_CheckRadLen: stage: checkGeometries image: rootproject/root tags: @@ -137,8 +137,11 @@ CheckRadLen: - git diff upstream/master --name-only - touch LIST_GEO_FILES - FAIL=0 - - for file in `git diff upstream/master 2>/dev/null --name-only | sed -ne '/\.geo\.root$/p'`; do if [ -f $file ]; then echo $file; sh ci_scripts/check_radlen.sh $file; if [ $? -ne 0 ]; then let FAIL++; fi; fi; done + - for file in `git diff upstream/master 2>/dev/null --name-only | sed -ne '/\.geo\.root$/p'`; do if [ -f $file ]; then echo $file; sh ci_scripts/bin2txt_checkradlen.sh $file; if [ $? -ne 0 ]; then let FAIL++; fi; fi; done - exit $FAIL + artifacts: + paths: + - "*.geo.txt.gz" InformCodeOwners: stage: finalise @@ -168,6 +171,3 @@ Md5Sums: script: - find . -iname '*.geo.root' | xargs md5sum - - - diff --git a/ci_scripts/check_radlen.sh b/ci_scripts/bin2txt_checkradlen.sh similarity index 66% rename from ci_scripts/check_radlen.sh rename to ci_scripts/bin2txt_checkradlen.sh index cbb1989cda5729a9bd75359a36a4584fc83f95a1..4fdf79f3c5cc54d0b8a5d6c5f0a8b48af877c694 100755 --- a/ci_scripts/check_radlen.sh +++ b/ci_scripts/bin2txt_checkradlen.sh @@ -1,10 +1,20 @@ #/bin/bash -# check_radlen.sh - checks radiation length of materials in user supplied geometry +# Copyright (C) 2022-2025 Facility for AntiProton and Ion Research in Europe, Darmstadt +# SPDX-License-Identifier: GPL-3.0-only +# First commited by Eoin Clerkin + +# bin2txt_checkradlen.sh +# renamed from check_radlen.sh - checks radiation length of materials in user supplied geometry # Author: Eoin Clerkin (FAIR) 2022-01-31 +# 2025-03-20 Modified to also output the to-text version of binaries as artifact + echo "Scanning the geometry" $1 -root -l -b -q 'ci_scripts/scan_geometry.C("'$1'")' 1>tmp +ARTIFACT=`echo $1 | sed 's_^[a-zA-Z]*\/__' | sed 's_\.root$_\.txt_'` +echo "ARTIFACT name is $ARTIFACT" + +root -l -b -q 'ci_scripts/scan_geometry.C("'$1'")' 2>&1 1>$ARTIFACT ROOT_EXIT=$?; if [ 0 -ne $ROOT_EXIT ]; then @@ -12,7 +22,7 @@ if [ 0 -ne $ROOT_EXIT ]; then exit ${ROOT_EXIT}; fi; -grep '^M\(at\|ix\)' tmp | \ +grep '^M\(at\|ix\)' $ARTIFACT | \ sort | \ uniq -c | \ sort -g -k 1 1>MATERIALS @@ -22,7 +32,6 @@ FAIL=0; SKIP=0; OKAY=0; - while IFS= read -r line; do @@ -57,8 +66,8 @@ variables=`echo "$line" | sed -e 's/eff//g' | sed -e 's/index/jndex/g' | sed -e done < MATERIALS -rm tmp MATERIALS - +rm MATERIALS +gzip $ARTIFACT echo ${FAIL}" failures in " $COUNT " materials"