XIOS Integration (MVP) #754
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: compile code and tests | |
on: | |
push: | |
branches: [ main, develop, issue103_CI ] | |
pull_request: | |
branches: [ main, develop, issue103_CI ] | |
jobs: | |
clang-on-mac: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: clang | |
run: | | |
brew extract --version=13.0.1 clang-format homebrew/cask-versions | |
brew install clang-format@13.0.1 | |
cd core/src | |
clang-format --dry-run -Werror *cpp include/*hpp | |
cd - | |
for component in physics | |
do | |
cd $component/src | |
clang-format --dry-run -Werror *cpp include/*hpp | |
cd - | |
done | |
build-and-tests-on-ubuntu: | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: installs | |
run: | | |
sudo apt update -y | |
sudo apt install netcdf-bin libnetcdff-dev libnetcdf-c++4-dev libboost-all-dev libeigen3-dev cmake libhdf5-dev | |
svn checkout http://forge.ipsl.jussieu.fr/ioserver/svn/XIOS/trunk xios | |
cp .github/xios_arch/ubuntu.arch xios/arch/arch-GCC_LINUX.path | |
cp .github/xios_arch/ubuntu.env xios/arch/arch-GCC_LINUX.env | |
(cd xios && ./make_xios --arch GCC_LINUX --netcdf_lib netcdf4_seq) | |
- name: make | |
run: | | |
cmake -Bbuild -Dxios_DIR="$(pwd)/xios" -DCMAKE_CXX_COMPILER="$(which mpic++)" | |
cd build | |
make | |
- name: run tests | |
run: | | |
export XIOS_IODEF_PATH="$(pwd)/../run/iodef.xml" | |
for component in core physics | |
do | |
cd $component/test | |
for file in $(find test* -maxdepth 0 -type f); do ./$file; done | |
cd - | |
done | |
build-and-tests-on-mac: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: installs | |
run: | | |
brew install hdf5-mpi | |
brew install netcdf | |
brew install netcdf-cxx | |
brew install boost | |
brew install eigen | |
brew install cmake | |
brew install open-mpi | |
svn checkout http://forge.ipsl.jussieu.fr/ioserver/svn/XIOS/trunk xios | |
cp .github/xios_arch/ubuntu.arch xios/arch/arch-GCC_LINUX.path | |
cp .github/xios_arch/ubuntu.env xios/arch/arch-GCC_LINUX.env | |
(cd xios && ./make_xios --arch GCC_LINUX --netcdf_lib netcdf4_seq) | |
- name: make | |
run: | | |
cmake -Bbuild -Dxios_DIR="$(pwd)/xios" -DCMAKE_CXX_COMPILER="$(which mpic++)" | |
cd build | |
make | |
- name: run tests | |
run: | | |
export XIOS_IODEF_PATH="$(pwd)/../run/iodef.xml" | |
for component in core physics | |
do | |
cd $component/test | |
for file in $(find test* -maxdepth 0 -type f); do ./$file; done | |
cd - | |
done | |
- name: make | |
run: | | |
cmake . | |
make | |
- name: run tests | |
run: | | |
cd core/test | |
for file in $(find test* -maxdepth 0 -type f); do ./$file; done | |
cd - | |
for component in physics | |
do | |
cd $component/test | |
for file in $(find test* -maxdepth 0 -type f); do ./$file; done | |
cd - | |
done |