Generalized indices: mpp global field updates
#1710
Workflow file for this run
This file contains hidden or 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: Autotools build and unit testing with GCC | |
| on: [push, pull_request] | |
| # cancel running jobs if theres a newer push | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| conf-flag: [ --disable-openmp, --with-mpi=no, --disable-r8-default] | |
| input-flag: [--with-yaml, --enable-test-input=/home/unit_tests_input] | |
| exclude: | |
| - conf-flag: --with-mpi=no | |
| input-flag: --enable-test-input=/home/unit_tests_input | |
| container: | |
| image: ghcr.io/noaa-gfdl/fms/fms-ci-rocky-gnu:15.1.0 | |
| env: | |
| DISTCHECK_CONFIGURE_FLAGS: "${{ matrix.conf-flag }} ${{ matrix.input-flag }}" | |
| DEBUG_FLAGS: "-O0 -g -fbounds-check -ffpe-trap=invalid,zero,overflow" # debug compiler flags taken from the mkmf template | |
| # diag manager openmp + logical mask tests fail with gcc, these are reproducible outside the CI | |
| # test_mpp_clock_begin_end_id is an expected fail that is passing, only happens in the CI | |
| # test_time_interp2 tests fail from file issues, only happens in the CI | |
| SKIP_TESTS: "test_time_none.10 test_time_sum.10 test_time_avg.10 test_time_min.10 test_time_max.10 test_time_pow.10 test_time_rms.10 test_mpp_clock_begin_end_id.10 test_time_interp2.7 test_time_interp2.8" | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v6.0.1 | |
| - name: Prepare GNU autoconf for build | |
| run: autoreconf -if | |
| - name: Configure the build | |
| run: ./configure ${DISTCHECK_CONFIGURE_FLAGS} FCFLAGS="$FCFLAGS $DEBUG_FLAGS" || cat config.log | |
| - name: Run distcheck (compiles, tests, and packages) | |
| run: make distcheck 2>&1 > distcheck.log | |
| if: ${{ matrix.conf-flag != '--with-mpi=no' }} | |
| - name: Output errors on failure | |
| run: grep -E "^FAIL:|^XPASS:" distcheck.log | |
| if: failure() | |
| - name: Upload log on failure | |
| uses: actions/upload-artifact@v7.0.0 | |
| if: failure() | |
| with: | |
| path: distcheck.log | |
| - name: Build the library (without test suite for serial build) | |
| run: make | |
| if: ${{ matrix.conf-flag == '--with-mpi=no' }} |