Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/develop' into develop
Browse files Browse the repository at this point in the history
  • Loading branch information
yali mao committed Jul 23, 2024
2 parents 8153083 + 97ea655 commit acf9de7
Show file tree
Hide file tree
Showing 180 changed files with 38,078 additions and 7,862 deletions.
5 changes: 3 additions & 2 deletions .github/workflows/gcc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ defaults:
shell: bash -leo pipefail {0}

env:
cache_key: gcc2 # The number (#) following the cache_key "gcc" is to flush Action cache.
cache_key: gcc3 # The number (#) following the cache_key "gcc" is to flush Action cache.
CC: gcc-10
FC: gfortran-10
CXX: g++-10
Expand Down Expand Up @@ -60,6 +60,7 @@ jobs:
sudo apt install cmake
spack external find
spack add mpich@3.4.2
spack add doxygen
spack concretize
spack install -v --fail-fast --dirty
spack clean --all
Expand Down Expand Up @@ -91,6 +92,6 @@ jobs:
export FC=mpif90
cd UPP
mkdir -p build && cd build
cmake -DCMAKE_INSTALL_PREFIX=../install ..
cmake -DENABLE_DOCS=ON -DCMAKE_INSTALL_PREFIX=../install ..
make -j2 VERBOSE=1
make install
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,9 @@
# USE CAUTION WHEN ADDING WILDCARDS, as some builds use different filename #
# conventions than others #
##############################################################################
build*/
build
install
build/*/
install*/

*.[aox]
Expand Down
5 changes: 2 additions & 3 deletions .readthedocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ build:

# Build documentation in the docs/ directory with Sphinx
sphinx:
configuration: docs/UserGuide/conf.py
configuration: doc/UserGuide/conf.py

# Build documentation with MkDocs
#mkdocs:
Expand All @@ -22,6 +22,5 @@ formats: all

# Optionally set the version of Python and requirements required to build your docs
python:
# version: 3.7
install:
- requirements: docs/UserGuide/requirements.txt
- requirements: doc/UserGuide/requirements.txt
11 changes: 6 additions & 5 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
# Handle user options.
option(OPENMP "use OpenMP threading" ON)
option(BUILD_POSTEXEC "Build NCEPpost executable" ON)
option(BUILD_WITH_NEMSIO "Build NCEPpost with nemsio library" ON)
option(BUILD_WITH_WRFIO "Build NCEPpost with WRF-IO library" OFF)
option(BUILD_WITH_IFI "Build NCEPpost with In-Flight Icing (IFI) library if present" OFF)
option(REQUIRE_IFI "Abort if libIFI is not found ; enables BUILD_WITH_IFI=ON" OFF)
Expand Down Expand Up @@ -84,9 +85,10 @@ else()
endif()

if(BUILD_POSTEXEC)
find_package(nemsio REQUIRED)
find_package(sfcio REQUIRED)
find_package(sigio REQUIRED)
if(BUILD_WITH_NEMSIO)
find_package(nemsio REQUIRED)
find_package(sigio REQUIRED)
endif()
find_package(sp REQUIRED)
find_package(w3emc REQUIRED)
if(BUILD_WITH_WRFIO)
Expand All @@ -111,12 +113,11 @@ if(IFI_FOUND OR INTERNAL_IFI)
endif()

add_subdirectory(sorc)
add_subdirectory(parm)

# If desired, build the doxygen docs.
if(ENABLE_DOCS)
find_package(Doxygen REQUIRED)
add_subdirectory(docs)
add_subdirectory(doc)
endif()

### Package config
Expand Down
49 changes: 39 additions & 10 deletions ci/rt.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,11 @@
# Wen Meng, 12/2020, First version.
# Fernando Andrade-Maldonado 5/2023 rework for CLI Options
# Fernando Andrade-Maldonado / Wen Meng 9/2023 Add Hercules, fix typos, and refactor
#
# Fernando Andrade-Maldonado 4/2024 Additional Log info
######################################################################

SECONDS=0

git_branch="develop"
git_url="https://github.com/NOAA-EMC/UPP.git"
clone_on="no"
Expand Down Expand Up @@ -65,26 +67,28 @@ if [ $mac2 = hf ]; then # for HERA
export machine=HERA
export homedir=${homedir:-"/scratch2/NAGAPE/epic/UPP/test_suite"}
export rundir=${rundir:-"/scratch1/NCEPDEV/stmp2/${USER}"}
module use /scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/unified-env/install/modulefiles/Core
module use /scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/upp-addon-env/install/modulefiles/Core
module load stack-intel/2021.5.0
module load stack-intel-oneapi-mpi/2021.5.1
module load prod_util/2.1.1
elif [ $mac = O ] ; then
elif [ $mac3 = orio ] ; then
export machine=ORION
export homedir=${homedir:-"/work/noaa/epic/UPP"}
export rundir=${rundir:-"/work2/noaa/stmp/$USER"}
module use /work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/unified-env/install/modulefiles/Core
module load stack-intel/2022.0.2
module load stack-intel-oneapi-mpi/2021.5.1
module use /work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/upp-addon-env/install/modulefiles/Core
module load stack-intel/2021.9.0
module load stack-intel-oneapi-mpi/2021.9.0
module load prod_util/2.1.1
module load python/3.10.8
elif [ $mac3 = herc ] ; then
export machine=HERCULES
export homedir=${homedir:-"/work/noaa/epic/UPP"}
export rundir=${rundir:-"/work2/noaa/stmp/$USER"}
module use /work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/unified-env/install/modulefiles/Core
module use /work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/upp-addon-env/install/modulefiles/Core
module load stack-intel/2021.9.0
module load stack-intel-oneapi-mpi/2021.9.0
module load prod_util/2.1.1
module load python/3.10.8
fi

#set working directory
Expand Down Expand Up @@ -235,17 +239,42 @@ for job_id in $jobid_list; do
fi
done

elapsed_time=$( printf '%02dh:%02dm:%02ds\n' $((SECONDS%86400/3600)) $((SECONDS%3600/60)) $((SECONDS%60)) )

python ${test_v}/ci/rt-status.py
test_results=$?

# Cleanup rt log
cd ${test_v}

UPP_HASH=$(git rev-parse HEAD)
SUBMODULE_HASHES=$(git submodule status --recursive)
DATE="$(date '+%Y%m%d %T')"

cd ${test_v}/ci
echo "rundir: ${rundir}" > rt.log.${machine}.temp

cat << EOF > rt.log.${machine}.temp
===== Start of UPP Regression Testing Log =====
UPP Hash Tested:
${UPP_HASH}
Submodule hashes:
${SUBMODULE_HASHES}
Run directory: ${rundir}
Baseline directory: ${homedir}
Total runtime: ${elapsed_time}
Test Date: ${DATE}
Summary Results:
EOF

cat rt.log.${machine} | grep "test:" >> rt.log.${machine}.temp
cat rt.log.${machine} | grep "baseline" >> rt.log.${machine}.temp
python ${test_v}/ci/rt-status.py >> rt.log.${machine}.temp
cat rt.log.${machine}.temp > rt.log.${machine}
rm rt.log.${machine}.temp
echo "===== End of UPP Regression Testing Log =====" >> rt.log.${machine}.temp
mv rt.log.${machine}.temp rt.log.${machine}
mv rt.log.${machine} ${test_v}/tests/logs

# should indicate failure to Jenkins
Expand Down
2 changes: 1 addition & 1 deletion ci/spack.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ spack:
- bacio@2.4.1
- w3emc@2.10.0
- g2@3.4.5
- g2tmpl@1.10.2
- g2tmpl@1.12.0
- sp@2.5.0
- ip@4.3.0
- sigio@2.3.2
Expand Down
File renamed without changes.
File renamed without changes.
Loading

0 comments on commit acf9de7

Please sign in to comment.