Use official Miniforge image, remove redundant apt bootstrap step, and fix Python 3.13 environment pin compatibility#66
Conversation
Agent-Logs-Url: https://github.com/precimed/container_template/sessions/a8f9b07a-df41-455d-94de-14694901f414 Co-authored-by: espenhgn <2492641+espenhgn@users.noreply.github.com>
Agent-Logs-Url: https://github.com/precimed/container_template/sessions/a8f9b07a-df41-455d-94de-14694901f414 Co-authored-by: espenhgn <2492641+espenhgn@users.noreply.github.com>
Agent-Logs-Url: https://github.com/precimed/container_template/sessions/a8f9b07a-df41-455d-94de-14694901f414 Co-authored-by: espenhgn <2492641+espenhgn@users.noreply.github.com>
There was a problem hiding this comment.
@copilot remove the step using the apt_get_essential.sh script, and the script itself.
There was a problem hiding this comment.
Done in 729242a: removed the apt_get_essential.sh step from docker/dockerfiles/container_template/Dockerfile and deleted docker/scripts/apt_get_essential.sh.
Agent-Logs-Url: https://github.com/precimed/container_template/sessions/6b8a27f7-09f0-4e12-b862-6b4b58825868 Co-authored-by: espenhgn <2492641+espenhgn@users.noreply.github.com>
| COPY /scripts/install_miniforge3.sh . | ||
| RUN bash install_miniforge3.sh | ||
| COPY /scripts/environment.yml . | ||
| RUN mamba env update --name base --file environment.yml && \ |
There was a problem hiding this comment.
@copilot update version pins in environment.yml file to versions compatible with Python=3.13, fixing failing build:
#6 [4/5] RUN mamba env update --name base --file environment.yml && conda clean --all --yes && rm -rf /tmp/*
#6 11.77
#6 11.77 Pinned packages:
#6 11.77
#6 11.77 - python=3.13
#6 11.77
#6 13.53 error libmamba Could not solve for environment specs
#6 13.53 The following packages are incompatible
#6 13.53 ├─ pandas =2.2.2 * is installable with the potential options
#6 13.53 │ ├─ pandas 2.2.2 would require
#6 13.53 │ │ └─ python >=3.10,<3.11.0a0 *, which can be installed;
#6 13.53 │ ├─ pandas 2.2.2 would require
#6 13.53 │ │ └─ python >=3.11,<3.12.0a0 *, which can be installed;
#6 13.53 │ ├─ pandas 2.2.2 would require
#6 13.53 │ │ └─ python >=3.12,<3.13.0a0 *, which can be installed;
#6 13.53 │ └─ pandas 2.2.2 would require
#6 13.53 │ └─ python >=3.9,<3.10.0a0 *, which can be installed;
#6 13.53 └─ pin on python =3.13 * is not installable because it requires
#6 13.53 └─ python =3.13 *, which conflicts with any installable versions previously reported.
#6 13.55 critical libmamba Could not solve for environment specs
#6 ERROR: process "/bin/sh -c mamba env update --name base --file environment.yml && conda clean --all --yes && rm -rf /tmp/*" did not complete successfully: exit code: 1
------
> [4/5] RUN mamba env update --name base --file environment.yml && conda clean --all --yes && rm -rf /tmp/*:
13.53 │ │ └─ python >=3.10,<3.11.0a0 *, which can be installed;
13.53 │ ├─ pandas 2.2.2 would require
13.53 │ │ └─ python >=3.11,<3.12.0a0 *, which can be installed;
13.53 │ ├─ pandas 2.2.2 would require
13.53 │ │ └─ python >=3.12,<3.13.0a0 *, which can be installed;
13.53 │ └─ pandas 2.2.2 would require
13.53 │ └─ python >=3.9,<3.10.0a0 *, which can be installed;
13.53 └─ pin on python =3.13 * is not installable because it requires
13.53 └─ python =3.13 *, which conflicts with any installable versions previously reported.
13.55 critical libmamba Could not solve for environment specs
------
There was a problem hiding this comment.
Fixed in 6905637: updated /docker/scripts/environment.yml pin from pandas=2.2.2 to pandas=2.2.3, which is compatible with python=3.13 and resolves the CI solver failure you reported.
Agent-Logs-Url: https://github.com/precimed/container_template/sessions/c2b57215-4cee-4cde-8b21-82ab3f8b0d7d Co-authored-by: espenhgn <2492641+espenhgn@users.noreply.github.com>
|
Just as a heads up, I was blocked by some firewall rules while working on your feedback. Expand below for details. Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
Changes proposed in this pull request:
docker/dockerfiles/container_template/Dockerfilewith the official prebuilt base image fromquay.io/condaforge/miniforge3:26.1.1-3.install_miniforge3.shcopy/execute layers from the Dockerfile.apt_get_essential.shcopy/execute layer from the Dockerfile.docker/scripts/apt_get_essential.sh.environment.yml:mamba env update --name base --file environment.ymlconda clean --all --yesdocker/scripts/environment.ymlfor Python 3.13 compatibility:pandasfrom2.2.2to2.2.3to resolve the conda solver failure during container build.tests/test_container_template.pyto assert the Dockerfile uses the expected Miniforge base image and keeps theenvironment.yml-based env update directive.Before submitting
section of the
CONTRIBUTINGdocs.Writing docstrings section of the
CONTRIBUTINGdocs.