From 4750a27a3f68f2cbc6526873290f834d85e960a3 Mon Sep 17 00:00:00 2001 From: James Edwards Date: Wed, 16 Aug 2023 11:25:21 -0600 Subject: [PATCH 1/8] update esmf bld to use official esmf action --- .github/workflows/extbuild.yml | 37 +++++++++++++++++++++++----------- 1 file changed, 25 insertions(+), 12 deletions(-) diff --git a/.github/workflows/extbuild.yml b/.github/workflows/extbuild.yml index b2127bdc5..f95b1dd32 100644 --- a/.github/workflows/extbuild.yml +++ b/.github/workflows/extbuild.yml @@ -80,18 +80,31 @@ jobs: with: path: ~/ESMF key: ${{ runner.os }}-${{ env.ESMF_VERSION }}-ESMF2 - - name: Build ESMF - if: steps.cache-esmf.outputs.cache-hit != 'true' - uses: ./.github/actions/buildesmf - with: - esmf_version: ${{ env.ESMF_VERSION }} - esmf_bopt: g - esmf_comm: openmpi - install_prefix: $HOME/ESMF - netcdf_c_path: /usr - netcdf_fortran_path: /usr - pnetcdf_path: /usr - parallelio_path: $HOME/pio + # - name: Build ESMF + # if: steps.cache-esmf.outputs.cache-hit != 'true' + # uses: ./.github/actions/buildesmf + # with: + # esmf_version: ${{ env.ESMF_VERSION }} + # esmf_bopt: g + # esmf_comm: openmpi + # install_prefix: $HOME/ESMF + # netcdf_c_path: /usr + # netcdf_fortran_path: /usr + # pnetcdf_path: /usr + # parallelio_path: $HOME/pio + - name: Install ESMF + uses: esmf-org/install-esmf-action@v1 + env: + ESMF_COMPILER: gfortran + ESMF_BOPT: g + ESMF_COMM: openmpi + ESMF_NETCDF: nc-config + ESMF_INSTALL_PREFIX: $HOME/ESMF + with: + version: ${{ env.ESMF_VERSION }} + esmpy: false + cache: false + - name: Build CDEPS uses: ./.github/actions/buildcdeps with: From bb60bdcd6a7e70a3af54b68f9104304a116be17b Mon Sep 17 00:00:00 2001 From: James Edwards Date: Wed, 16 Aug 2023 11:30:13 -0600 Subject: [PATCH 2/8] update esmf bld to use official esmf action --- .github/workflows/extbuild.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/extbuild.yml b/.github/workflows/extbuild.yml index f95b1dd32..03ddaeb62 100644 --- a/.github/workflows/extbuild.yml +++ b/.github/workflows/extbuild.yml @@ -19,10 +19,10 @@ jobs: CPPFLAGS: "-I/usr/include -I/usr/local/include " LDFLAGS: "-L/usr/lib/x86_64-linux-gnu " # Versions of all dependencies can be updated here - these match tag names in the github repo - ESMF_VERSION: v8.4.0 + ESMF_VERSION: v8.5.0 #PNETCDF_VERSION: checkpoint.1.12.3 #NETCDF_FORTRAN_VERSION: v4.6.0 - ParallelIO_VERSION: pio2_5_10 + ParallelIO_VERSION: pio2_6_0 steps: - id: checkout-CDEPS uses: actions/checkout@v3 @@ -100,10 +100,10 @@ jobs: ESMF_COMM: openmpi ESMF_NETCDF: nc-config ESMF_INSTALL_PREFIX: $HOME/ESMF - with: - version: ${{ env.ESMF_VERSION }} - esmpy: false - cache: false + with: + version: ${{ env.ESMF_VERSION }} + esmpy: false + cache: false - name: Build CDEPS uses: ./.github/actions/buildcdeps From aab9411b89b58e6a99f655e02befe8d02daf22f7 Mon Sep 17 00:00:00 2001 From: James Edwards Date: Wed, 16 Aug 2023 12:35:21 -0600 Subject: [PATCH 3/8] add pio as external to esmf build --- .github/workflows/extbuild.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/extbuild.yml b/.github/workflows/extbuild.yml index 03ddaeb62..ecadab3d5 100644 --- a/.github/workflows/extbuild.yml +++ b/.github/workflows/extbuild.yml @@ -100,6 +100,9 @@ jobs: ESMF_COMM: openmpi ESMF_NETCDF: nc-config ESMF_INSTALL_PREFIX: $HOME/ESMF + ESMF_PIO: external + ESMF_PIO_INCLUDE: $HOME/pio/include + ESMF_PIO_LIBPATH: $HOME/pio/lib with: version: ${{ env.ESMF_VERSION }} esmpy: false @@ -108,7 +111,7 @@ jobs: - name: Build CDEPS uses: ./.github/actions/buildcdeps with: - esmfmkfile: $HOME/ESMF/lib/libg/Linux.gfortran.64.openmpi.default/esmf.mk + esmfmkfile: $HOME/ESMF/lib/esmf.mk pio_path: $HOME/pio src_root: $GITHUB_WORKSPACE cmake_flags: " -Wno-dev -DCMAKE_BUILD_TYPE=DEBUG -DWERROR=ON -DCMAKE_Fortran_FLAGS=\"-DCPRGNU -g -Wall \ From 2e1b9f8a59b5259da7f1ea461abaeb574cac9c67 Mon Sep 17 00:00:00 2001 From: James Edwards Date: Wed, 16 Aug 2023 12:50:51 -0600 Subject: [PATCH 4/8] add pio as external to esmf build --- .github/workflows/extbuild.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/extbuild.yml b/.github/workflows/extbuild.yml index ecadab3d5..f5bf9da8c 100644 --- a/.github/workflows/extbuild.yml +++ b/.github/workflows/extbuild.yml @@ -99,10 +99,10 @@ jobs: ESMF_BOPT: g ESMF_COMM: openmpi ESMF_NETCDF: nc-config - ESMF_INSTALL_PREFIX: $HOME/ESMF + ESMF_INSTALL_PREFIX: /home/runner/ESMF ESMF_PIO: external - ESMF_PIO_INCLUDE: $HOME/pio/include - ESMF_PIO_LIBPATH: $HOME/pio/lib + ESMF_PIO_INCLUDE: /home/runner/pio/include + ESMF_PIO_LIBPATH: /home/runner/pio/lib with: version: ${{ env.ESMF_VERSION }} esmpy: false From 57ef5ec5302794087350a53ae67dd1aca1599851 Mon Sep 17 00:00:00 2001 From: James Edwards Date: Wed, 16 Aug 2023 13:27:37 -0600 Subject: [PATCH 5/8] add pnetcdf-config --- .github/workflows/extbuild.yml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/extbuild.yml b/.github/workflows/extbuild.yml index f5bf9da8c..ba4e9ada4 100644 --- a/.github/workflows/extbuild.yml +++ b/.github/workflows/extbuild.yml @@ -74,12 +74,12 @@ jobs: parallelio_version: ${{ env.ParallelIO_VERSION }} enable_fortran: True install_prefix: $HOME/pio - - name: Cache ESMF - id: cache-esmf - uses: actions/cache@v3 - with: - path: ~/ESMF - key: ${{ runner.os }}-${{ env.ESMF_VERSION }}-ESMF2 + # - name: Cache ESMF + # id: cache-esmf + # uses: actions/cache@v3 + # with: + # path: ~/ESMF + # key: ${{ runner.os }}-${{ env.ESMF_VERSION }}-ESMF2 # - name: Build ESMF # if: steps.cache-esmf.outputs.cache-hit != 'true' # uses: ./.github/actions/buildesmf @@ -99,6 +99,7 @@ jobs: ESMF_BOPT: g ESMF_COMM: openmpi ESMF_NETCDF: nc-config + ESMF_PNETCDF: pnetcdf-config ESMF_INSTALL_PREFIX: /home/runner/ESMF ESMF_PIO: external ESMF_PIO_INCLUDE: /home/runner/pio/include From 6dce40229847d9e67da4972c1806e860d8306912 Mon Sep 17 00:00:00 2001 From: James Edwards Date: Wed, 16 Aug 2023 13:59:48 -0600 Subject: [PATCH 6/8] cleanup github workflow script --- .github/workflows/extbuild.yml | 46 +--------------------------------- 1 file changed, 1 insertion(+), 45 deletions(-) diff --git a/.github/workflows/extbuild.yml b/.github/workflows/extbuild.yml index ba4e9ada4..8f063952e 100644 --- a/.github/workflows/extbuild.yml +++ b/.github/workflows/extbuild.yml @@ -20,8 +20,6 @@ jobs: LDFLAGS: "-L/usr/lib/x86_64-linux-gnu " # Versions of all dependencies can be updated here - these match tag names in the github repo ESMF_VERSION: v8.5.0 - #PNETCDF_VERSION: checkpoint.1.12.3 - #NETCDF_FORTRAN_VERSION: v4.6.0 ParallelIO_VERSION: pio2_6_0 steps: - id: checkout-CDEPS @@ -37,30 +35,6 @@ jobs: sudo apt-get install netcdf-bin libnetcdf-dev libnetcdff-dev sudo apt-get install pnetcdf-bin libpnetcdf-dev sudo apt-get install autotools-dev autoconf - # - id: cache-pnetcdf - # uses: actions/cache@v3 - # with: - # path: ~/pnetcdf - # key: ${{ runner.os }}-${{ env.PNETCDF_VERSION}}-pnetcdf1 - # - name: Build PNetCDF - # if: steps.cache-pnetcdf.outputs.cache-hit != 'true' - # uses: ./.github/actions/buildpnetcdf - # with: - # pnetcdf_version: ${{ env.PNETCDF_VERSION }} - # install_prefix: $HOME/pnetcdf - # - name: Cache netcdf-fortran - # id: cache-netcdf-fortran - # uses: actions/cache@v3 - # with: - # path: ~/netcdf-fortran - # key: ${{ runner.os }}-${{ env.NETCDF_FORTRAN_VERSION }}-netcdf-fortran1 - # - name: Build NetCDF Fortran - # if: steps.cache-netcdf-fortran.outputs.cache-hit != 'true' - # uses: ./.github/actions/buildnetcdff - # with: - # netcdf_fortran_version: ${{ env.NETCDF_FORTRAN_VERSION }} - # install_prefix: $HOME/netcdf-fortran - # netcdf_c_path: /usr - name: Cache PARALLELIO id: cache-PARALLELIO uses: actions/cache@v3 @@ -74,24 +48,6 @@ jobs: parallelio_version: ${{ env.ParallelIO_VERSION }} enable_fortran: True install_prefix: $HOME/pio - # - name: Cache ESMF - # id: cache-esmf - # uses: actions/cache@v3 - # with: - # path: ~/ESMF - # key: ${{ runner.os }}-${{ env.ESMF_VERSION }}-ESMF2 - # - name: Build ESMF - # if: steps.cache-esmf.outputs.cache-hit != 'true' - # uses: ./.github/actions/buildesmf - # with: - # esmf_version: ${{ env.ESMF_VERSION }} - # esmf_bopt: g - # esmf_comm: openmpi - # install_prefix: $HOME/ESMF - # netcdf_c_path: /usr - # netcdf_fortran_path: /usr - # pnetcdf_path: /usr - # parallelio_path: $HOME/pio - name: Install ESMF uses: esmf-org/install-esmf-action@v1 env: @@ -107,7 +63,7 @@ jobs: with: version: ${{ env.ESMF_VERSION }} esmpy: false - cache: false + cache: true - name: Build CDEPS uses: ./.github/actions/buildcdeps From 8276318340c99a933e3b72210814c9bd9c071258 Mon Sep 17 00:00:00 2001 From: James Edwards Date: Wed, 16 Aug 2023 15:46:47 -0600 Subject: [PATCH 7/8] response to review --- .github/workflows/extbuild.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/extbuild.yml b/.github/workflows/extbuild.yml index 8f063952e..6e4aa00cf 100644 --- a/.github/workflows/extbuild.yml +++ b/.github/workflows/extbuild.yml @@ -39,7 +39,7 @@ jobs: id: cache-PARALLELIO uses: actions/cache@v3 with: - path: ~/pio + path: $GITHUB_WORKSPACE/pio key: ${{ runner.os }}-${{ env.ParallelIO_VERSION }}-parallelio2 - name: Build ParallelIO if: steps.cache-PARALLELIO.outputs.cache-hit != 'true' @@ -47,7 +47,7 @@ jobs: with: parallelio_version: ${{ env.ParallelIO_VERSION }} enable_fortran: True - install_prefix: $HOME/pio + install_prefix: $GITHUB_WORKSPACE/pio - name: Install ESMF uses: esmf-org/install-esmf-action@v1 env: @@ -56,10 +56,10 @@ jobs: ESMF_COMM: openmpi ESMF_NETCDF: nc-config ESMF_PNETCDF: pnetcdf-config - ESMF_INSTALL_PREFIX: /home/runner/ESMF + ESMF_INSTALL_PREFIX: $GITHUB_WORKSPACE/ESMF ESMF_PIO: external - ESMF_PIO_INCLUDE: /home/runner/pio/include - ESMF_PIO_LIBPATH: /home/runner/pio/lib + ESMF_PIO_INCLUDE: $GITHUB_WORKSPACE/pio/include + ESMF_PIO_LIBPATH: $GITHUB_WORKSPACE/pio/lib with: version: ${{ env.ESMF_VERSION }} esmpy: false @@ -68,8 +68,8 @@ jobs: - name: Build CDEPS uses: ./.github/actions/buildcdeps with: - esmfmkfile: $HOME/ESMF/lib/esmf.mk - pio_path: $HOME/pio + esmfmkfile: $ESMFMKFILE + pio_path: $GITHUB_WORKSPACE/pio src_root: $GITHUB_WORKSPACE cmake_flags: " -Wno-dev -DCMAKE_BUILD_TYPE=DEBUG -DWERROR=ON -DCMAKE_Fortran_FLAGS=\"-DCPRGNU -g -Wall \ -ffree-form -ffree-line-length-none -fallow-argument-mismatch \"" From f415e668e5bd8e029b8c2756bc21df4a102be58e Mon Sep 17 00:00:00 2001 From: James Edwards Date: Wed, 16 Aug 2023 15:56:05 -0600 Subject: [PATCH 8/8] response to review --- .github/workflows/extbuild.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/extbuild.yml b/.github/workflows/extbuild.yml index 6e4aa00cf..52afb7b81 100644 --- a/.github/workflows/extbuild.yml +++ b/.github/workflows/extbuild.yml @@ -39,7 +39,7 @@ jobs: id: cache-PARALLELIO uses: actions/cache@v3 with: - path: $GITHUB_WORKSPACE/pio + path: ${GITHUB_WORKSPACE}/pio key: ${{ runner.os }}-${{ env.ParallelIO_VERSION }}-parallelio2 - name: Build ParallelIO if: steps.cache-PARALLELIO.outputs.cache-hit != 'true' @@ -47,7 +47,7 @@ jobs: with: parallelio_version: ${{ env.ParallelIO_VERSION }} enable_fortran: True - install_prefix: $GITHUB_WORKSPACE/pio + install_prefix: ${GITHUB_WORKSPACE}/pio - name: Install ESMF uses: esmf-org/install-esmf-action@v1 env: @@ -56,10 +56,10 @@ jobs: ESMF_COMM: openmpi ESMF_NETCDF: nc-config ESMF_PNETCDF: pnetcdf-config - ESMF_INSTALL_PREFIX: $GITHUB_WORKSPACE/ESMF + ESMF_INSTALL_PREFIX: ${GITHUB_WORKSPACE}/ESMF ESMF_PIO: external - ESMF_PIO_INCLUDE: $GITHUB_WORKSPACE/pio/include - ESMF_PIO_LIBPATH: $GITHUB_WORKSPACE/pio/lib + ESMF_PIO_INCLUDE: ${GITHUB_WORKSPACE}/pio/include + ESMF_PIO_LIBPATH: ${GITHUB_WORKSPACE}/pio/lib with: version: ${{ env.ESMF_VERSION }} esmpy: false @@ -69,8 +69,8 @@ jobs: uses: ./.github/actions/buildcdeps with: esmfmkfile: $ESMFMKFILE - pio_path: $GITHUB_WORKSPACE/pio - src_root: $GITHUB_WORKSPACE + pio_path: ${GITHUB_WORKSPACE}/pio + src_root: ${GITHUB_WORKSPACE} cmake_flags: " -Wno-dev -DCMAKE_BUILD_TYPE=DEBUG -DWERROR=ON -DCMAKE_Fortran_FLAGS=\"-DCPRGNU -g -Wall \ -ffree-form -ffree-line-length-none -fallow-argument-mismatch \"" - name: Test CDEPS