Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@ clusters:
uarch: 'a100'
partition: 'normal'
variables:
F7T_URL: 'https://api.cscs.ch/mch/firecrest/v1'
F7T_URL: 'https://api.cscs.ch/mch/firecrest/v2'
-
uarch: 'zen3'
partition: 'postproc'
variables:
F7T_URL: 'https://api.cscs.ch/mch/firecrest/v1'
F7T_URL: 'https://api.cscs.ch/mch/firecrest/v2'
SLURM_EXCLUSIVE: ''
SLURM_NODES: '1'
SLURM_CPU_BIND: 'none'
Expand All @@ -33,11 +33,11 @@ uenvs:
deploy:
balfrin: [zen3, a100]
fdb:
"5.18":
"5.19":
recipes:
zen2: '5.18'
zen3: '5.18'
a100: '5.18'
zen2: '5.19'
zen3: '5.19'
a100: '5.19'
icon:
"25.2":
recipes:
Expand Down
37 changes: 0 additions & 37 deletions recipes/fdb/5.18/meta/private/pyproject.toml

This file was deleted.

File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@ fdb:
mpi: null
packages: []
specs:
- fdb@=5.18.3 backends=lustre
- gribjump@=0.10.2
- eckit@=1.32.3 linalg=none
- metkit@=1.15.2-levelist
- eccodes@=2.39.5 jp2k=none ~fortran +pthreads +aec
- ecbuild@=3.12.0
- fdb@=5.19.2 backends=lustre
- gribjump@=0.10.3
- eckit@=2.0.2 linalg=none compression=lz4 +curl +ssl
- metkit@=1.16.3-levelist
- eccodes@=2.46.0 jp2k=none ~fortran +pthreads +aec +geo
- ecbuild@=3.13.1
- python@=3.11.6
variants:
- ~mpi
Expand Down
66 changes: 66 additions & 0 deletions recipes/fdb/5.19/meta/private/pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
[tool.poetry]
name = "nwp-demo"
# Keep only Major and Minor version in this configuration,
# the patch version is calculated when releasing the library
version = "1.0"
description = "Demo scripts and notebooks for reading and processing forecast data using Polytope."
authors = ["MeteoSwiss"]
package-mode = false

[[tool.poetry.source]]
name = "pypi-mch"
url = "https://service.meteoswiss.ch/nexus/repository/python-all/simple"
priority = "primary"

[[tool.poetry.source]]
name = "pypi"
priority = "supplemental"

[[tool.poetry.source]]
name = "testpypi"
url = "https://test.pypi.org/simple/"
priority = "supplemental"

[tool.poetry.dependencies]
python = "~3.11"
# need to update meteodata-lab to support newer eccodes
#meteodata-lab = {version = "0.6.0", extras = ["polytope", "regrid"]}
# version > 0.1.1 of pyfdb requires eccodes >= 2.39
pyfdb = "0.1.3"
fdb-utils = { git = "https://github.com/MeteoSwiss/fdb-utils.git", tag = "v1.3.5"}
earthkit-plots = "^0.6.0"
earthkit-regrid = { git = "https://github.com/ecmwf/earthkit-regrid.git", branch = "develop" }
ipykernel = "*"
earthkit-geo = "*"
earthkit-meteo = "*"
earthkit-data = "^0.19.0"
pygribjump = { git = "https://github.com/ecmwf/gribjump.git", tag = "0.10.2" }
polytope-client = "^0.7.8"
nbconvert = "*"
nbformat = "*"
pyyaml = "*"
kaleido = "0.2.1"
eccodes = "^2.46.0"

# MCH internal pypi (until officially published by DWD)
eccodes-cosmo-resources-python-internal = {version = "^2.44.0.1", source = "pypi-mch"}

# TestPyPI dev builds
eckit = { version = "2.0.3.dev43", source = "testpypi" }
eckitlib = { version = "2.0.3.dev43", source = "testpypi" }
mirlib = { version = "1.28.1.dev43", source = "testpypi" }
mir-python = {version = "^1.27.11.dev26", allow-prereleases = true}
eccodeslib = {version = "2.47.1.dev43", source = "testpypi"}


[tool.pytest.ini_options]
testpaths = ["test"]
pythonpath = "."

[tool.yapf]
based_on_style = "pep8"
column_limit = "120"

[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
File renamed without changes.
25 changes: 16 additions & 9 deletions recipes/fdb/5.18/post-install → recipes/fdb/5.19/post-install
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,13 @@ set -e
rm -rf /user-environment/data/share
mkdir -p /user-environment/data/share
pushd /user-environment/data/share
wget https://opendata.dwd.de/weather/lib/grib/eccodes_definitions.edzw-2.38.3-1.tar.bz2
bunzip2 eccodes_definitions.edzw-2.38.3-1.tar.bz2
tar xvf eccodes_definitions.edzw-2.38.3-1.tar
rm eccodes_definitions.edzw-2.38.3-1.tar
# eccodes cosmo definitions: since the updated defs are not published by DWD yet,
# they are instead provided by the corresponding internal python package; see var
# 'eccodes_cosmo_resources_path' below
#wget https://opendata.dwd.de/weather/lib/grib/eccodes_definitions.edzw-2.38.3-1.tar.bz2
#bunzip2 eccodes_definitions.edzw-2.38.3-1.tar.bz2
#tar xvf eccodes_definitions.edzw-2.38.3-1.tar
#rm eccodes_definitions.edzw-2.38.3-1.tar
git clone -b v0.0.4 https://github.com/MeteoSwiss/eccodes-cosmo-mars.git
popd

Expand All @@ -33,11 +36,14 @@ source /user-environment/venvs/fdb/bin/activate
/user-environment/bin/poetry install
popd

# determine path of eccodes cosmo resources from python package
eccodes_cosmo_resources_path=$(python -c "import eccodes_cosmo_resources as res; print(res.get_definitions_path())")

# --- Expand metkit tables with ICON parameter, model, and stream definitions --
metkit_dir=$(dirname $(find $install_root -name language.yaml))

python /user-environment/meta/recipe/meta/private/expand_params.py ${metkit_dir}/paramids.yaml /user-environment/data/share/definitions.edzw-2.38.3-1/grib2/shortName.def,/user-environment/data/share/definitions.edzw-2.38.3-1/grib2/localConcepts/edzw/shortName.def
python /user-environment/meta/recipe/meta/private/expand_language.py ${metkit_dir}/language.yaml
python /user-environment/meta/recipe/meta/private/expand_params.py ${metkit_dir}/paramids.yaml ${eccodes_cosmo_resources_path}/grib2/shortName.def,${eccodes_cosmo_resources_path}/grib2/localConcepts/edzw/shortName.def
python /user-environment/meta/recipe/meta/private/expand_language.py ${metkit_dir}/language.yaml

# --- Configure FDB views and runtime environment ------------------------------
fdb_config_dir="/user-environment/meta/recipe/meta/private/fdb_config"
Expand All @@ -55,10 +61,11 @@ do
config_file="${views[$view]}"
jq --arg view "$view" --arg env "/user-environment/env/$view" '.views[$view].env.values.list.FDB_HOME = [{"op":"prepend","value":[$env]}]' store/meta/env.json > tmp.json && mv tmp.json store/meta/env.json
jq --arg view "$view" --arg env "/user-environment/env/$view" '.views[$view].env.values.list.FDB5_HOME = [{"op":"prepend","value":[$env]}]' store/meta/env.json > tmp.json && mv tmp.json store/meta/env.json
jq --arg view "$view" '.views[$view].env.values.list.GRIB_DEFINITION_PATH = [{"op":"prepend","value":["/user-environment/data/share/eccodes-cosmo-mars/definitions", "/user-environment/data/share/definitions.edzw-2.38.3-1","/user-environment/env/fdb/share/eccodes/definitions"]}]' store/meta/env.json > tmp.json && mv tmp.json store/meta/env.json
jq --arg view "$view" --arg eccodes_cosmo_resources_path "$eccodes_cosmo_resources_path" '.views[$view].env.values.list.GRIB_DEFINITION_PATH = [{"op":"prepend","value":["/user-environment/data/share/eccodes-cosmo-mars/definitions",$eccodes_cosmo_resources_path,"/user-environment/env/fdb/share/eccodes/definitions"]}]' store/meta/env.json > tmp.json && mv tmp.json store/meta/env.json
jq --arg view "$view" '.views[$view].env.values.list.PATH[0].value |= ["/user-environment/venvs/fdb/bin/"] + .' store/meta/env.json > tmp.json && mv tmp.json store/meta/env.json
jq --arg view "$view" '.views[$view].env.values.list.FDB_ENABLE_GRIBJUMP = [{"op":"set","value":"1"}]' store/meta/env.json > tmp.json && mv tmp.json store/meta/env.json
jq --arg view "$view" '.views[$view].env.values.list.AUTO_LOAD_PLUGINS = [{"op":"set","value":"1"}]' store/meta/env.json > tmp.json && mv tmp.json store/meta/env.json
jq --arg view "$view" '.views[$view].env.values.list.FDB_ENABLE_GRIBJUMP = [{"op":"set","value":["1"]}]' store/meta/env.json > tmp.json && mv tmp.json store/meta/env.json
jq --arg view "$view" '.views[$view].env.values.list.AUTO_LOAD_PLUGINS = [{"op":"set","value":["1"]}]' store/meta/env.json > tmp.json && mv tmp.json store/meta/env.json
jq --arg view "$view" '.views[$view].env.values.list.ECCODES_ECKIT_GEO = [{"op":"set","value":["1"]}]' store/meta/env.json > tmp.json && mv tmp.json store/meta/env.json
jq --arg view "$view" --arg env "/user-environment/env/$view" '.views[$view].env.values.list.ECKIT_HOME = [{"op":"set","value":[$env]}]' store/meta/env.json > tmp.json && mv tmp.json store/meta/env.json
jq --arg view "$view" --arg config_file "$config_file" '.views[$view].env.values.list.FDB5_CONFIG_FILE = [{"op":"prepend","value":[$config_file]}]' store/meta/env.json > tmp.json && mv tmp.json store/meta/env.json

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,14 @@ class Ecbuild(CMakePackage):

homepage = "https://github.com/ecmwf/ecbuild"
url = "https://github.com/ecmwf/ecbuild/archive/refs/tags/3.6.1.tar.gz"
list_url = "https://github.com/ecmwf/ecbuild/tags"

maintainers("skosukhin", "climbfuji", "victoria-cherkas", "dominichofer")

license("Apache-2.0")

version("3.13.1", sha256="9759815aef22c9154589ea025056db086c575af9dac635614b561ab825f9477e")
version("3.13.0", sha256="7be83510e7209c61273121bcf817780597c3afa41a5129bfccc281f0df1ffda1")
version("3.12.0", sha256="70c7fc9b17f736a3312167c2c36d13b3b5833a255fe2b168b2886ad7c743ffdf")
version("3.11.0", sha256="38a96bdeb38feb65446b6f95b35492232abd188c41b8a28fd128f9f88e00b05d")
version("3.10.0", sha256="7065e1725584b507517cbfc456299ff588e20adf37bc6210ce89fb65a1ad08d0")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ class Eccodes(CMakePackage):

version("develop", branch="develop")

version("2.46.0", sha256="7d959253d5e34aeb16caa14d4889ac06486d19821216743142733a32ee7b4935")
version("2.42.0", sha256="60371b357cb011dee546db2eabace5b7e27f0f87d3ea4a5adde7891371b3c128")
version("2.39.5", git="https://github.com/ecmwf/eccodes.git", tag="2.39.5")
version("2.39.0", sha256="0c4d746700acc49af9c878925f1b26bdd42443ff7c2d7c676deb2babb6847afb")
Expand Down Expand Up @@ -99,6 +100,8 @@ class Eccodes(CMakePackage):
description="List of extra definitions to install",
)

variant("geo", default=False, description="Enable eckit::geo")

depends_on("c", type="build") # generated
depends_on("cxx", type="build") # generated
depends_on("fortran", type="build") # generated
Expand Down Expand Up @@ -126,6 +129,8 @@ class Eccodes(CMakePackage):

conflicts("+openmp", when="+pthreads", msg="Cannot enable both POSIX threads and OMP")

depends_on("eckit", when="+geo")

conflicts(
"+netcdf",
when="~tools",
Expand Down Expand Up @@ -325,6 +330,8 @@ def cmake_args(self):
self.define_from_variant("ENABLE_ECCODES_THREADS", "pthreads"),
self.define_from_variant("ENABLE_ECCODES_OMP_THREADS", "openmp"),
self.define_from_variant("ENABLE_MEMFS", "memfs"),
self.define_from_variant("ENABLE_GEOGRAPHY", "geo"),
self.define_from_variant("ENABLE_ECKIT_GEO", "geo"),
self.define(
"ENABLE_PYTHON{0}".format("2" if self.spec.satisfies("@2.20.0:") else ""), False
),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,14 @@ class Eckit(CMakePackage):
homepage = "https://github.com/ecmwf/eckit"
git = "https://github.com/ecmwf/eckit.git"
url = "https://github.com/ecmwf/eckit/archive/refs/tags/1.16.0.tar.gz"
list_url = "https://github.com/ecmwf/eckit/tags"

maintainers("skosukhin", "climbfuji", "victoria-cherkas", "dominichofer")

license("Apache-2.0")

version("2.0.2", sha256="46b9c1f90e0b565698c5c79c54676401d33738ec82995c025d5d5aabeb13ad2b")
version("1.33.0", sha256="a15f89df0cdaa2d8a74843a1e72a7b3b304958a4fe119b51eec5efadbf113d4f")
version("1.32.3", sha256="33e0fac2656cdd2f2d877dbfe7a4751ee657ab732c00dd90bd48a406298a100f")
version("1.32.2", sha256="f2940e99f1550119497418221e4c5073eb9c3ea776b15a4f56236ef4438a1210")
version("1.31.4", sha256="045ebd9aaecf2773dc8c82f4226022776576cb0d911a76f8d1d069c97e9530c8")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,17 @@ class Fdb(CMakePackage):
homepage = "https://github.com/ecmwf/fdb"
url = "https://github.com/ecmwf/fdb/archive/refs/tags/5.7.8.tar.gz"
git = "https://github.com/ecmwf/fdb.git"
list_url = "https://github.com/ecmwf/fdb/tags"

maintainers("skosukhin", "victoria-cherkas", "dominichofer")

license("Apache-2.0")

version("master", branch="master")

version("5.19.2", sha256="7dfffd7279a53431fe11a82b5c6dcc94f42bc5100a0ff925fe0b54de94d1cfe2")
version("5.19.1", sha256="de5edddd4c17cb4ddfe61bfed60a6b37408d5ed92a2d19a493592e1abfe65a8d")
version("5.19.0", sha256="1275c4b89dcdfcb342a255e22a7d500070d5d32251910c4c2a10d5734c0590eb")
version("5.18.3", sha256="8b6fff6c32923bd8e456f2ec1540b171b4efdbf92e81ae2e5ff2967dec224a86")
version("5.18.0", sha256="d72c7180b9c0e3048a19bc60df6f2827e7849dea8299b7d3f21d5ffb7fc99951")
version("5.17.3", sha256="b477f95a00bd0177e26490e0d0911679aba9183c53ac525625fe1665487068d0")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,13 @@ class Gribjump(CMakePackage):
homepage = "https://github.com/ecmwf/gribjump"
url = "https://github.com/ecmwf/gribjump/archive/refs/tags/0.10.0.tar.gz"
git = "https://github.com/ecmwf/gribjump.git"
list_url = "https://github.com/ecmwf/gribjump/tags"

maintainers("cosunae")

license("Apache-2.0")

version("0.10.3", sha256="8001f8a0e4b03664134ea42612d22d6499e098d2063b12182030986895689f6c")
version("0.10.2", sha256="c1635c1f902daa244592b60c9b1a81375b467409635bd2cbfc6993d32554bd3d")
version("0.10.0", sha256="04a6c7322e585acb7e432e74d68f073ab584a42af9dcb2b4b97f17aebf17d07f")

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,19 @@ class Metkit(CMakePackage):
homepage = "https://github.com/ecmwf/metkit"
git = "https://github.com/ecmwf/metkit.git"
url = "https://github.com/ecmwf/metkit/archive/refs/tags/1.7.0.tar.gz"
list_url = "https://github.com/ecmwf/metkit/tags"

maintainers("skosukhin", "victoria-cherkas", "dominichofer")

license("Apache-2.0")

version("1.17.0", sha256="0fb4cae8cf440f6589b426cbddf8fd37434bc59e178b34df6b7633bfdbb47de3")
version("1.16.3-levelist", sha256="90bd8ca8be1c954f8d6af44b5a416c7357a37bcc9247fa3cdec8ec5cb7c411d0")
version("1.16.3", sha256="b2da2ce50aac68365506c7fb8661889df61a01e53ca7e8f699fe9d3015d44974")
version("1.16.2", sha256="30a65a2cc14942e7ce64ea5539a1b6b85ecce336811014aba70e1f4f9e651f68")
version("1.16.1", sha256="0520cba65afeaede6553c8b62941e67c0f88123602e19d0898538a52e2b0f522")
version("1.16.0", sha256="7b93e4fc1608c1ac205fbf3e094d50ba8a88e7223b65eab7a12362f55550c8e1")
version("1.15.9", sha256="19e656fdafd52375d076303f710bfb71d24298866960e479082d7cb8c730efee")
version(
"1.15.2-levelist",
sha256="25cebe7610949848671131ee3681e3e7e01d376e7b74e1a269872b9fba15ab54",
Expand Down