Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Bug Report: cimg/python:x.y is unusable with venv caching

Abierto
#250 5 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
35/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
docker, python
Área
ci-cd, devops

Línea de trabajo

Empieza reproduciendo el fallo con la config.yml proporcionada y compara cimg/python:3.11.4 con la imagen cimg/python:3.11 en actualización continua. Después, inspecciona la definición de la imagen y cómo los entornos virtuales de Python conservan la ruta de su intérprete. Se considera terminado cuando el flujo de trabajo documentado de caché de venv siga funcionando después de que la imagen en actualización continua reciba una actualización de parche de Python.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

bug

Describe the bug
Caching venv si common practice as documented. However, on cimg/python, python -m venv venv produces a virtual environment with a symlink to a fixed x.y.z python version (/home/circleci/.pyenv/versions/3.11.10/bin/python for instance on cimg/python:3.11.

This causes . venv/activate to fail with Error: [Errno 2] No such file or directory: 'venv/bin/python' as soon as the image is updated with a new minor Python version.

To Reproduce
Using the following config.yml:

jobs:
  build:
    docker:
      - image: cimg/python:3.11.4
    steps:
      - checkout
      - restore_cache:
          keys:
            - << pipeline.parameters.cache-version >>-{{ checksum "Pipfile.lock" }}
            - << pipeline.parameters.cache-version >>-
      - run:
          name: install dependencies
          command: |
            python -m venv /tmp/venv
            . /tmp/venv/bin/activate
            pip install pipenv
            pipenv install --dev
      - save_cache:
          paths:
            - /tmp/venv
          key: << pipeline.parameters.cache-version >>-{{ checksum "Pipfile.lock" }}

Change the used image from cimg/python:3.11.4 to cimg/python:3.11 and the CI should fail with the No such file or directory error.

Expected behavior
Caching the venv should not make the CI to suddenly fail as soon as the Python minor changes when using cimg/python:x.y.

Workarounds
Use cimg/python:x.y.z instead of cimg/python:x.y wich is inconveniant.

Lenguaje dominante
Dockerfile
Estrellas
34
Forks
33
Merge medio
8 h 45 min
PR fusionados (30 d)
7

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de CircleCI-Public/cimg-python

Todos los issues de CircleCI-Public/cimg-python

Issues similares

Más issues de DevOps

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.