Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Use new conda environment for installing ESMValTool in Docker contain…
…ers (#1993)
  • Loading branch information
bouweandela committed Jan 18, 2021
1 parent 89ef0e2 commit a5c3617
Show file tree
Hide file tree
Showing 5 changed files with 18 additions and 7 deletions.
2 changes: 2 additions & 0 deletions .circleci/config.yml
Expand Up @@ -29,6 +29,8 @@ jobs:
- run:
# Update environment if needed and run tests
command: |
. /opt/conda/etc/profile.d/conda.sh
conda activate esmvaltool
pip install .[test]
esmvaltool install Julia
esmvaltool install R
Expand Down
2 changes: 1 addition & 1 deletion README.md
Expand Up @@ -6,7 +6,7 @@
[![CircleCI](https://circleci.com/gh/ESMValGroup/ESMValTool/tree/master.svg?style=svg)](https://circleci.com/gh/ESMValGroup/ESMValTool/tree/master)
[![Codacy Badge](https://app.codacy.com/project/badge/Coverage/79bf6932c2e844eea15d0fb1ed7e415c)](https://www.codacy.com/gh/ESMValGroup/ESMValTool?utm_source=github.com&utm_medium=referral&utm_content=ESMValGroup/ESMValTool&utm_campaign=Badge_Coverage)
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/79bf6932c2e844eea15d0fb1ed7e415c)](https://www.codacy.com/gh/ESMValGroup/ESMValTool?utm_source=github.com&utm_medium=referral&utm_content=ESMValGroup/ESMValTool&utm_campaign=Badge_Grade)
[![Docker Build Status](https://img.shields.io/docker/build/esmvalgroup/esmvaltool.svg)](https://hub.docker.com/r/esmvalgroup/esmvaltool/)
[![Docker Build Status](https://img.shields.io/docker/cloud/build/esmvalgroup/esmvaltool.svg)](https://hub.docker.com/r/esmvalgroup/esmvaltool/)
[![Anaconda-Server Badge](https://anaconda.org/esmvalgroup/esmvaltool/badges/installer/conda.svg)](https://conda.anaconda.org/esmvalgroup)

ESMValTool: A community diagnostic and performance metrics tool for routine evaluation of Earth system models in CMIP
Expand Down
7 changes: 5 additions & 2 deletions docker/Dockerfile
Expand Up @@ -5,12 +5,15 @@ FROM continuumio/miniconda3
RUN apt install julia -y && apt-get clean
COPY ./environment.yml /src/ESMValTool/environment.yml
WORKDIR /src/ESMValTool
RUN conda update -y conda pip && conda env update --name base --file environment.yml && conda clean --all -y
RUN conda update -y conda && conda env create --name esmvaltool --file environment.yml && conda clean --all -y

# Make RUN commands use the new environment:
SHELL ["conda", "run", "--name", "esmvaltool", "/bin/bash", "-c"]

COPY ./esmvaltool/install/R /src/ESMValTool/esmvaltool/install/R
RUN Rscript ./esmvaltool/install/R/setup.R

COPY . /src/ESMValTool
RUN pip install -e . && pip cache purge && esmvaltool install Julia

ENTRYPOINT ["esmvaltool"]
ENTRYPOINT ["conda", "run", "--name", "esmvaltool", "esmvaltool"]
7 changes: 5 additions & 2 deletions docker/Dockerfile.dev
Expand Up @@ -5,7 +5,10 @@ FROM continuumio/miniconda3
RUN apt install julia -y && apt-get clean
COPY ./environment.yml /src/ESMValTool/environment.yml
WORKDIR /src/ESMValTool
RUN conda update -y conda pip && conda env update --name base --file environment.yml && conda clean --all -y
RUN conda update -y conda && conda env create --name esmvaltool --file environment.yml && conda clean --all -y

# Make RUN commands use the new environment:
SHELL ["conda", "run", "--name", "esmvaltool", "/bin/bash", "-c"]

COPY ./esmvaltool/install/R /src/ESMValTool/esmvaltool/install/R
RUN Rscript ./esmvaltool/install/R/setup.R
Expand All @@ -14,4 +17,4 @@ COPY . /src/ESMValTool
RUN pip install -e .[test] && pip cache purge && esmvaltool install Julia && pip uninstall esmvaltool -y
RUN rm -rf /src

ENTRYPOINT ["esmvaltool"]
ENTRYPOINT ["conda", "run", "--name", "esmvaltool", "esmvaltool"]
7 changes: 5 additions & 2 deletions docker/Dockerfile.exp
Expand Up @@ -5,12 +5,15 @@ FROM esmvalgroup/esmvalcore:latest
RUN apt install julia -y && apt-get clean
COPY ./environment.yml /src/ESMValTool/environment.yml
WORKDIR /src/ESMValTool
RUN conda update -y conda pip && conda env update --name base --file environment.yml && conda clean --all -y
RUN conda update -n base -y conda && conda env update --name esmvaltool --file environment.yml && conda clean --all -y

# Make RUN commands use the new environment:
SHELL ["conda", "run", "--name", "esmvaltool", "/bin/bash", "-c"]

COPY ./esmvaltool/install/R /src/ESMValTool/esmvaltool/install/R
RUN Rscript ./esmvaltool/install/R/setup.R

COPY . /src/ESMValTool
RUN pip install -e . && pip install ../ESMValCore && pip cache purge && esmvaltool install Julia

ENTRYPOINT ["esmvaltool"]
ENTRYPOINT ["conda", "run", "--name", "esmvaltool", "esmvaltool"]

0 comments on commit a5c3617

Please sign in to comment.