From 59a69f19e04103599b3784f00656ac4eb0c7d554 Mon Sep 17 00:00:00 2001 From: Matthew Thompson Date: Wed, 20 Mar 2024 08:02:31 -0400 Subject: [PATCH 1/5] CI: Remove macos-11, add macos-13 As `macos-11` is deprecated at GitHub Actions (and is ancient) we remove it and add `macos-13` --- .github/workflows/main.yml | 6 +++--- ChangeLog.md | 1 + 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 81b92eaf..b1396e20 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -18,13 +18,13 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [ubuntu-22.04, macos-11, macos-12] + os: [ubuntu-22.04, macos-12, macos-13] compiler: [gfortran-10, gfortran-11, gfortran-12, gfortran-13] exclude: - - os: macos-11 - compiler: gfortran-13 - os: macos-12 compiler: gfortran-10 + - os: macos-13 + compiler: gfortran-10 # fail-fast if set to 'true' here is good for production, but when # debugging, set to 'false'. fail-fast means if *any* ci test in the matrix fails diff --git a/ChangeLog.md b/ChangeLog.md index 767206ec..c5dd396c 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -8,6 +8,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Added `-quiet` flag for NAG Fortran +- Remove `macos-11` from GitHub Actions, add `macos-12` ## [4.9.0] - 2024-02-06 From 202475e567a5a71d8e455ce9e947d825ab94b449 Mon Sep 17 00:00:00 2001 From: Matthew Thompson Date: Wed, 20 Mar 2024 09:20:26 -0400 Subject: [PATCH 2/5] Update to Open MPI 5.0.2 --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index b1396e20..1b3460d1 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -69,7 +69,7 @@ jobs: - name: Build MPI if: steps.cache-mpi.outputs.cache-hit != 'true' run: | - sh ${GITHUB_WORKSPACE}/tools/ci-install-mpi.sh openmpi 4.1.4 + sh ${GITHUB_WORKSPACE}/tools/ci-install-mpi.sh openmpi 5.0.2 - name: Set MPI Environment run: | From a0aa483fa2c0a122c2ec6cadf1cc80cbc0de7b7c Mon Sep 17 00:00:00 2001 From: Matthew Thompson Date: Mon, 20 May 2024 16:07:51 -0400 Subject: [PATCH 3/5] Fix up CI --- .github/workflows/main.yml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 1b3460d1..8afc7634 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -18,13 +18,19 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [ubuntu-22.04, macos-12, macos-13] + os: [ubuntu-22.04, ubuntu-24.04, macos-13, macos-14] compiler: [gfortran-10, gfortran-11, gfortran-12, gfortran-13] exclude: - - os: macos-12 - compiler: gfortran-10 - os: macos-13 compiler: gfortran-10 + - os: macos-14 + compiler: gfortran-10 + - os: ubuntu-24.04 + compiler: gfortran-10 + - os: ubuntu-24.04 + compiler: gfortran-11 + - os: ubuntu-22.04 + compiler: gfortran-13 # fail-fast if set to 'true' here is good for production, but when # debugging, set to 'false'. fail-fast means if *any* ci test in the matrix fails From 2f5345d1b93cecf2d2aa804dd7ade6bcbd58f366 Mon Sep 17 00:00:00 2001 From: Matthew Thompson Date: Tue, 21 May 2024 09:11:06 -0400 Subject: [PATCH 4/5] Try 4 processors --- .github/workflows/main.yml | 4 ++-- tools/ci-install-mpi.sh | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 8afc7634..392600ce 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -93,10 +93,10 @@ jobs: run: cmake -B build - name: Build pfUnit - run: cmake --build build --parallel + run: cmake --build build --parallel 4 - name: Build Tests - run: cmake --build build --parallel -t build-tests + run: cmake --build build --parallel 4 -t build-tests - name: Run Tests run: ctest --test-dir build --parallel 1 --output-on-failure --repeat until-pass:4 --schedule-random diff --git a/tools/ci-install-mpi.sh b/tools/ci-install-mpi.sh index b0ac2434..0bb669bc 100644 --- a/tools/ci-install-mpi.sh +++ b/tools/ci-install-mpi.sh @@ -15,7 +15,7 @@ then tar xjf ${MPI_IMPL}-${MPI_VER}.tar.bz2 && rm ${MPI_IMPL}-${MPI_VER}.tar.bz2 cd ${MPI_IMPL}-${MPI_VER} ./configure --prefix=${HOME}/local/${MPI_IMPL} --disable-wrapper-rpath --disable-wrapper-runpath --with-hwloc=internal --with-libevent=internal - make -j $(nproc) + make -j 4 make install-strip cd .. && rm -r ${MPI_IMPL}-${MPI_VER} exit 0 From 4a8733c8fa8c12f659fdf09ea4bea1e8b50227c3 Mon Sep 17 00:00:00 2001 From: Matthew Thompson Date: Tue, 18 Jun 2024 10:31:00 -0400 Subject: [PATCH 5/5] Add gfortran-14 --- .github/workflows/main.yml | 13 +++++++------ ChangeLog.md | 2 +- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 392600ce..f0a8cb51 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -19,14 +19,15 @@ jobs: strategy: matrix: os: [ubuntu-22.04, ubuntu-24.04, macos-13, macos-14] - compiler: [gfortran-10, gfortran-11, gfortran-12, gfortran-13] - exclude: - - os: macos-13 - compiler: gfortran-10 - - os: macos-14 + compiler: [gfortran-11, gfortran-12, gfortran-13] + # gfortran-10 is only on ubuntu-22.04 + # gfortran-14 is available on ubuntu-24.04 + include: + - os: ubuntu-22.04 compiler: gfortran-10 - os: ubuntu-24.04 - compiler: gfortran-10 + compiler: gfortran-14 + exclude: - os: ubuntu-24.04 compiler: gfortran-11 - os: ubuntu-22.04 diff --git a/ChangeLog.md b/ChangeLog.md index 0e80b03c..6d82b389 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -8,7 +8,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Added `-quiet` flag for NAG Fortran -- Remove `macos-11` from GitHub Actions, add `macos-12` +- Remove `macos-11` from GitHub Actions, add `macos-12` and `gfortran-14` to Ubuntu 24.04 ### Added