Handmerge develop to MAPL3 2023-Sep-19 #3343
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: Build Tests | |
on: | |
pull_request: | |
types: [opened, synchronize, reopened] | |
# Do not run if the only files changed cannot affect the build | |
paths-ignore: | |
- "**.md" | |
- "**.json" | |
- "Python/**" | |
- ".github/CODEOWNERS" | |
- ".github/PULL_REQUEST_TEMPLATE.md" | |
- ".editorconfig" | |
jobs: | |
build_test_mapl: | |
name: Build and Test MAPL GNU | |
runs-on: ubuntu-latest | |
container: | |
image: gmao/ubuntu20-geos-env-mkl:v7.14.0-openmpi_4.1.4-gcc_12.1.0 | |
# Per https://github.com/actions/virtual-environments/issues/1445#issuecomment-713861495 | |
# It seems like we might not need secrets on GitHub Actions which is good for forked | |
# pull requests | |
#credentials: | |
#username: ${{ secrets.DOCKERHUB_USERNAME }} | |
#password: ${{ secrets.DOCKERHUB_TOKEN }} | |
env: | |
OMPI_ALLOW_RUN_AS_ROOT: 1 | |
OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 | |
OMPI_MCA_btl_vader_single_copy_mechanism: none | |
steps: | |
- name: Cancel Previous Runs | |
uses: styfle/[email protected] | |
with: | |
access_token: ${{ github.token }} | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 1 | |
- name: Set all directories as git safe | |
run: | | |
git config --global --add safe.directory '*' | |
- name: Versions etc. | |
run: | | |
gfortran --version | |
mpirun --version | |
echo $BASEDIR | |
- name: Mepo clone external repos | |
run: | | |
mepo init | |
mepo clone | |
mepo status | |
- name: CMake | |
run: | | |
mkdir build | |
cd build | |
cmake .. -DBASEDIR=$BASEDIR/Linux -DCMAKE_Fortran_COMPILER=gfortran -DCMAKE_BUILD_TYPE=Debug -DMPIEXEC_PREFLAGS='--oversubscribe' | |
- name: Build | |
run: | | |
cd build | |
make -j4 install | |
- name: Run MAPL unit tests | |
run: | | |
cd build | |
make -j4 build-tests | |
# skip performance tests | |
# NOTE: Currently Open MPI fails on the bundleio with: | |
# | |
# The OSC pt2pt component does not support MPI_THREAD_MULTIPLE in this release. | |
# Workarounds are to run on a single node, or to use a system with an RDMA | |
# capable network such as Infiniband. | |
# | |
# For now, we run GNU/Open MPI without the bundleio tests. Some indications that | |
# Open MPI 5 will not have this limitation | |
ctest -E bundleio -LE 'PERFORMANCE|EXTDATA1G_BIG_TESTS|EXTDATA2G_BIG_TESTS' --output-on-failure | |
build_test_mapl_intel: | |
name: Build and Test MAPL Intel | |
runs-on: ubuntu-latest | |
container: | |
image: gmao/ubuntu20-geos-env:v7.14.0-intelmpi_2021.6.0-intel_2022.1.0 | |
# Per https://github.com/actions/virtual-environments/issues/1445#issuecomment-713861495 | |
# It seems like we might not need secrets on GitHub Actions which is good for forked | |
# pull requests | |
#credentials: | |
#username: ${{ secrets.DOCKERHUB_USERNAME }} | |
#password: ${{ secrets.DOCKERHUB_TOKEN }} | |
steps: | |
- name: Cancel Previous Runs | |
uses: styfle/[email protected] | |
with: | |
access_token: ${{ github.token }} | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 1 | |
- name: Set all directories as git safe | |
run: | | |
git config --global --add safe.directory '*' | |
- name: Versions etc. | |
run: | | |
ifort --version | |
mpirun --version | |
echo $BASEDIR | |
- name: Mepo clone external repos | |
run: | | |
mepo init | |
mepo clone | |
mepo status | |
- name: CMake | |
run: | | |
mkdir build | |
cd build | |
cmake .. -DBASEDIR=$BASEDIR/Linux -DCMAKE_Fortran_COMPILER=ifort -DCMAKE_BUILD_TYPE=Debug | |
- name: Build | |
run: | | |
cd build | |
make -j4 install | |
- name: Run MAPL unit tests | |
run: | | |
cd build | |
make -j4 build-tests | |
# skip performance tests | |
ctest -LE 'PERFORMANCE|EXTDATA1G_BIG_TESTS|EXTDATA2G_BIG_TESTS' --output-on-failure |