Skip to content

Commit

Permalink
Merge pull request #34 from Ouranosinc/add-threddsclient-bokeh-to-jup…
Browse files Browse the repository at this point in the history
…yter-env

docker: add threddsclient and bokeh to jupyter env

Noticeable changes:
```diff
<     - bokeh==1.4.0
>   - bokeh=1.4.0=py36_0

<   - python=3.7.3=h33d41f4_1
>   - python=3.6.7=h357f687_1006

>   - threddsclient=0.4.2=py_0

<     - xarray==0.13.0
>   - xarray=0.14.1=py_1

<     - dask==2.8.0
>     - dask==2.9.2

<     - xclim==0.12.2
>     - xclim==0.13.0 
```

Jenkins run no new error http://jenkins.ouranos.ca/job/PAVICS-e2e-workflow-tests/job/add-threddsclient-bokeh-to-jupyter-env/6/console

Full conda env export diff:
```diff
7c7,8
<   - _libgcc_mutex=0.1=main
---
>   - _libgcc_mutex=0.1=conda_forge
>   - _openmp_mutex=4.5=0_gnu
9c10
<   - alembic=1.3.1=py_0
---
>   - alembic=1.3.2=py_0
13c14
<   - beautifulsoup4=4.8.1=py37_0
---
>   - beautifulsoup4=4.8.2=py36_0
17c18,19
<   - boltons=19.2.0=py_0
---
>   - bokeh=1.4.0=py36_0
>   - boltons=20.0.0=py_0
20,21c22,23
<   - bzip2=1.0.8=h516909a_1
<   - ca-certificates=2019.9.11=hecc5488_0
---
>   - bzip2=1.0.8=h516909a_2
>   - ca-certificates=2019.11.28=hecc5488_0
23,25c25,27
<   - cartopy=0.17.0=py37hc5b2455_1008
<   - cdat_info=8.2=py_5
<   - cdtime=3.1.2=py37hb20e61a_7
---
>   - cartopy=0.17.0=py36h423102d_1009
>   - cdat_info=8.2=py_6
>   - cdtime=3.1.2=py36h1ac8016_8
27c29
<   - certifi=2019.9.11=py37_0
---
>   - certifi=2019.11.28=py36_0
29c31
<   - cffi=1.13.2=py37h8022711_0
---
>   - cffi=1.13.2=py36h8022711_0
31c33,34
<   - chardet=3.0.4=py37_1003
---
>   - cftime=1.0.4.2=py36hc1659b7_0
>   - chardet=3.0.4=py36_1003
35,38c38,41
<   - colorama=0.4.1=py_0
<   - configurable-http-proxy=1.3.0=0
<   - coverage=4.5.4=py37h516909a_0
<   - cryptography=2.8=py37h72c5cf5_0
---
>   - colorama=0.4.3=py_0
>   - configurable-http-proxy=4.2.0=node13_he01fd0c_2
>   - coverage=5.0.3=py36h516909a_0
>   - cryptography=2.8=py36h72c5cf5_1
48c51
<   - entrypoints=0.3=py37_1000
---
>   - entrypoints=0.3=py36_1000
50,51c53,54
<   - esmf=8.0.0=ha4864fb_1
<   - esmpy=8.0.0=py37h5ca1d4c_0
---
>   - esmf=8.0.0=nompi_he6d0a24_4
>   - esmpy=8.0.0=nompi_py36hf0e99fa_1
54c57
<   - fiona=1.8.11=py37h900e953_0
---
>   - fiona=1.8.13=py36h900e953_0
59c62
<   - future=0.18.2=py37_0
---
>   - future=0.18.2=py36_0
61,62c64,65
<   - gdal=3.0.2=py37hbb6b9fb_3
<   - genutil=8.2=py37hc1659b7_1
---
>   - gdal=3.0.2=py36hbb6b9fb_7
>   - genutil=8.2=py36hc1659b7_3
64c67
<   - geos=3.7.2=he1b5a44_2
---
>   - geos=3.8.0=he1b5a44_0
68c71
<   - giflib=5.1.7=h516909a_1
---
>   - giflib=5.2.1=h516909a_1
71,72c74,75
<   - glib=2.58.3=py37h6f030ca_1002
<   - gmp=6.1.2=hf484d3e_1000
---
>   - glib=2.58.3=py36h6f030ca_1002
>   - gmp=6.2.0=he1b5a44_0
79,83c82,86
<   - idna=2.8=py37_1000
<   - importlib_metadata=0.23=py37_0
<   - ipykernel=5.1.3=py37h5ca1d4c_0
<   - ipyleaflet=0.11.4=py37_1
<   - ipython=7.9.0=py37h5ca1d4c_0
---
>   - idna=2.8=py36_1000
>   - importlib_metadata=1.4.0=py36_0
>   - ipykernel=5.1.3=py36h5ca1d4c_0
>   - ipyleaflet=0.12.1=py36_0
>   - ipython=7.11.1=py36h5ca1d4c_0
87c90
<   - jedi=0.15.1=py37_0
---
>   - jedi=0.15.2=py36_0
92c95
<   - jsonschema=3.2.0=py37_0
---
>   - jsonschema=3.2.0=py36_0
94,99c97,102
<   - jupyter_client=5.3.3=py37_1
<   - jupyter_console=6.0.0=py_0
<   - jupyter_core=4.6.1=py37_0
<   - jupyter_server=0.1.1=py37_0
<   - jupyterhub=1.0.0=py37_0
<   - jupyterlab=1.2.3=py_0
---
>   - jupyter_client=5.3.4=py36_1
>   - jupyter_console=5.1.0=py36_0
>   - jupyter_core=4.6.1=py36_0
>   - jupyter_server=0.1.1=py36_0
>   - jupyterhub=1.0.0=py36_0
>   - jupyterlab=1.2.5=py_0
103,104c106,107
<   - kiwisolver=1.1.0=py37hc9558a2_0
<   - krb5=1.16.3=h05b26f9_1001
---
>   - kiwisolver=1.1.0=py36hc9558a2_0
>   - krb5=1.16.4=h2fd8d38_0
106c109
<   - lazy-object-proxy=1.4.3=py37h516909a_0
---
>   - lazy-object-proxy=1.4.3=py36h516909a_0
109,111c112,114
<   - libcdms=3.1.2=h866a0ac_6
<   - libcf=1.0.3=py37h051309a_4
<   - libclang=9.0.0=default_hde54327_4
---
>   - libcdms=3.1.2=ha54dda3_8
>   - libcf=1.0.3=py36hdee1361_5
>   - libclang=9.0.1=default_hde54327_0
114,115c117,118
<   - libdrs=3.1.2=h9abcd1b_8
<   - libdrs_f=3.1.2=he56e101_7
---
>   - libdrs=3.1.2=h9b7ed86_9
>   - libdrs_f=3.1.2=h322d3c2_5
118,120c121,124
<   - libgcc-ng=9.1.0=hdf63c60_0
<   - libgdal=3.0.2=h5534617_3
<   - libgfortran-ng=7.3.0=hdf63c60_2
---
>   - libgcc-ng=9.2.0=h24d8f2e_2
>   - libgdal=3.0.2=hbe56659_7
>   - libgfortran-ng=7.3.0=hdf63c60_4
>   - libgomp=9.2.0=h24d8f2e_2
125,126c129,130
<   - libllvm9=9.0.0=hc9558a2_3
<   - libnetcdf=4.7.1=nompi_h94020b1_101
---
>   - libllvm9=9.0.1=hc9558a2_0
>   - libnetcdf=4.7.3=nompi_h94020b1_100
129c133
<   - libpq=11.5=hd9ab2ff_2
---
>   - libpq=12.1=hd9ab2ff_0
132c136
<   - libspatialite=4.3.0a=h4f6d029_1032
---
>   - libspatialite=4.3.0a=h343d7df_1033
134,135c138,139
<   - libstdcxx-ng=9.1.0=hdf63c60_0
<   - libtiff=4.1.0=hc3755c2_1
---
>   - libstdcxx-ng=9.2.0=hdf63c60_2
>   - libtiff=4.1.0=hc3755c2_3
138,139c142,143
<   - libuv=1.33.1=h516909a_0
<   - libwebp=1.0.2=hf4e8a37_4
---
>   - libuv=1.34.0=h516909a_0
>   - libwebp=1.0.2=h56121f0_5
144c148
<   - lxml=4.4.1=py37h7ec2d77_0
---
>   - lxml=4.4.2=py36h7ec2d77_0
147,149c151,153
<   - markupsafe=1.1.1=py37h516909a_0
<   - matplotlib=3.1.2=py37_1
<   - matplotlib-base=3.1.2=py37h250f245_1
---
>   - markupsafe=1.1.1=py36h516909a_0
>   - matplotlib=3.1.2=py36_1
>   - matplotlib-base=3.1.2=py36h250f245_1
152,155c156,157
<   - mistune=0.8.4=py37h516909a_1000
<   - more-itertools=7.2.0=py_0
<   - mpi=1.0=mpich
<   - mpich=3.3.2=hc856adb_0
---
>   - mistune=0.8.4=py36h516909a_1000
>   - more-itertools=8.1.0=py_0
157,160c159,162
<   - nbconvert=5.6.1=py37_0
<   - nbdime=1.1.0=py37_0
<   - nbformat=4.4.0=py_1
<   - nbval=0.9.3=py_0
---
>   - nbconvert=5.6.1=py36_0
>   - nbdime=1.1.0=py36_0
>   - nbformat=5.0.3=py_0
>   - nbval=0.9.4=py_0
162,163c164,165
<   - netcdf-fortran=4.4.5=h55403cb_1003
<   - netcdf4=1.5.3=py37hf3213d6_0
---
>   - netcdf-fortran=4.5.2=nompi_h09cde99_103
>   - netcdf4=1.5.3=nompi_py36hd35fb8e_102
165,167c167,169
<   - nodejs=13.0.0=h10a4023_1
<   - notebook=6.0.1=py37_0
<   - nspr=4.23=he1b5a44_0
---
>   - nodejs=13.6.0=h10a4023_0
>   - notebook=6.0.2=py36_0
>   - nspr=4.24=he1b5a44_0
169c171
<   - numpy=1.17.3=py37h95a1406_0
---
>   - numpy=1.17.5=py36h95a1406_0
174c176
<   - openjpeg=2.3.1=h21c5421_1
---
>   - openjpeg=2.3.1=h981e76c_3
176,177c178,179
<   - owslib=0.19.0=py_0
<   - packaging=19.2=py_0
---
>   - owslib=0.19.0=py_2
>   - packaging=20.0=py_0
179,180c181,182
<   - pandas=0.25.3=py37hb3f55d8_0
<   - pandoc=2.7.3=0
---
>   - pandas=0.25.3=py36hb3f55d8_0
>   - pandoc=2.9.1.1=0
182c184
<   - parso=0.5.1=py_0
---
>   - parso=0.5.2=py_0
184,187c186,189
<   - pexpect=4.7.0=py37_0
<   - pickleshare=0.7.5=py37_1000
<   - pillow=6.2.1=py37hd70f55b_1
<   - pip=19.3.1=py37_0
---
>   - pexpect=4.7.0=py36_0
>   - pickleshare=0.7.5=py36_1000
>   - pillow=7.0.0=py36hefe7db6_0
>   - pip=19.3.1=py36_0
189c191
<   - pluggy=0.13.0=py37_0
---
>   - pluggy=0.12.0=py_0
192c194
<   - postgresql=11.5=hc63931a_2
---
>   - postgresql=12.1=hc63931a_0
195c197
<   - prompt_toolkit=2.0.10=py_0
---
>   - prompt_toolkit=3.0.2=py_0
198,201c200,203
<   - py=1.8.0=py_0
<   - pycparser=2.19=py37_1
<   - pycurl=7.43.0.3=py37h16ce93b_1
<   - pydap=3.2.2=py37_1000
---
>   - py=1.8.1=py_0
>   - pycparser=2.19=py36_1
>   - pycurl=7.43.0.4=py36h16ce93b_0
>   - pydap=3.2.2=py36_1000
203c205
<   - pygments=2.4.2=py_0
---
>   - pygments=2.5.2=py_0
205,210c207,212
<   - pykdtree=1.3.1=py37hc1659b7_1002
<   - pyopenssl=19.0.0=py37_0
<   - pyparsing=2.4.5=py_0
<   - pyproj=2.4.1=py37h12732c1_1
<   - pyqt=5.12.3=py37hcca6a23_1
<   - pyrsistent=0.15.5=py37h516909a_0
---
>   - pykdtree=1.3.1=py36hc1659b7_1002
>   - pyopenssl=19.1.0=py36_0
>   - pyparsing=2.4.6=py_0
>   - pyproj=2.4.2.post1=py36h12732c1_0
>   - pyqt=5.12.3=py36hcca6a23_1
>   - pyrsistent=0.15.7=py36h516909a_0
212,214c214,216
<   - pysocks=1.7.1=py37_0
<   - pytest=5.3.0=py37_0
<   - python=3.7.3=h33d41f4_1
---
>   - pysocks=1.7.1=py36_0
>   - pytest=5.3.4=py36_0
>   - python=3.6.7=h357f687_1006
218c220,221
<   - pyzmq=18.1.1=py37h1768529_0
---
>   - pyyaml=5.3=py36h516909a_0
>   - pyzmq=18.1.1=py36h1768529_0
221c224
<   - rasterio=1.1.0=py37h900e953_0
---
>   - rasterio=1.1.2=py36h900e953_0
223,225c226,228
<   - requests=2.22.0=py37_1
<   - rtree=0.8.3=py37h7b0cdae_1003
<   - scipy=1.3.2=py37h921218d_0
---
>   - requests=2.22.0=py36_1
>   - rtree=0.9.3=py36h7b0cdae_0
>   - scipy=1.4.1=py36h921218d_0
227,229c230,232
<   - setuptools=41.6.0=py37_1
<   - shapely=1.6.4=py37hec07ddf_1006
<   - six=1.13.0=py37_0
---
>   - setuptools=45.1.0=py36_0
>   - shapely=1.6.4=py36h5d51c17_1007
>   - six=1.14.0=py36_0
232,233c235,236
<   - soupsieve=1.9.4=py37_0
<   - sqlalchemy=1.3.11=py37h516909a_0
---
>   - soupsieve=1.9.4=py36_0
>   - sqlalchemy=1.3.12=py36h516909a_0
236c239
<   - terminado=0.8.3=py37_0
---
>   - terminado=0.8.3=py36_0
237a241
>   - threddsclient=0.4.2=py_0
239,241c243,245
<   - tk=8.6.9=hed695b0_1003
<   - tornado=6.0.3=py37h516909a_0
<   - traitlets=4.3.3=py37_0
---
>   - tk=8.6.10=hed695b0_0
>   - tornado=6.0.3=py36h516909a_0
>   - traitlets=4.3.3=py36_0
245c249
<   - urllib3=1.25.7=py37_0
---
>   - urllib3=1.25.7=py36_0
248,249c252,253
<   - vtk-cdat=8.2.0.8.2=py37_mesalibhead77ed_0
<   - wcwidth=0.1.7=py_1
---
>   - vtk-cdat=8.2.0.8.2=py36_mesalibhead77ed_0
>   - wcwidth=0.1.8=py_0
253,255c257,259
<   - wheel=0.33.6=py37_0
<   - widgetsnbextension=3.5.1=py37_0
<   - wrapt=1.11.2=py37h516909a_0
---
>   - wheel=0.33.6=py36_0
>   - widgetsnbextension=3.5.1=py36_0
>   - wrapt=1.11.2=py36h516909a_0
256a261
>   - xarray=0.14.1=py_1
269a275
>   - yaml=0.2.2=h516909a_1
271c277
<   - zipp=0.6.0=py_0
---
>   - zipp=2.0.0=py_0
275,277c281,282
<     - astunparse==1.6.2
<     - bokeh==1.4.0
<     - bottleneck==1.2.1
---
>     - astunparse==1.6.3
>     - bottleneck==1.3.1
279d283
<     - cftime==1.0.3.4
282,284c286,288
<     - dask==2.8.0
<     - distributed==2.8.0
<     - fsspec==0.6.0
---
>     - dask==2.9.2
>     - distributed==2.9.3
>     - fsspec==0.6.2
287c291
<     - joblib==0.14.0
---
>     - joblib==0.14.1
292c296
<     - partd==1.0.0
---
>     - partd==1.1.0
294,295c298,299
<     - pixiedust==1.1.17
<     - psutil==5.6.5
---
>     - pixiedust==1.1.18
>     - psutil==5.6.7
298d301
<     - pyyaml==5.1.2
301c304
<     - scikit-learn==0.21.3
---
>     - scikit-learn==0.22.1
303c306
<     - tblib==1.5.0
---
>     - tblib==1.6.0
305,306c308
<     - xarray==0.13.0
<     - xclim==0.12.2
---
>     - xclim==0.13.0
```

Full new conda env export:

```diff
name: birdy
channels:
  - cdat
  - conda-forge
  - defaults
dependencies:
  - _libgcc_mutex=0.1=conda_forge
  - _openmp_mutex=4.5=0_gnu
  - affine=2.3.0=py_0
  - alembic=1.3.2=py_0
  - async_generator=1.10=py_0
  - attrs=19.3.0=py_0
  - backcall=0.1.0=py_0
  - beautifulsoup4=4.8.2=py36_0
  - birdy=v0.6.5=py_0
  - bleach=3.1.0=py_0
  - blinker=1.4=py_1
  - bokeh=1.4.0=py36_0
  - boltons=20.0.0=py_0
  - boost-cpp=1.70.0=h8e57a91_2
  - branca=0.3.1=py_0
  - bzip2=1.0.8=h516909a_2
  - ca-certificates=2019.11.28=hecc5488_0
  - cairo=1.16.0=hfb77d84_1002
  - cartopy=0.17.0=py36h423102d_1009
  - cdat_info=8.2=py_6
  - cdtime=3.1.2=py36h1ac8016_8
  - cdutil=8.2=py_2
  - certifi=2019.11.28=py36_0
  - certipy=0.1.3=py_0
  - cffi=1.13.2=py36h8022711_0
  - cfitsio=3.470=hb60a0a2_2
  - cftime=1.0.4.2=py36hc1659b7_0
  - chardet=3.0.4=py36_1003
  - click=7.0=py_0
  - click-plugins=1.1.1=py_0
  - cligj=0.5.0=py_0
  - colorama=0.4.3=py_0
  - configurable-http-proxy=4.2.0=node13_he01fd0c_2
  - coverage=5.0.3=py36h516909a_0
  - cryptography=2.8=py36h72c5cf5_1
  - curl=7.65.3=hf8cf82a_0
  - cycler=0.10.0=py_2
  - dbus=1.13.6=he372182_0
  - decorator=4.4.1=py_0
  - defusedxml=0.6.0=py_0
  - descartes=1.1.0=py_4
  - distarray=2.12.2=py_1
  - docopt=0.6.2=py_1
  - dv3d=8.2=py_0
  - entrypoints=0.3=py36_1000
  - esgf-compute-api=2.2.1=py_2
  - esmf=8.0.0=nompi_he6d0a24_4
  - esmpy=8.0.0=nompi_py36hf0e99fa_1
  - expat=2.2.5=he1b5a44_1004
  - ffmpeg=4.2=h167e202_0
  - fiona=1.8.13=py36h900e953_0
  - fontconfig=2.13.1=h86ecdb6_1001
  - freetype=2.10.0=he983fc9_1
  - freexl=1.0.5=h14c3975_1002
  - funcsigs=1.0.2=py_3
  - future=0.18.2=py36_0
  - g2clib=1.6.0=hf3f1b0b_9
  - gdal=3.0.2=py36hbb6b9fb_7
  - genutil=8.2=py36hc1659b7_3
  - geopandas=0.6.2=py_0
  - geos=3.8.0=he1b5a44_0
  - geotiff=1.5.1=hbd99317_7
  - gettext=0.19.8.1=hc5be6a0_1002
  - ghostscript=9.22=hf484d3e_1001
  - giflib=5.2.1=h516909a_1
  - gitdb2=2.0.6=py_0
  - gitpython=3.0.5=py_0
  - glib=2.58.3=py36h6f030ca_1002
  - gmp=6.2.0=he1b5a44_0
  - gnutls=3.6.5=hd3a4fd2_1002
  - gst-plugins-base=1.14.5=h0935bb2_0
  - gstreamer=1.14.5=h36ae1b5_0
  - hdf4=4.2.13=hf30be14_1003
  - hdf5=1.10.5=nompi_h3c11f04_1104
  - icu=64.2=he1b5a44_1
  - idna=2.8=py36_1000
  - importlib_metadata=1.4.0=py36_0
  - ipykernel=5.1.3=py36h5ca1d4c_0
  - ipyleaflet=0.12.1=py36_0
  - ipython=7.11.1=py36h5ca1d4c_0
  - ipython_genutils=0.2.0=py_1
  - ipywidgets=7.5.1=py_0
  - jasper=1.900.1=h07fcdf6_1006
  - jedi=0.15.2=py36_0
  - jinja2=2.10.3=py_0
  - jpeg=9c=h14c3975_1001
  - json-c=0.13.1=h14c3975_1001
  - json5=0.8.5=py_0
  - jsonschema=3.2.0=py36_0
  - jupyter=1.0.0=py_2
  - jupyter_client=5.3.4=py36_1
  - jupyter_console=5.1.0=py36_0
  - jupyter_core=4.6.1=py36_0
  - jupyter_server=0.1.1=py36_0
  - jupyterhub=1.0.0=py36_0
  - jupyterlab=1.2.5=py_0
  - jupyterlab_pygments=0.1.0=py_0
  - jupyterlab_server=1.0.6=py_0
  - kealib=1.4.10=h58c409b_1005
  - kiwisolver=1.1.0=py36hc9558a2_0
  - krb5=1.16.4=h2fd8d38_0
  - lame=3.100=h14c3975_1001
  - lazy-object-proxy=1.4.3=py36h516909a_0
  - libblas=3.8.0=11_openblas
  - libcblas=3.8.0=11_openblas
  - libcdms=3.1.2=ha54dda3_8
  - libcf=1.0.3=py36hdee1361_5
  - libclang=9.0.1=default_hde54327_0
  - libcurl=7.65.3=hda55be3_0
  - libdap4=3.20.4=hd3bb157_0
  - libdrs=3.1.2=h9b7ed86_9
  - libdrs_f=3.1.2=h322d3c2_5
  - libedit=3.1.20170329=hf8c457e_1001
  - libffi=3.2.1=he1b5a44_1006
  - libgcc-ng=9.2.0=h24d8f2e_2
  - libgdal=3.0.2=hbe56659_7
  - libgfortran-ng=7.3.0=hdf63c60_4
  - libgomp=9.2.0=h24d8f2e_2
  - libiconv=1.15=h516909a_1005
  - libidn2=2.3.0=h516909a_0
  - libkml=1.3.0=h4fcabce_1010
  - liblapack=3.8.0=11_openblas
  - libllvm9=9.0.1=hc9558a2_0
  - libnetcdf=4.7.3=nompi_h94020b1_100
  - libopenblas=0.3.6=h6e990d7_6
  - libpng=1.6.37=hed695b0_0
  - libpq=12.1=hd9ab2ff_0
  - libsodium=1.0.17=h516909a_0
  - libspatialindex=1.9.3=he1b5a44_1
  - libspatialite=4.3.0a=h343d7df_1033
  - libssh2=1.8.2=h22169c7_2
  - libstdcxx-ng=9.2.0=hdf63c60_2
  - libtiff=4.1.0=hc3755c2_3
  - libunistring=0.9.10=h14c3975_0
  - libuuid=2.32.1=h14c3975_1000
  - libuv=1.34.0=h516909a_0
  - libwebp=1.0.2=h56121f0_5
  - libxcb=1.13=h14c3975_1002
  - libxkbcommon=0.9.1=hebb1f50_0
  - libxml2=2.9.10=hee79883_0
  - libxslt=1.1.33=h31b3aaa_0
  - lxml=4.4.2=py36h7ec2d77_0
  - lz4-c=1.8.3=he1b5a44_1001
  - mako=1.1.0=py_0
  - markupsafe=1.1.1=py36h516909a_0
  - matplotlib=3.1.2=py36_1
  - matplotlib-base=3.1.2=py36h250f245_1
  - mechanicalsoup=0.12.0=py_0
  - mesalib=18.3.1=h590aaf7_0
  - mistune=0.8.4=py36h516909a_1000
  - more-itertools=8.1.0=py_0
  - munch=2.5.0=py_0
  - nbconvert=5.6.1=py36_0
  - nbdime=1.1.0=py36_0
  - nbformat=5.0.3=py_0
  - nbval=0.9.4=py_0
  - ncurses=6.1=hf484d3e_1002
  - netcdf-fortran=4.5.2=nompi_h09cde99_103
  - netcdf4=1.5.3=nompi_py36hd35fb8e_102
  - nettle=3.4.1=h1bed415_1002
  - nodejs=13.6.0=h10a4023_0
  - notebook=6.0.2=py36_0
  - nspr=4.24=he1b5a44_0
  - nss=3.47=he751ad9_0
  - numpy=1.17.5=py36h95a1406_0
  - oauthlib=3.0.1=py_0
  - olefile=0.46=py_0
  - openblas=0.3.6=h6e990d7_6
  - openh264=1.8.0=hdbcaa40_1000
  - openjpeg=2.3.1=h981e76c_3
  - openssl=1.1.1d=h516909a_0
  - owslib=0.19.0=py_2
  - packaging=20.0=py_0
  - pamela=1.0.0=py_0
  - pandas=0.25.3=py36hb3f55d8_0
  - pandoc=2.9.1.1=0
  - pandocfilters=1.4.2=py_1
  - parso=0.5.2=py_0
  - pcre=8.43=he1b5a44_0
  - pexpect=4.7.0=py36_0
  - pickleshare=0.7.5=py36_1000
  - pillow=7.0.0=py36hefe7db6_0
  - pip=19.3.1=py36_0
  - pixman=0.38.0=h516909a_1003
  - pluggy=0.12.0=py_0
  - poppler=0.67.0=h14e79db_8
  - poppler-data=0.4.9=1
  - postgresql=12.1=hc63931a_0
  - proj=6.2.1=hc80f0dc_0
  - prometheus_client=0.7.1=py_0
  - prompt_toolkit=3.0.2=py_0
  - pthread-stubs=0.4=h14c3975_1001
  - ptyprocess=0.6.0=py_1001
  - py=1.8.1=py_0
  - pycparser=2.19=py36_1
  - pycurl=7.43.0.4=py36h16ce93b_0
  - pydap=3.2.2=py36_1000
  - pyepsg=0.4.0=py_0
  - pygments=2.5.2=py_0
  - pyjwt=1.7.1=py_0
  - pykdtree=1.3.1=py36hc1659b7_1002
  - pyopenssl=19.1.0=py36_0
  - pyparsing=2.4.6=py_0
  - pyproj=2.4.2.post1=py36h12732c1_0
  - pyqt=5.12.3=py36hcca6a23_1
  - pyrsistent=0.15.7=py36h516909a_0
  - pyshp=2.1.0=py_0
  - pysocks=1.7.1=py36_0
  - pytest=5.3.4=py36_0
  - python=3.6.7=h357f687_1006
  - python-dateutil=2.8.1=py_0
  - python-editor=1.0.4=py_0
  - pytz=2019.3=py_0
  - pyyaml=5.3=py36h516909a_0
  - pyzmq=18.1.1=py36h1768529_0
  - qt=5.12.5=hd8c4c69_1
  - qtconsole=4.6.0=py_0
  - rasterio=1.1.2=py36h900e953_0
  - readline=8.0=hf8c457e_0
  - requests=2.22.0=py36_1
  - rtree=0.9.3=py36h7b0cdae_0
  - scipy=1.4.1=py36h921218d_0
  - send2trash=1.5.0=py_0
  - setuptools=45.1.0=py36_0
  - shapely=1.6.4=py36h5d51c17_1007
  - six=1.14.0=py36_0
  - smmap2=2.0.5=py_0
  - snuggs=1.4.7=py_0
  - soupsieve=1.9.4=py36_0
  - sqlalchemy=1.3.12=py36h516909a_0
  - sqlite=3.30.1=hcee41ef_0
  - tbb=2018.0.5=h2d50403_0
  - terminado=0.8.3=py36_0
  - testpath=0.4.4=py_0
  - threddsclient=0.4.2=py_0
  - tiledb=1.7.0=hcde45ca_2
  - tk=8.6.10=hed695b0_0
  - tornado=6.0.3=py36h516909a_0
  - traitlets=4.3.3=py36_0
  - traittypes=0.2.1=py_1
  - tzcode=2019a=h516909a_1002
  - udunits2=2.2.27.6=h4e0c4b3_1001
  - urllib3=1.25.7=py36_0
  - vcs=8.2=py_2
  - voila=0.1.20=py_0
  - vtk-cdat=8.2.0.8.2=py36_mesalibhead77ed_0
  - wcwidth=0.1.8=py_0
  - webencodings=0.5.1=py_1
  - webob=1.8.5=py_0
  - wget=1.20.1=h22169c7_0
  - wheel=0.33.6=py36_0
  - widgetsnbextension=3.5.1=py36_0
  - wrapt=1.11.2=py36h516909a_0
  - x264=1!152.20180806=h14c3975_0
  - xarray=0.14.1=py_1
  - xerces-c=3.2.2=h8412b87_1004
  - xorg-kbproto=1.0.7=h14c3975_1002
  - xorg-libice=1.0.10=h516909a_0
  - xorg-libsm=1.2.3=h84519dc_1000
  - xorg-libx11=1.6.9=h516909a_0
  - xorg-libxau=1.0.9=h14c3975_0
  - xorg-libxdmcp=1.1.3=h516909a_0
  - xorg-libxext=1.3.4=h516909a_0
  - xorg-libxrender=0.9.10=h516909a_1002
  - xorg-renderproto=0.11.1=h14c3975_1002
  - xorg-xextproto=7.3.0=h14c3975_1002
  - xorg-xproto=7.0.31=h14c3975_1007
  - xz=5.2.4=h14c3975_1001
  - yaml=0.2.2=h516909a_1
  - zeromq=4.3.2=he1b5a44_2
  - zipp=2.0.0=py_0
  - zlib=1.2.11=h516909a_1006
  - zstd=1.4.4=h3b9ef0a_1
  - pip:
    - astunparse==1.6.3
    - bottleneck==1.3.1
    - cdms2==3.1.4
    - cloudpickle==1.2.2
    - colour==0.1.5
    - dask==2.9.2
    - distributed==2.9.3
    - fsspec==0.6.2
    - geojson==2.5.0
    - heapdict==1.0.1
    - joblib==0.14.1
    - locket==0.2.0
    - markdown==3.1.1
    - mpld3==0.3
    - msgpack==0.6.2
    - partd==1.1.0
    - pint==0.9
    - pixiedust==1.1.18
    - psutil==5.6.7
    - pyqt5-sip==4.19.18
    - pyqtwebengine==5.12.1
    - regrid2==3.1.4
    - requests-magpie==0.1.1
    - scikit-learn==0.22.1
    - sortedcontainers==2.1.0
    - tblib==1.6.0
    - toolz==0.10.0
    - xclim==0.13.0
    - zict==1.0.0
prefix: /usr/local/envs/birdy
```
  • Loading branch information
tlvu authored Jan 30, 2020
2 parents dbdc98f + beded46 commit ddc9c67
Show file tree
Hide file tree
Showing 6 changed files with 10 additions and 6 deletions.
2 changes: 1 addition & 1 deletion Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ pipeline {
// https://jenkins.io/doc/book/pipeline/syntax/
agent {
docker {
image "pavics/workflow-tests:191122"
image "pavics/workflow-tests:200120"
label 'linux && docker'
}
}
Expand Down
2 changes: 1 addition & 1 deletion binder/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM pavics/workflow-tests:191122
FROM pavics/workflow-tests:200120

USER root

Expand Down
5 changes: 3 additions & 2 deletions docker/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -27,15 +27,16 @@ RUN python -m ipykernel install --name birdy
# anything accidentally
# this is for debug only, all dependencies should be specified in
# environment.yml above
# RUN conda install -n birdy -c conda-forge -c cdat -c defaults nbdime
# RUN conda install -n birdy -c conda-forge -c cdat -c bokeh -c defaults nbdime

# build jupyterlab extensions installed by conda, see `jupyter labextension list`
RUN jupyter lab build

# for ipywidgets to work with jupyter lab (notebooks works out of the box)
RUN jupyter labextension install @jupyter-widgets/jupyterlab-manager \
&& jupyter serverextension enable voila --sys-prefix \
&& jupyter labextension install @jupyter-widgets/jupyterlab-manager jupyter-leaflet
&& jupyter labextension install @jupyter-widgets/jupyterlab-manager jupyter-leaflet \
&& jupyter labextension install @bokeh/jupyter_bokeh

ADD https://raw.githubusercontent.com/jupyter/docker-stacks/master/base-notebook/start.sh /usr/local/bin/
ADD https://raw.githubusercontent.com/jupyter/docker-stacks/master/base-notebook/start-singleuser.sh /usr/local/bin/
Expand Down
3 changes: 3 additions & 0 deletions docker/environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ name: birdy
channels:
- conda-forge
- cdat
- bokeh
- defaults
dependencies:
- matplotlib
Expand All @@ -18,6 +19,8 @@ dependencies:
- gdal # for osgeo
- geopandas
- ipyleaflet
- threddsclient
- bokeh
# can re-enable xclim from conda once we have write access to
# https://github.com/conda-forge/xclim-feedstock
# - xclim
Expand Down
2 changes: 1 addition & 1 deletion launchcontainer
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/bin/sh -x

if [ -z "$DOCKER_IMAGE" ]; then
DOCKER_IMAGE="pavics/workflow-tests:191122"
DOCKER_IMAGE="pavics/workflow-tests:200120"
fi

if [ -z "$CONTAINER_NAME" ]; then
Expand Down
2 changes: 1 addition & 1 deletion launchnotebook
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ if [ -z "$PORT" ]; then
fi

if [ -z "$DOCKER_IMAGE" ]; then
DOCKER_IMAGE="pavics/workflow-tests:191122"
DOCKER_IMAGE="pavics/workflow-tests:200120"
fi

if [ -z "$CONTAINER_NAME" ]; then
Expand Down

0 comments on commit ddc9c67

Please sign in to comment.