26
26
CPPFLAGS : " -I/usr/include -I/usr/local/include "
27
27
LDFLAGS : " -L/usr/lib/x86_64-linux-gnu -lnetcdf -lnetcdff -lpnetcdf"
28
28
# Versions of all dependencies can be updated here
29
- ESMF_VERSION : v8.6.0
29
+ ESMF_VERSION : v8.6.1
30
30
PARALLELIO_VERSION : pio2_6_2
31
31
CIME_MODEL : cesm
32
32
CIME_DRIVER : nuopc
@@ -64,13 +64,13 @@ jobs:
64
64
run : pip install -r requirements.txt
65
65
# use the latest cesm main
66
66
- name : cesm checkout
67
- uses : actions/checkout@v3
67
+ uses : actions/checkout@v4
68
68
with :
69
69
repository : ESCOMP/CESM
70
70
path : cesm
71
71
# this cmeps commit
72
72
- name : cmeps checkout
73
- uses : actions/checkout@v3
73
+ uses : actions/checkout@v4
74
74
with :
75
75
path : cesm/components/cmeps
76
76
@@ -94,72 +94,53 @@ jobs:
94
94
git submodule update --init
95
95
cd ../components/cdeps
96
96
git checkout main
97
+ git submodule update --init
97
98
98
99
- name : Cache ESMF
99
100
id : cache-esmf
100
- uses : actions/cache@v3
101
+ uses : actions/cache@v4
101
102
with :
102
103
path : ~/ESMF
103
- key : ${{ runner.os }}-${{ env.ESMF_VERSION }}-ESMF1
104
- # - name: cache pnetcdf
105
- # id: cache-pnetcdf
106
- # uses: actions/cache@v3
107
- # with:
108
- # path: ~/pnetcdf
109
- # key: ${{ runner.os }}-${{ env.PNETCDF_VERSION}}-pnetcdf
110
-
111
- # - name: Cache netcdf-fortran
112
- # id: cache-netcdf-fortran
113
- # uses: actions/cache@v3
114
- # with:
115
- # path: ~/netcdf-fortran
116
- # key: ${{ runner.os }}-${{ env.NETCDF_FORTRAN_VERSION }}-netcdf-fortran
104
+ key : ${{ runner.os }}-${{ env.ESMF_VERSION }}
117
105
118
106
- name : Cache ParallelIO
119
107
id : cache-ParallelIO
120
- uses : actions/cache@v3
108
+ uses : actions/cache@v4
121
109
with :
122
- path : ~ /pio
110
+ path : ${GITHUB_WORKSPACE} /pio
123
111
key : ${{ runner.os }}-${{ env.PARALLELIO_VERSION }}.parallelio
112
+
124
113
- name : Cache inputdata
125
114
id : cache-inputdata
126
- uses : actions/cache@v3
115
+ uses : actions/cache@v4
127
116
with :
128
117
path : $HOME/cesm/inputdata
129
118
key : inputdata
130
- # - name: Build PNetCDF
131
- # if: steps.cache-pnetcdf.outputs.cache-hit != 'true'
132
- # uses: ESCOMP/CDEPS/.github/actions/buildpnetcdf@e06246b560d3132170bb1a5443fa3d65dfbd2040
133
- # with:
134
- # pnetcdf_version: ${{ env.PNETCDF_VERSION }}
135
- # install_prefix: $HOME/pnetcdf
136
- # - name: Build NetCDF Fortran
137
- # if: steps.cache-netcdf-fortran.outputs.cache-hit != 'true'
138
- # uses: ESCOMP/CDEPS/.github/actions/buildnetcdff@e06246b560d3132170bb1a5443fa3d65dfbd2040
139
- # with:
140
- # netcdf_fortran_version: ${{ env.NETCDF_FORTRAN_VERSION }}
141
- # install_prefix: $HOME/netcdf-fortran
142
- # netcdf_c_path: /usr
119
+
143
120
- name : Build ParallelIO
144
121
if : steps.cache-PARALLELIO.outputs.cache-hit != 'true'
145
122
uses : NCAR/ParallelIO/.github/actions/parallelio_cmake@05173a6556ea8d80eb34e3881a5014ea8f4b7543
146
123
with :
147
124
parallelio_version : ${{ env.ParallelIO_VERSION }}
148
125
enable_fortran : True
149
- install_prefix : /home/runner /pio
126
+ install_prefix : ${GITHUB_WORKSPACE} /pio
150
127
151
- - name : Build ESMF
152
- if : steps.cache-esmf.outputs.cache-hit != 'true'
153
- uses : ESCOMP/CDEPS/.github/actions/buildesmf@e06246b560d3132170bb1a5443fa3d65dfbd2040
128
+ - name : Install ESMF
129
+ uses : esmf-org/install-esmf-action@v1
130
+ env :
131
+ ESMF_COMPILER : gfortran
132
+ ESMF_BOPT : g
133
+ ESMF_COMM : openmpi
134
+ ESMF_NETCDF : nc-config
135
+ ESMF_PNETCDF : pnetcdf-config
136
+ ESMF_INSTALL_PREFIX : ${GITHUB_WORKSPACE}/ESMF
137
+ ESMF_PIO : external
138
+ ESMF_PIO_INCLUDE : ${GITHUB_WORKSPACE}/pio/include
139
+ ESMF_PIO_LIBPATH : ${GITHUB_WORKSPACE}/pio/lib
154
140
with :
155
- esmf_version : ${{ env.ESMF_VERSION }}
156
- esmf_bopt : g
157
- esmf_comm : openmpi
158
- install_prefix : ~/ESMF
159
- netcdf_c_path : /usr
160
- netcdf_fortran_path : /usr
161
- pnetcdf_path : /usr
162
- parallelio_path : ~/pio
141
+ version : ${{ env.ESMF_VERSION }}
142
+ esmpy : false
143
+ cache : true
163
144
164
145
165
146
- name : PREP for scripts regression test
@@ -169,14 +150,13 @@ jobs:
169
150
pushd $GITHUB_WORKSPACE/cesm/cime/CIME/tests
170
151
export SRCROOT=$GITHUB_WORKSPACE/cesm/
171
152
export CIME_TEST_PLATFORM=ubuntu-latest
172
- export PIO_INCDIR=$HOME /pio/include
173
- export PIO_LIBDIR=$HOME /pio/lib
153
+ export PIO_INCDIR=$GITHUB_WORKSPACE /pio/include
154
+ export PIO_LIBDIR=$GITHUB_WORKSPACE /pio/lib
174
155
export PIO_VERSION_MAJOR=2
175
156
export PIO_TYPENAME_VALID_VALUES="netcdf,pnetcdf"
176
157
export NETCDF_PATH=/usr
177
158
export PNETCDF_PATH=/usr
178
159
export LD_LIBRARY_PATH=/usr/lib/libx86_64-linux-gnu/:$LD_LIBRARY_PATH
179
- export ESMFMKFILE=$HOME/ESMF/lib/libg/Linux.gfortran.64.openmpi.default/esmf.mk
180
160
cat <<EOF >> $GITHUB_WORKSPACE/cesm/ccs_config/machines/cmake_macros/ubuntu-latest.cmake
181
161
set(NetCDF_Fortran_INCLUDE_DIR /usr/include)
182
162
set(NetCDF_Fortran_LIBRARY /usr/lib/x86_64-gnu-Linux/libnetcdff.so)
@@ -190,6 +170,6 @@ jobs:
190
170
popd
191
171
# the following can be used by developers to login to the github server in case of errors
192
172
# see https://github.com/marketplace/actions/debugging-with-tmate for further details
193
- - name : Setup tmate session
194
- if : ${{ failure() }}
195
- uses : mxschmitt/action-tmate@v3
173
+ # - name: Setup tmate session
174
+ # if: ${{ failure() }}
175
+ # uses: mxschmitt/action-tmate@v3
0 commit comments