testcontainers / testcontainers/testcontainers-python

Add a wait_for_healthcheck method to DockerCompose

Ouverte
#241 3 commentaires 6 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

👀 requires attention 📦 package: compose 🚀 enhancement 🛟 help wanted
Langage dominant
Python
Étoiles
2.3k
Forks
386
Merge moyen
4 h 40 min
PR mergées (30 j)
1

Description

It's possible to check if the healthcheck passed trought the cli.
docker ps --format json will list all the services running and their corresponding healthchecks.

Proposed method signature: compose.wait_for_healthcheck(sec: int = 10)

High level description how it should work:
Iterate trough services check if healthcheck is healthy.
If not: wait and repeat until timeout.

testcontaners java and node has the option to wait for healthcheck. It would be nice if testcontainers-python would have the same funtionality

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par l’implémentation de DockerCompose et examinez la sortie de Docker CLI de docker ps --format json, ainsi que les options healthcheck existantes dans les projets testcontainers Java et Node. Ajoutez le comportement proposé wait_for_healthcheck pour tous les services, y compris le polling et la gestion du délai d’expiration, puis vérifiez-le avec des tests pour les healthchecks réussis et retardés.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
docker, docker-compose, python
Domaine
devops, testing
Type d'issue
Fonctionnalité
Difficulté
3/5
Temps estimé
1-2 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
42/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.