From 895ae92a9b8f5fb525928a6e3951c75759bc5467 Mon Sep 17 00:00:00 2001 From: prasad-sawantdesai Date: Fri, 4 Sep 2026 13:40:59 +0200 Subject: [PATCH 1/8] cleanup ci scripts and update to 2025b --- ci-sdcc/dependencies.txt | 4 - ci-sdcc/st00-header.sh | 162 +++++---------------------- ci-sdcc/st01-create-distribution.sh | 3 +- ci-sdcc/st02-install.sh | 2 +- ci-sdcc/st03-test.sh | 2 +- ci-sdcc/st04-create-easybuildinfo.sh | 2 +- ci-sdcc/st06-doc.sh | 2 +- ci-sdcc/st07-codecov.sh | 2 +- ci-sdcc/st08-staticanalysis.sh | 2 +- 9 files changed, 35 insertions(+), 146 deletions(-) delete mode 100644 ci-sdcc/dependencies.txt diff --git a/ci-sdcc/dependencies.txt b/ci-sdcc/dependencies.txt deleted file mode 100644 index e0342ccd..00000000 --- a/ci-sdcc/dependencies.txt +++ /dev/null @@ -1,4 +0,0 @@ -Tkinter -matplotlib -IMAS-Python -PyYAML \ No newline at end of file diff --git a/ci-sdcc/st00-header.sh b/ci-sdcc/st00-header.sh index 72e2e8db..b8d3939b 100644 --- a/ci-sdcc/st00-header.sh +++ b/ci-sdcc/st00-header.sh @@ -1,145 +1,39 @@ #!/bin/bash source /etc/profile.d/modules.sh -source ./ci-sdcc/utils.sh -########################################################################################## -# Set environment based on toolchain # -########################################################################################## module use /work/imas/etc/modules/all - -# expand aliases shopt -s expand_aliases - -#print hostname -hostname -f - -IMAS_EXISTS=$(module -r -t list 2>&1 | grep -E "IMAS-Core" | head -n 1) -if [ -n "$IMAS_EXISTS" ]; then - echo "> Found already loaded IMAS Module : $IMAS_EXISTS" - ACCESS_LAYER_VERSION=$(echo "$AL_VERSION" | cut -d '.' -f 1) - TOOLCHAIN_VERSION=$(echo "$IMAS_EXISTS" | awk -F '-' '{print $(NF-1)"-"$NF}') -else - echo "> IMAS Module is not loaded" -fi - -if [ -n "$1" ] || [ -n "$2" ]; then - echo "> Compiling with $1 and Access Layer $2 with latest version of installed modules.Previously loaded modules will be purged.." - module purge - # If toolchain version is passed then purge all modules - if [ -n "$1" ]; then - TOOLCHAIN_VERSION="$1" - fi - - # Get AL version - if [ -n "$2" ]; then - ACCESS_LAYER_VERSION="$2" - else - ACCESS_LAYER_VERSION="5" - fi -fi - -if [ -z "$TOOLCHAIN_VERSION" ]; then - echo "> No toolchain found, Setting it to default : intel-2023b" - TOOLCHAIN_VERSION="intel-2023b" -fi - -if [ -z "$ACCESS_LAYER_VERSION" ]; then - ACCESS_LAYER_VERSION="5" -fi - -if [ -z "$DD_VERSION" ]; then - DD_VERSION="3" -else - DD_VERSION="$3" -fi - -echo "> Building for $TOOLCHAIN_VERSION and Access Layer $ACCESS_LAYER_VERSION" - -if [[ $TOOLCHAIN_VERSION == *"intel"* ]]; then - FCOMPILER="ifort" -fi -if [[ $TOOLCHAIN_VERSION == *"foss"* ]]; then - FCOMPILER="gfortran" -fi - - -CORE_MODULE_VERSION=$(getIMASCoreModuleName "$TOOLCHAIN_VERSION" "$ACCESS_LAYER_VERSION" "$DD_VERSION") -# load IMAS module first - -if [ -z "$IMAS_EXISTS" ]; then - echo "> IMAS is not loaded.. Loading Module $CORE_MODULE_VERSION" - module load "$CORE_MODULE_VERSION" -fi - -GCCcore_VERSION=$(getGCCcoreVersion) module purge -dependencies="./ci-sdcc/dependencies.txt" - -# Check if the file exists -if [ ! -f "$dependencies" ]; then - echo "File $dependencies not found." +# Check which modules env var is set +if [ -n "$INTEL_MODULES" ]; then + MODULES_LIST="$INTEL_MODULES" +elif [ -n "$FOSS_MODULES" ]; then + MODULES_LIST="$FOSS_MODULES" +else + echo "" + echo "ERROR: Neither INTEL_MODULES nor FOSS_MODULES is set" + echo "" + echo "Please set one of these environment variables and run the script." + echo "" + echo "Examples:" + echo "" + echo " For intel-2023b:" + echo " export INTEL_MODULES=\"IMAS-Core/5.7.1-intel-2023b Tkinter/3.11.5-GCCcore-13.2.0 IMAS-Python/2.3.0-intel-2023b PyYAML/6.0.1-GCCcore-13.2.0\"" + echo "" + echo " For intel-2025b:" + echo " export INTEL_MODULES=\"IMAS-Core/5.7.1-intel-2025b Tkinter/3.13.5-GCCcore-14.3.0 IMAS-Python/2.3.0-intel-2025b PyYAML/6.0.2-GCCcore-14.3.0\"" + echo "" + echo " For foss-2023b:" + echo " export FOSS_MODULES=\"IMAS-Core/5.7.1-foss-2023b Tkinter/3.11.5-GCCcore-13.2.0 IMAS-Python/2.3.0-foss-2023b PyYAML/6.0.1-GCCcore-13.2.0\"" + echo "" + echo " For foss-2025b:" + echo " export FOSS_MODULES=\"IMAS-Core/5.7.1-foss-2025b Tkinter/3.13.5-GCCcore-14.3.0 IMAS-Python/2.3.0-foss-2025b PyYAML/6.0.2-GCCcore-14.3.0\"" + echo "" return 1 fi -declare -a RUNMODULES=() -declare -a EBBRUNMODULES=() - -echo "-------------------------------------------------------" -echo "> dependency modules" -counter=0 -while IFS= read -r line || [[ -n $line ]]; do - line="${line// /}" - # for empty string continue - if [[ -z "$line" ]]; then - counter=$(("$counter" + 1)) - continue - fi - # fix module version - if [[ $line == *"/"* ]]; then - echo "using fix module $line" - RUNMODULES["$counter"]="$line" - EBBRUNMODULES["$counter"]="('$line', EXTERNAL_MODULE)," - counter=$(("$counter" + 1)) - continue - fi - # latest module version as it is not given - # if [[ $line == *"IMAS"* ]]; then - # echo " IMAS $CORE_MODULE_VERSION" - # RUNMODULES["$counter"]="$CORE_MODULE_VERSION" - # EBBRUNMODULES["$counter"]="('$CORE_MODULE_VERSION', EXTERNAL_MODULE)," - # else - module_version=$(getModuleName "$line" "$TOOLCHAIN_VERSION" "$GCCcore_VERSION") - echo " $line $module_version" - RUNMODULES["$counter"]="$module_version" - EBBRUNMODULES["$counter"]=$(getModuleNameAndVersion "$module_version") - - # fi - counter=$(("$counter" + 1)) -done <"$dependencies" -echo "-------------------------------------------------------" - -echo "> Details of environment" -echo " TOOLCHAIN_VERSION : $TOOLCHAIN_VERSION" -echo " GCCcore_VERSION : $GCCcore_VERSION" -echo " IMAS VERSION : $CORE_MODULE_VERSION" -echo " RUNMODULES : " "${RUNMODULES[@]}" -echo " EBRUNMODULES : " "${EBBRUNMODULES[@]}" -echo " Compiler : $FCOMPILER" -echo "-------------------------------------------------------" - - -echo "> Loading run time modules" -# Load build modules if they exist -for imodule in "${RUNMODULES[@]}"; do - IFS='/' read -r iname iversion <<< "$imodule" - MODULE_EXISTS=$(module -r -t list 2>&1 | grep -E "$iname/") - if [ -z "$MODULE_EXISTS" ]; then - echo " $iname not available, Loading $imodule" - module load "$imodule" - else - echo " $MODULE_EXISTS already loaded" - fi +# Load all modules +for module in $MODULES_LIST; do + module load "$module" done -echo "> Done" -echo "-------------------------------------------------------" diff --git a/ci-sdcc/st01-create-distribution.sh b/ci-sdcc/st01-create-distribution.sh index 469c4502..58e86f5e 100755 --- a/ci-sdcc/st01-create-distribution.sh +++ b/ci-sdcc/st01-create-distribution.sh @@ -3,8 +3,7 @@ # Execute script from root directory # setup environment -# Get toolchain version -source ./ci-sdcc/st00-header.sh $1 $2 +source ./ci-sdcc/st00-header.sh if [[ "$(uname -n)" == *"bamboo"* ]]; then set -e -u -o pipefail diff --git a/ci-sdcc/st02-install.sh b/ci-sdcc/st02-install.sh index e6185b3e..78cf8769 100755 --- a/ci-sdcc/st02-install.sh +++ b/ci-sdcc/st02-install.sh @@ -2,7 +2,7 @@ # Bamboo CI script to build actor and run standalone program # Execute script from root directory -source ./ci-sdcc/st00-header.sh $1 $2 +source ./ci-sdcc/st00-header.sh # Note Disable set -e option when using on local as it will exit the shell on error if [[ "$(uname -n)" == *"bamboo"* ]]; then diff --git a/ci-sdcc/st03-test.sh b/ci-sdcc/st03-test.sh index 1700b168..018d73de 100755 --- a/ci-sdcc/st03-test.sh +++ b/ci-sdcc/st03-test.sh @@ -1,7 +1,7 @@ #!/bin/bash # Bamboo CI script to test IDS tools on different toolchains # Execute script from root directory -source ./ci-sdcc/st00-header.sh $1 $2 $3 +source ./ci-sdcc/st00-header.sh ENVIRONEMNT_NAME=env"$TOOLCHAIN_VERSION"_"$ACCESS_LAYER_VERSION" diff --git a/ci-sdcc/st04-create-easybuildinfo.sh b/ci-sdcc/st04-create-easybuildinfo.sh index d66f1654..41995cfe 100755 --- a/ci-sdcc/st04-create-easybuildinfo.sh +++ b/ci-sdcc/st04-create-easybuildinfo.sh @@ -2,7 +2,7 @@ # Bamboo CI script to create build information for easybuild # Execute script from root directory -source ./ci-sdcc/st00-header.sh $1 $2 +source ./ci-sdcc/st00-header.sh # if successuful create hash and store in actor directory COMMITHASH=$(git rev-parse HEAD) diff --git a/ci-sdcc/st06-doc.sh b/ci-sdcc/st06-doc.sh index 8be75ff8..6724a0c7 100755 --- a/ci-sdcc/st06-doc.sh +++ b/ci-sdcc/st06-doc.sh @@ -3,7 +3,7 @@ # Execute script from root directory source /etc/profile.d/modules.sh module use /work/imas/etc/modules/all -source ./ci-sdcc/st00-header.sh $1 $2 $3 +source ./ci-sdcc/st00-header.sh # Note Disable set -e option when using on local as it will exit the shell on error if [[ "$(uname -n)" == *"bamboo"* ]]; then diff --git a/ci-sdcc/st07-codecov.sh b/ci-sdcc/st07-codecov.sh index 8ef3a6e1..216db44d 100755 --- a/ci-sdcc/st07-codecov.sh +++ b/ci-sdcc/st07-codecov.sh @@ -1,7 +1,7 @@ #!/bin/bash # Bamboo CI script to test IDS tools on different toolchains # Execute script from root directory -source ./ci-sdcc/st00-header.sh $1 $2 +source ./ci-sdcc/st00-header.sh if [[ "$(uname -n)" == *"bamboo"* ]]; then set -e -u -o pipefail diff --git a/ci-sdcc/st08-staticanalysis.sh b/ci-sdcc/st08-staticanalysis.sh index 25c4d61f..486b24bd 100755 --- a/ci-sdcc/st08-staticanalysis.sh +++ b/ci-sdcc/st08-staticanalysis.sh @@ -1,7 +1,7 @@ #!/bin/bash # Bamboo CI script to test IDS tools on different toolchains # Execute script from root directory -source ./ci-sdcc/st00-header.sh $1 $2 +source ./ci-sdcc/st00-header.sh # Note Disable set -e option when using on local as it will exit the shell on error if [[ "$(uname -n)" == *"bamboo"* ]]; then From b94cc044c1fd741f52a766a1758a09f6c393e715 Mon Sep 17 00:00:00 2001 From: prasad-sawantdesai Date: Fri, 4 Sep 2026 14:44:10 +0200 Subject: [PATCH 2/8] fixed unbound variable and loading IDStools modu;e --- ci-sdcc/st00-header.sh | 2 ++ ci-sdcc/st03-test.sh | 12 +++++------- ci-sdcc/st04-create-easybuildinfo.sh | 29 ---------------------------- ci-sdcc/st06-doc.sh | 1 - ci-sdcc/st08-staticanalysis.sh | 3 --- 5 files changed, 7 insertions(+), 40 deletions(-) delete mode 100755 ci-sdcc/st04-create-easybuildinfo.sh diff --git a/ci-sdcc/st00-header.sh b/ci-sdcc/st00-header.sh index b8d3939b..747a457a 100644 --- a/ci-sdcc/st00-header.sh +++ b/ci-sdcc/st00-header.sh @@ -8,8 +8,10 @@ module purge # Check which modules env var is set if [ -n "$INTEL_MODULES" ]; then MODULES_LIST="$INTEL_MODULES" + export ENVIRONEMNT_NAME="intel" elif [ -n "$FOSS_MODULES" ]; then MODULES_LIST="$FOSS_MODULES" + export ENVIRONEMNT_NAME="foss" else echo "" echo "ERROR: Neither INTEL_MODULES nor FOSS_MODULES is set" diff --git a/ci-sdcc/st03-test.sh b/ci-sdcc/st03-test.sh index 018d73de..e36db3e4 100755 --- a/ci-sdcc/st03-test.sh +++ b/ci-sdcc/st03-test.sh @@ -3,8 +3,6 @@ # Execute script from root directory source ./ci-sdcc/st00-header.sh -ENVIRONEMNT_NAME=env"$TOOLCHAIN_VERSION"_"$ACCESS_LAYER_VERSION" - python -m venv "$ENVIRONEMNT_NAME" . "$ENVIRONEMNT_NAME"/bin/activate @@ -42,7 +40,7 @@ echo "=====================================================================" echo "" echo "" echo "=====================================================================" -echo "Testing analysis scripts with URI $CORE_MODULE_VERSION and $PYTHON_VERSION" +echo "Testing analysis scripts with $PYTHON_VERSION" echo "=====================================================================" source ./tests/st03_test_analysis_scripts_with_uri.sh "$LOG_DIR" "$DB_DIR" errstatus=$? @@ -54,7 +52,7 @@ fi echo "" echo "" echo "=====================================================================" -echo "Testing ids manipulation scripts with $CORE_MODULE_VERSION and $PYTHON_VERSION" +echo "Testing ids manipulation scripts with $PYTHON_VERSION" echo "=====================================================================" source ./tests/st01_test_ids_scripts_with_uri.sh "$LOG_DIR" "$DB_DIR" errstatus=$? @@ -67,7 +65,7 @@ fi echo "" echo "" echo "=====================================================================" -echo "Testing db scripts with $CORE_MODULE_VERSION and $PYTHON_VERSION" +echo "Testing db scripts with $PYTHON_VERSION" echo "=====================================================================" source ./tests/st02_test_db_scripts.sh "$LOG_DIR" "$DB_DIR" errstatus=$? @@ -80,7 +78,7 @@ fi echo "" echo "" echo "=====================================================================" -echo "Testing scenario scripts with $CORE_MODULE_VERSION and $PYTHON_VERSION" +echo "Testing scenario scripts with $PYTHON_VERSION" echo "=====================================================================" source ./tests/st04_test_scenario_scripts.sh "$LOG_DIR" "$DB_DIR" errstatus=$? @@ -92,7 +90,7 @@ fi echo "" echo "" echo "=====================================================================" -echo "Run pytest for functions testing with $CORE_MODULE_VERSION and $PYTHON_VERSION" +echo "Run pytest for functions testing with $PYTHON_VERSION" echo "=====================================================================" pip install pytest python -m pytest --junit-xml="$LOG_DIR"/test_report.xml idstools/test diff --git a/ci-sdcc/st04-create-easybuildinfo.sh b/ci-sdcc/st04-create-easybuildinfo.sh deleted file mode 100755 index 41995cfe..00000000 --- a/ci-sdcc/st04-create-easybuildinfo.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash -# Bamboo CI script to create build information for easybuild -# Execute script from root directory - -source ./ci-sdcc/st00-header.sh - -# if successuful create hash and store in actor directory -COMMITHASH=$(git rev-parse HEAD) -VERSION=$(git describe --tags --always) -rm -f ./ci-sdcc/versioninfo.txt -cat >>./ci-sdcc/versioninfo.txt </dev/null 2>&1 - -# show contents of artifact -tar -tzvf ci-sdcc.tar.gz - -echo "Done" diff --git a/ci-sdcc/st06-doc.sh b/ci-sdcc/st06-doc.sh index 6724a0c7..fc7d4379 100755 --- a/ci-sdcc/st06-doc.sh +++ b/ci-sdcc/st06-doc.sh @@ -11,7 +11,6 @@ if [[ "$(uname -n)" == *"bamboo"* ]]; then fi # module unload Python-bundle-PyPI -ENVIRONEMNT_NAME=env"$TOOLCHAIN_VERSION"_"$ACCESS_LAYER_VERSION" # Create python virtual environment and install dependencies rm -rf "$ENVIRONEMNT_NAME" diff --git a/ci-sdcc/st08-staticanalysis.sh b/ci-sdcc/st08-staticanalysis.sh index 486b24bd..037ad788 100755 --- a/ci-sdcc/st08-staticanalysis.sh +++ b/ci-sdcc/st08-staticanalysis.sh @@ -8,9 +8,6 @@ if [[ "$(uname -n)" == *"bamboo"* ]]; then set -e -u -o pipefail fi -ENVIRONEMNT_NAME=env"$TOOLCHAIN_VERSION"_"$ACCESS_LAYER_VERSION" -module unload IDStools - python -m venv "$ENVIRONEMNT_NAME" . "$ENVIRONEMNT_NAME"/bin/activate From 883f62709e41a6dad5523b1b8c7b22ede3509359 Mon Sep 17 00:00:00 2001 From: prasad-sawantdesai Date: Fri, 4 Sep 2026 14:48:21 +0200 Subject: [PATCH 3/8] fixed ENVIRONEMNT_NAME: unbound variable --- ci-sdcc/st00-header.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ci-sdcc/st00-header.sh b/ci-sdcc/st00-header.sh index 747a457a..ede9966f 100644 --- a/ci-sdcc/st00-header.sh +++ b/ci-sdcc/st00-header.sh @@ -6,10 +6,10 @@ shopt -s expand_aliases module purge # Check which modules env var is set -if [ -n "$INTEL_MODULES" ]; then +if [ -n "${INTEL_MODULES:-}" ]; then MODULES_LIST="$INTEL_MODULES" export ENVIRONEMNT_NAME="intel" -elif [ -n "$FOSS_MODULES" ]; then +elif [ -n "${FOSS_MODULES:-}" ]; then MODULES_LIST="$FOSS_MODULES" export ENVIRONEMNT_NAME="foss" else From 98c209eb78cecc686d3b927693c37a2f4e3ae525 Mon Sep 17 00:00:00 2001 From: prasad-sawantdesai Date: Fri, 4 Sep 2026 14:50:16 +0200 Subject: [PATCH 4/8] fix unbound variable issue --- ci-sdcc/st00-header.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/ci-sdcc/st00-header.sh b/ci-sdcc/st00-header.sh index ede9966f..a072d4bb 100644 --- a/ci-sdcc/st00-header.sh +++ b/ci-sdcc/st00-header.sh @@ -32,6 +32,7 @@ else echo " For foss-2025b:" echo " export FOSS_MODULES=\"IMAS-Core/5.7.1-foss-2025b Tkinter/3.13.5-GCCcore-14.3.0 IMAS-Python/2.3.0-foss-2025b PyYAML/6.0.2-GCCcore-14.3.0\"" echo "" + export ENVIRONEMNT_NAME="unset" return 1 fi From 6007605cd2685f5f3c7f5cb2ebbae76add094714 Mon Sep 17 00:00:00 2001 From: prasad-sawantdesai Date: Fri, 4 Sep 2026 14:54:49 +0200 Subject: [PATCH 5/8] exit if variables are not set --- ci-sdcc/st00-header.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/ci-sdcc/st00-header.sh b/ci-sdcc/st00-header.sh index a072d4bb..3deeaf10 100644 --- a/ci-sdcc/st00-header.sh +++ b/ci-sdcc/st00-header.sh @@ -32,8 +32,7 @@ else echo " For foss-2025b:" echo " export FOSS_MODULES=\"IMAS-Core/5.7.1-foss-2025b Tkinter/3.13.5-GCCcore-14.3.0 IMAS-Python/2.3.0-foss-2025b PyYAML/6.0.2-GCCcore-14.3.0\"" echo "" - export ENVIRONEMNT_NAME="unset" - return 1 + exit 1 fi # Load all modules From 737da2fb19aa09d8cee21a2594f9f73490c16b44 Mon Sep 17 00:00:00 2001 From: prasad-sawantdesai Date: Fri, 4 Sep 2026 15:18:56 +0200 Subject: [PATCH 6/8] fixed string issue in waves --- idstools/compute/waves.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/idstools/compute/waves.py b/idstools/compute/waves.py index 2c0a1523..510483ff 100644 --- a/idstools/compute/waves.py +++ b/idstools/compute/waves.py @@ -369,7 +369,15 @@ def get_ec_launchers_info(self, time_slice: int, usepsi=False, verbose=False): for iwave in range(len(self.ids.coherent_wave)): if len(self.ids.coherent_wave[iwave].identifier.antenna_name) > 0: - single_ec_launcher_name[iwave] = self.ids.coherent_wave[iwave].identifier.antenna_name + # Convert to Python string to ensure matplotlib compatibility (prevents array-like interpretation) + antenna_name = self.ids.coherent_wave[iwave].identifier.antenna_name + # Use str() to convert numpy strings/arrays to Python str + if hasattr(antenna_name, 'item'): + # If it has .item() method (numpy scalar), use it + single_ec_launcher_name[iwave] = str(antenna_name.item()) + else: + # Otherwise just convert to str + single_ec_launcher_name[iwave] = str(antenna_name) else: single_ec_launcher_name[iwave] = f"Launcher{iwave + 1}" if np.size(self.ids.coherent_wave[iwave].global_quantities) > 0: From 845fe17d4d668f9e26b6a16186b47d7b0543eaf8 Mon Sep 17 00:00:00 2001 From: prasad-sawantdesai Date: Fri, 4 Sep 2026 15:27:59 +0200 Subject: [PATCH 7/8] formatted with black --- idstools/compute/waves.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/idstools/compute/waves.py b/idstools/compute/waves.py index 510483ff..6adf9c35 100644 --- a/idstools/compute/waves.py +++ b/idstools/compute/waves.py @@ -372,7 +372,7 @@ def get_ec_launchers_info(self, time_slice: int, usepsi=False, verbose=False): # Convert to Python string to ensure matplotlib compatibility (prevents array-like interpretation) antenna_name = self.ids.coherent_wave[iwave].identifier.antenna_name # Use str() to convert numpy strings/arrays to Python str - if hasattr(antenna_name, 'item'): + if hasattr(antenna_name, "item"): # If it has .item() method (numpy scalar), use it single_ec_launcher_name[iwave] = str(antenna_name.item()) else: From 719170b81713202b9c0d41d8aceef7f8b5a57cfd Mon Sep 17 00:00:00 2001 From: prasad-sawantdesai Date: Fri, 4 Sep 2026 16:25:28 +0200 Subject: [PATCH 8/8] added coverage junit xml export --- ci-sdcc/st07-codecov.sh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ci-sdcc/st07-codecov.sh b/ci-sdcc/st07-codecov.sh index 216db44d..136d97f4 100755 --- a/ci-sdcc/st07-codecov.sh +++ b/ci-sdcc/st07-codecov.sh @@ -20,8 +20,13 @@ source "$VIRTUALENV_DIR"/bin/activate pip install --upgrade pip pip install . pip install coverage + +# create logs directory +LOG_DIR="$PWD"/logs +mkdir -p "$LOG_DIR" + # run tests -coverage run --source=idstools -m pytest idstools/test +coverage run --source=idstools -m pytest --junit-xml="$LOG_DIR"/test_report.xml idstools/test # report coverage report -i