testcontainers / testcontainers/testcontainers-python
Bug: `testcontainers.core.waiting_utils.wait_for_logs` keeps waiting despite the container has exited.
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Python
- Estrellas
- 2.3k
- Forks
- 386
- Merge medio
- 4 h 40 min
- PR fusionados (30 d)
- 1
Descripción
Describe the bug
The testcontainers.core.waiting_utils.wait_for_logs keeps waiting despite the container has exited. This can be confusing if there is a long wait time.
To Reproduce
from testcontainers.core import container, waiting_utils
if __name__ == "__main__":
waiting_utils.wait_for_logs(
container.DockerContainer("flyway/flyway").start(),
r"Successfully applied \d+ migrations to schema",
timeout=large_n, #
)
# >> Raised Exception has occurred: TimeoutError Container did not emit logs satisfying predicate in `large_n` seconds
Runtime environment
Python: 3.11.9
testcontainers 4.7.2
Implementation: CPython
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Empieza en testcontainers.core.waiting_utils, en wait_for_logs, e inspecciona cómo se comprueba el estado de DockerContainer mientras se esperan logs coincidentes. Reproduce el ejemplo con flyway/flyway y determina el comportamiento esperado cuando el contenedor termina antes de que coincida el predicado. Se considera terminado cuando la espera ya no continúa hasta el timeout después de que el contenedor haya terminado.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- docker, python
- Área
- devops, testing-qa
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 45/100