Skip to content

XIOS Integration (MVP) #752

XIOS Integration (MVP)

XIOS Integration (MVP) #752

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
# sudo apt install subversion
# sudo apt install liburi-perl
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 netcdf
brew install netcdf-cxx
brew install boost
brew install eigen
brew install cmake
- 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