Skip to content

Commit 138cc2f

Browse files
authored
Add intake-esgf, update 2025-06 (#150)
# Overview This PR fixes Ouranosinc/pavics-sdi#358 by adding `intake-esgf` to the docker conda recipe. It also updates a handful of core dependencies. > [!NOTE] > The `esgf-dap.ipynb` notebook was not included in the Jenkins buildlog but was independently tested in a secondary build and was passing. ## Changes - Jupyter env changes: - Added `intake-esgf` - Ouranosinc/pavics-sdi#358 - Updated `ravenpy` and other core libraries - CSHS-CWRA/RavenPy#524 - Relevant changes (alphabetical order): ```diff > - globus-sdk=3.61.0=pyhd8ed1ab_0 > - intake-esgf=2025.6.6=pyhd8ed1ab_0 < - ravenpy=0.18.1=pyhd8ed1ab_0 > - ravenpy=0.19.0=pyhd8ed1ab_0 < - xclim=0.56.0=pyhd8ed1ab_0 > - xclim=0.57.0=pyhd8ed1ab_0 < - xscen=0.12.1=pyhd8ed1ab_0 > - xscen=0.12.3=pyhd8ed1ab_0 < - xsdba=0.4.0=pyhd8ed1ab_0 > - xsdba=0.5.0=pyhd8ed1ab_0 ``` ## Testing Checklist - [x] Deployed as "alpha" image in production for bokeh visualization performance regression testing. - [x] Manually tested notebook https://github.com/Ouranosinc/PAVICS-landing/blob/master/content/notebooks/climate_indicators/PAVICStutorial_ClimateDataAnalysis-5Visualization.ipynb for bokeh visualization performance. - [x] Committed the Jenkins build log to this Pull Request: https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/blob/807da3100f5964f18855f84cd6c30f26516fcd77/docker/saved_buildout/jenkins-buildlogs-default.txt ## Related Issue / Discussion - Matching notebook fixes: - pavics-sdi: - Ouranosinc/pavics-sdi#358 - Ouranosinc/pavics-sdi#359 - These need to be merged together - This was performed - PAVICS-landing: Ouranosinc/PAVICS-landing#111 - RavenPy: CSHS-CWRA/RavenPy#524 - Deployment to PAVICS: bird-house/birdhouse-deploy#567 - Previous release: #147 ## Additional Information Full diff of the conda env export: release-py311-250423...807da31 Full new conda env export: https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/blob/807da3100f5964f18855f84cd6c30f26516fcd77/docker/saved_buildout/conda-env-export.yml DockerHub build log: https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/blob/807da3100f5964f18855f84cd6c30f26516fcd77/docker/saved_buildout/docker-buildlogs.txt
2 parents 6102b5c + 807da31 commit 138cc2f

File tree

10 files changed

+3529
-12555
lines changed

10 files changed

+3529
-12555
lines changed

Jenkinsfile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ pipeline {
1010
// https://jenkins.io/doc/book/pipeline/syntax/
1111
agent {
1212
docker {
13-
image "pavics/workflow-tests:py311-250423"
13+
image "pavics/workflow-tests:py311-250423-update250730"
1414
label 'linux && docker'
1515
}
1616
}
@@ -61,7 +61,7 @@ Requires 'weaver' component to be active on the target 'PAVICS_HOST' server
6161
(see https://github.com/bird-house/birdhouse-deploy/tree/master/birdhouse/components#weaver).''')
6262
booleanParam(name: 'TEST_FINCH_REPO', defaultValue: true,
6363
description: 'Check the box to test finch repo.')
64-
string(name: 'FINCH_BRANCH', defaultValue: 'master',
64+
string(name: 'FINCH_BRANCH', defaultValue: 'main',
6565
description: 'FINCH_REPO branch to test against.', trim: true)
6666
string(name: 'FINCH_REPO', defaultValue: 'bird-house/finch',
6767
description: 'https://github.com/bird-house/finch repo or fork to test against.', trim: true)
@@ -79,7 +79,7 @@ Requires 'weaver' component to be active on the target 'PAVICS_HOST' server
7979
description: 'https://github.com/Ouranosinc/raven repo or fork to test against.', trim: true)
8080
booleanParam(name: 'TEST_RAVENPY_REPO', defaultValue: true,
8181
description: 'Check the box to test RavenPy repo.')
82-
string(name: 'RAVENPY_BRANCH', defaultValue: 'master',
82+
string(name: 'RAVENPY_BRANCH', defaultValue: 'main',
8383
description: 'RAVENPY_REPO branch to test against.', trim: true)
8484
string(name: 'RAVENPY_REPO', defaultValue: 'CSHS-CWRA/RavenPy',
8585
description: 'https://github.com/CSHS-CWRA/RavenPy repo or fork to test against.', trim: true)

binder/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM pavics/workflow-tests:py311-250423
1+
FROM pavics/workflow-tests:py311-250423-update250730
22

33
USER root
44

default_build_params

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ else
2929
fi
3030

3131
if [ -z "$FINCH_BRANCH" ]; then
32-
FINCH_BRANCH=master
32+
FINCH_BRANCH=main
3333
echo "FINCH_BRANCH not set, default to '$FINCH_BRANCH'"
3434
else
3535
echo "FINCH_BRANCH has been set to '$FINCH_BRANCH'"
@@ -92,7 +92,7 @@ else
9292
fi
9393

9494
if [ -z "$RAVENPY_BRANCH" ]; then
95-
RAVENPY_BRANCH=master
95+
RAVENPY_BRANCH=main
9696
echo "RAVENPY_BRANCH not set, default to '$RAVENPY_BRANCH'"
9797
else
9898
echo "RAVENPY_BRANCH has been set to '$RAVENPY_BRANCH'"

docker/Dockerfile.testing

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# For testing quickly without having to do a full rebuild.
22

3-
FROM pavics/workflow-tests:py311-250415
3+
FROM pavics/workflow-tests:py311-250423
44

55
# ENV ESMFMKFILE="/opt/conda/envs/birdy/lib/esmf.mk"
66
# ENV PROJ_DATA="/opt/conda/envs/birdy/share/proj"
@@ -9,11 +9,24 @@ USER root
99

1010
# Use 'update' for existing and 'install' for new package.
1111
# Keep same channel ordering to not revert anything.
12+
# Be sure to specify the environment name with '-n environment'.
13+
RUN umask 0000 && \
14+
conda config --prepend channels nodefaults || true && \
15+
conda config --remove channels defaults || true && \
16+
mamba install --force-reinstall -c conda-forge -c cdat -c bokeh -c fortiers -n birdy intake-esgf==2025.6.6 numpy==2.2.6 && \
17+
mamba update -c conda-forge -c cdat -c bokeh -c fortiers -n birdy numpy==2.2.6 ravenpy==0.19.0 xclim==0.57.0 xscen==0.12.3 xsdba==0.5.0 && \
18+
mamba clean --all --yes
19+
20+
RUN umask 0000 && \
21+
curl -sSL https://raw.githubusercontent.com/CSHS-CWRA/RavenPy/refs/heads/fix-notebooks/src/ravenpy/testing/registry.txt \
22+
-o /opt/conda/envs/birdy/lib/python3.11/site-packages/ravenpy/testing/registry.txt && \
23+
chmod 777 /opt/conda/envs/birdy/lib/python3.11/site-packages/ravenpy/testing/registry.txt
24+
1225
# RUN umask 0000 && \
1326
# conda config --prepend channels nodefaults || true && \
1427
# conda config --remove channels defaults || true && \
1528
# pip uninstall -y hsclient && \
16-
# mamba install --force-reinstall -c conda-forge -c cdat -c bokeh -c fortiers ravenpy==0.18.1 sparse==0.15.5 && \
29+
# mamba install --force-reinstall -c conda-forge -c cdat -c bokeh -c fortiers -n birdy ravenpy==0.18.1 sparse==0.15.5 && \
1730
# mamba clean --all --yes
1831

1932
# RUN umask 0000 && \

docker/environment.yml

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,19 +21,19 @@ dependencies:
2121
## CORE LIBRARIES
2222

2323
# clisops: Data reduction operations on xarray climate data
24-
- clisops >= 0.16.1
24+
- clisops >= 0.16.2
2525
# figanos: Outils pour produire des graphiques informatifs sur les impacts des changements climatiques.
2626
- figanos >= 0.5.0
2727
# RavenPy: A Python wrapper for configuring and running the hydrologic modelling framework Raven.
28-
- ravenpy >= 0.18.1
28+
- ravenpy >= 0.19.0
2929
# xclim: Climate indices computation package based on Xarray.
30-
- xclim >= 0.56.0
30+
- xclim >= 0.57.0
3131
# Hydrological analysis library built with xarray.
3232
# - xhydro # 2025-04: Currently deactivated due to older dependency pins
3333
# xscen: A climate change scenario-building analysis framework, built with xclim/xarray.
34-
- xscen >= 0.12.1
34+
- xscen >= 0.12.3
3535
# xsdba: Statistical correction and bias adjustment tools for xarray.
36-
- xsdba >= 0.4.0
36+
- xsdba >= 0.5.0
3737

3838
## COMMON LIBRARIES
3939
# Only add pins here as needed
@@ -57,7 +57,7 @@ dependencies:
5757
# netcdf4: Python interface to the netCDF C library
5858
# - netcdf4 # managed by core libraries
5959
# numpy: fundamental package for scientific computing with Python
60-
- numpy >= 1.24
60+
- numpy >= 1.25
6161
# pandas: data structures and data analysis tools for Python
6262
# - pandas # managed by core libraries
6363
# pydantic: Data validation and settings management using Python type annotations
@@ -153,6 +153,8 @@ dependencies:
153153
# https://intake.readthedocs.io/en/latest/
154154
- intake
155155
# https://intake.readthedocs.io/en/latest/plugin-directory.html
156+
# intake-esgf: Plugin for building and loading intake catalogues for ESGF (Earth System Grid Federation) data sets.
157+
- intake-esgf >= 2025.6.6
156158
# intake-esm: Plugin for building and loading intake catalogues for earth system data sets
157159
# holdings, such as CMIP (Coupled Model Intercomparison Project) and CESM Large Ensemble datasets.
158160
- intake-esm >= 2025.2.3

docker/saved_buildout/conda-env-export.yml

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,7 @@ dependencies:
186186
- giflib=5.2.2=hd590300_0
187187
- gitdb=4.0.12=pyhd8ed1ab_0
188188
- gitpython=3.1.44=pyhff2d567_0
189+
- globus-sdk=3.61.0=pyhd8ed1ab_0
189190
- glog=0.7.1=hbabe93e_0
190191
- google-api-core=2.24.2=pyhd8ed1ab_0
191192
- google-auth=2.39.0=pyhd8ed1ab_0
@@ -221,6 +222,7 @@ dependencies:
221222
- importlib_resources=6.5.2=pyhd8ed1ab_0
222223
- iniconfig=2.0.0=pyhd8ed1ab_1
223224
- intake=2.0.8=pyhd8ed1ab_0
225+
- intake-esgf=2025.6.6=pyhd8ed1ab_0
224226
- intake-esm=2025.2.3=pyhd8ed1ab_0
225227
- intake-geopandas=0.4.0=pyhd8ed1ab_1
226228
- intake-thredds=2025.2.18=pyhd8ed1ab_0
@@ -544,7 +546,7 @@ dependencies:
544546
- rasterio=1.4.3=py311he01b476_1
545547
- rav1e=0.6.6=he8a937b_2
546548
- raven-hydro=0.4.0=py311h81cb690_0
547-
- ravenpy=0.18.1=pyhd8ed1ab_0
549+
- ravenpy=0.19.0=pyhd8ed1ab_0
548550
- rdma-core=57.0=h5888daf_0
549551
- re2=2024.07.02=h9925aae_3
550552
- readline=8.2=h8c095d6_2
@@ -662,7 +664,7 @@ dependencies:
662664
- xcb-util-keysyms=0.4.1=hb711507_0
663665
- xcb-util-renderutil=0.3.10=hb711507_0
664666
- xcb-util-wm=0.4.2=hb711507_0
665-
- xclim=0.56.0=pyhd8ed1ab_0
667+
- xclim=0.57.0=pyhd8ed1ab_0
666668
- xerces-c=3.2.5=h988505b_2
667669
- xesmf=0.8.9=pyhd8ed1ab_0
668670
- xeus=5.2.1=hf4f7e68_0
@@ -692,9 +694,9 @@ dependencies:
692694
- xorg-libxtst=1.2.5=hb9d3cd8_3
693695
- xorg-libxxf86vm=1.1.6=hb9d3cd8_0
694696
- xrft=1.0.1=pyhd8ed1ab_1
695-
- xscen=0.12.1=pyhd8ed1ab_0
697+
- xscen=0.12.3=pyhd8ed1ab_0
696698
- xsdata=25.4=pyhd8ed1ab_0
697-
- xsdba=0.4.0=pyhd8ed1ab_0
699+
- xsdba=0.5.0=pyhd8ed1ab_0
698700
- xskillscore=0.0.26=pyhd8ed1ab_1
699701
- xxhash=0.8.3=hb9d3cd8_0
700702
- xyzservices=2025.1.0=pyhd8ed1ab_0

0 commit comments

Comments
 (0)