diff --git a/Dockerfile b/Dockerfile index 8f1fdd4627901d8facf947af4a91001c39c2e0d6..eeb6243c51b1ef98b7fdee979578f322cb3881f3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -37,11 +37,18 @@ RUN jupyter labextension install jupyterlab_tensorboard && \ ARG RENKU_VERSION=0.16.1 ######################################################## -# Do not edit this section and do not add anything below +# Install renku from pypi or from github if it's a dev version RUN if [ -n "$RENKU_VERSION" ] ; then \ - pipx uninstall renku && \ - pipx install --force renku==${RENKU_VERSION} \ - ; fi - -######################################################## + currentversion=$(pipx list | sed -n "s/^\s*package\srenku\s\([^,]\+\),.*$/\1/p") ; \ + if [ "$RENKU_VERSION" != "$currentversion" ] ; then \ + pipx uninstall renku ; \ + /home/jovyan/.local/pipx/shared/bin/pip install setuptools==57.5.0; \ + gitversion=$(echo "$RENKU_VERSION" | sed -n "s/^[[:digit:]]\+\.[[:digit:]]\+\.[[:digit:]]\+\(\.dev[[:digit:]]\+\)*\(+g\([a-f0-9]\+\)\)*\(+dirty\)*$/\3/p"); \ + if [ -n "$gitversion" ] ; then \ + pipx install --force "git+https://github.com/SwissDataScienceCenter/renku-python.git@$gitversion" ;\ + else \ + pipx install --force renku==${RENKU_VERSION} ;\ + fi \ + fi \ + fi