Skip to content

Commit 91da14b

Browse files
Merge branch 'JCSDA:develop' into develop
2 parents 61fe94a + 31ccf49 commit 91da14b

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+898
-121
lines changed

.github/workflows/macos-ci-aarch64.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ jobs:
111111
set +e
112112
spack mirror add local-binary file:///Users/ec2-user/spack-stack/build-cache/
113113
spack buildcache update-index local-binary || (echo "No valid binary cache found, proceed without" && spack mirror rm local-binary)
114-
set +e
114+
set -e
115115
echo "Packages in spack binary cache:"
116116
spack buildcache list
117117
fi

.github/workflows/ubuntu-ci-x86_64-gnu.yaml

Lines changed: 22 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -51,12 +51,14 @@ jobs:
5151
# Set up spack-stack
5252
source ./setup.sh
5353
54-
declare -a TEMPLATES=("unified-dev" "skylab-dev")
54+
declare -a TEMPLATES=("unified-dev" "skylab-dev" "cylc-dev")
5555
for TEMPLATE in "${TEMPLATES[@]}"; do
5656
if [[ "${TEMPLATE}" == *"unified-dev"* ]]; then
5757
export ENVNAME=ue-gcc-11.4.0-buildcache
5858
elif [[ "${TEMPLATE}" == *"skylab-dev"* ]]; then
5959
export ENVNAME=se-gcc-11.4.0-buildcache
60+
elif [[ "${TEMPLATE}" == *"cylc-dev"* ]]; then
61+
export ENVNAME=ce-gcc-11.4.0-buildcache
6062
fi
6163
echo "Creating environment ${ENVNAME} from template ${TEMPLATE}"
6264
@@ -68,7 +70,8 @@ jobs:
6870
# Find external packages
6971
spack external find --scope system \
7072
--exclude bison --exclude openssl \
71-
--exclude curl --exclude python
73+
--exclude curl --exclude python \
74+
--exclude meson
7275
spack external find --scope system grep
7376
spack external find --scope system sed
7477
spack external find --scope system perl
@@ -104,7 +107,7 @@ jobs:
104107
set +e
105108
spack mirror add local-binary file:///home/ubuntu/spack-stack/build-cache/
106109
spack buildcache update-index local-binary || (echo "No valid binary cache found, proceed without" && spack mirror rm local-binary)
107-
set +e
110+
set -e
108111
echo "Packages in spack binary cache:"
109112
spack buildcache list
110113
fi
@@ -113,20 +116,22 @@ jobs:
113116
# This allows us to "spin up" builds that altogether take longer than
114117
# six hours, and/or fail later in the build process.
115118
116-
# base-env
117-
echo "base-env ..."
118-
spack install --fail-fast --source --no-check-signature base-env 2>&1 | tee log.install.gnu-11.4.0-buildcache.base-env
119-
spack buildcache create -u /home/ubuntu/spack-stack/build-cache/ base-env
120-
121-
# jedi-base-env
122-
echo "jedi-base-env ..."
123-
spack install --fail-fast --source --no-check-signature jedi-base-env 2>&1 | tee log.install.gnu-11.4.0-buildcache.jedi-base-env
124-
spack buildcache create -u /home/ubuntu/spack-stack/build-cache/ jedi-base-env
125-
126-
# jedi-ufs-env
127-
echo "jedi-ufs-env ..."
128-
spack install --fail-fast --source --no-check-signature jedi-ufs-env 2>&1 | tee log.install.gnu-11.4.0-buildcache.jedi-ufs-env
129-
spack buildcache create -u /home/ubuntu/spack-stack/build-cache/ jedi-ufs-env
119+
if [[ "${TEMPLATE}" == *"unified-dev"* || "${TEMPLATE}" == *"skylab-dev"* ]]; then
120+
# base-env
121+
echo "base-env ..."
122+
spack install --fail-fast --source --no-check-signature base-env 2>&1 | tee log.install.gnu-11.4.0-buildcache.base-env
123+
spack buildcache create -u /home/ubuntu/spack-stack/build-cache/ base-env
124+
125+
# jedi-base-env
126+
echo "jedi-base-env ..."
127+
spack install --fail-fast --source --no-check-signature jedi-base-env 2>&1 | tee log.install.gnu-11.4.0-buildcache.jedi-base-env
128+
spack buildcache create -u /home/ubuntu/spack-stack/build-cache/ jedi-base-env
129+
130+
# jedi-ufs-env
131+
echo "jedi-ufs-env ..."
132+
spack install --fail-fast --source --no-check-signature jedi-ufs-env 2>&1 | tee log.install.gnu-11.4.0-buildcache.jedi-ufs-env
133+
spack buildcache create -u /home/ubuntu/spack-stack/build-cache/ jedi-ufs-env
134+
fi
130135
131136
# the rest
132137
echo "${TEMPLATE} ..."

.github/workflows/ubuntu-ci-x86_64-intel.yaml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,8 @@ jobs:
5959
# Find external packages
6060
spack external find --scope system \
6161
--exclude bison --exclude openssl \
62-
--exclude curl --exclude python
62+
--exclude curl --exclude python \
63+
--exclude meson
6364
spack external find --scope system grep
6465
spack external find --scope system sed
6566
spack external find --scope system perl
@@ -144,7 +145,7 @@ jobs:
144145
set +e
145146
spack mirror add local-binary file:///home/ubuntu/spack-stack/build-cache/
146147
spack buildcache update-index local-binary || (echo "No valid binary cache found, proceed without" && spack mirror rm local-binary)
147-
set +e
148+
set -e
148149
echo "Packages in spack binary cache:"
149150
spack buildcache list
150151
fi

.github/workflows/ubuntu-ci-x86_64-oneapi-ifx.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ jobs:
6060
spack external find --scope system \
6161
--exclude bison --exclude openssl \
6262
--exclude curl --exclude python \
63-
--exclude gmake
63+
--exclude meson --exclude gmake
6464
spack external find --scope system grep
6565
spack external find --scope system sed
6666
spack external find --scope system perl
@@ -150,7 +150,7 @@ jobs:
150150
set +e
151151
spack mirror add local-binary file:///home/ubuntu/spack-stack/build-cache/
152152
spack buildcache update-index local-binary || (echo "No valid binary cache found, proceed without" && spack mirror rm local-binary)
153-
set +e
153+
set -e
154154
echo "Packages in spack binary cache:"
155155
spack buildcache list
156156
fi

.github/workflows/ubuntu-ci-x86_64-oneapi.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ jobs:
6060
spack external find --scope system \
6161
--exclude bison --exclude openssl \
6262
--exclude curl --exclude python \
63-
--exclude gmake
63+
--exclude meson --exclude gmake
6464
spack external find --scope system grep
6565
spack external find --scope system sed
6666
spack external find --scope system perl
@@ -150,7 +150,7 @@ jobs:
150150
set +e
151151
spack mirror add local-binary file:///home/ubuntu/spack-stack/build-cache/
152152
spack buildcache update-index local-binary || (echo "No valid binary cache found, proceed without" && spack mirror rm local-binary)
153-
set +e
153+
set -e
154154
echo "Packages in spack binary cache:"
155155
spack buildcache list
156156
fi

configs/common/modules_lmod.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -132,8 +132,8 @@ modules:
132132
^esmf@8.6.1+debug snapshot=none: 'esmf-8.6.1-debug'
133133
^esmf@8.7.0~debug snapshot=none: 'esmf-8.7.0'
134134
^esmf@8.7.0+debug snapshot=none: 'esmf-8.7.0-debug'
135-
^esmf@8.8.0b10~debug snapshot=b10: esmf-8.8.0b10
136-
^esmf@8.8.0b10+debug snapshot=b10: esmf-8.8.0b10-debug
135+
^esmf@8.8.0~debug snapshot=none: 'esmf-8.8.0'
136+
^esmf@8.8.0+debug snapshot=none: 'esmf-8.8.0-debug'
137137
openmpi:
138138
environment:
139139
set:

configs/common/modules_tcl.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,8 +134,8 @@ modules:
134134
^esmf@8.6.1+debug snapshot=none: 'esmf-8.6.1-debug'
135135
^esmf@8.7.0~debug snapshot=none: 'esmf-8.7.0'
136136
^esmf@8.7.0+debug snapshot=none: 'esmf-8.7.0-debug'
137-
^esmf@8.8.0b10~debug snapshot=b10: esmf-8.8.0b10
138-
^esmf@8.8.0b10+debug snapshot=b10: esmf-8.8.0b10-debug
137+
^esmf@8.8.0~debug snapshot=none: 'esmf-8.8.0'
138+
^esmf@8.8.0+debug snapshot=none: 'esmf-8.8.0-debug'
139139
openmpi:
140140
environment:
141141
set:

configs/common/packages.yaml

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,9 @@ packages:
3030
- any_of: ['@2.3.0 ~openmp']
3131
when: '%intel@2021:'
3232
message: '2.3.0 is the last version to use C++17, use with Intel Classic'
33+
- any_of: ['@2.3.0 ~openmp']
34+
when: '%gcc@:10'
35+
message: 2.3.0 is the last version to use C++17, use with GCC 10 and earlier
3336
- any_of: ['@2.3.0 ~openmp']
3437
when: '%apple-clang@:14'
3538
message: '2.3.0 is the last version to use C++17, use with Apple Clang 14 and earlier'
@@ -64,7 +67,7 @@ packages:
6467
esmf:
6568
require:
6669
- '~xerces ~pnetcdf +shared +external-parallelio'
67-
- any_of: ['@=8.6.1 snapshot=none', '@=8.8.0b10 snapshot=b10']
70+
- any_of: ['@=8.6.1 snapshot=none', '@=8.8.0 snapshot=none']
6871
- any_of: ['fflags="-fp-model precise" cxxflags="-fp-model precise"']
6972
when: "%intel"
7073
message: "Extra ESMF compile options for Intel"
@@ -76,6 +79,10 @@ packages:
7679
# message: "Extra ESMF compile options for GCC"
7780
prefer:
7881
- '+python'
82+
# To avoid duplicate packages (concretizer bug?)
83+
expat:
84+
require:
85+
- '~libbsd'
7986
fckit:
8087
require: '@0.13.2 +eckit'
8188
fftw:
@@ -145,6 +152,10 @@ packages:
145152
require: '@2.1.0'
146153
libpng:
147154
require: '@1.6.37 +pic'
155+
# libtirpc +gssapi doesn't build with oneapi@2025
156+
# https://github.com/JCSDA/spack-stack/issues/1441
157+
libtirpc:
158+
require: '~gssapi'
148159
# Newest version of magics needed for oneapi compilers
149160
magics:
150161
require: "@4.15.3:"
@@ -211,10 +222,9 @@ packages:
211222
# Avoid full rust dependency: version 43+ requires py-maturin
212223
py-cryptography:
213224
require: '@:42 +rust_bootstrap'
214-
# Introduced in https://github.com/JCSDA/spack-stack/pull/894, pin py-cython
215-
# to avoid duplicate packages being built (cylc dependencies soft-want @3:)
225+
# Pin py-cython to avoid duplicate packages
216226
py-cython:
217-
require: '@0.29.36'
227+
require: '@3'
218228
# As long as we need the "delayed" variant for py-dask,
219229
# we are restricted to version 2021.03.0 (last one that has it)
220230
# and newer than 2021.01.0 because of these issues:
@@ -229,13 +239,15 @@ packages:
229239
require: '~mpi'
230240
# https://github.com/JCSDA/spack-stack/issues/1276
231241
py-matplotlib:
232-
require: '@3.7.4'
242+
require: '@3.7.4'
233243
# Variant ~mpi not working for latest py-netcdf4
234244
# https://github.com/spack/spack/issues/47652
235245
py-netcdf4:
236246
require: '@1.7.1 +mpi'
237-
py-pandas:
238-
require: '+excel'
247+
# To avoid duplicate packages
248+
py-numpy:
249+
require:
250+
- '@1.26'
239251
# To avoid duplicate packages
240252
py-ruamel-yaml:
241253
require: '@0.17.16'

configs/common/packages_intel.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,15 @@ packages:
1212
gettext:
1313
require:
1414
- '@:0.21'
15+
go:
16+
require:
17+
- '%gcc'
18+
go-bootstrap:
19+
require:
20+
- '%gcc'
21+
gh:
22+
require:
23+
- '%gcc'
1524
gsibec:
1625
require:
1726
- '+mkl'
@@ -21,6 +30,9 @@ packages:
2130
boost:
2231
require:
2332
- '%gcc'
33+
qt:
34+
require:
35+
- '%gcc'
2436
ecflow:
2537
require:
2638
- '%gcc'

configs/common/packages_oneapi.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,6 @@ packages:
2121
require: '%gcc'
2222
libbsd:
2323
require: '%gcc'
24+
qt:
25+
require:
26+
- '%gcc'

0 commit comments

Comments
 (0)