Updating README

This commit is contained in:
Barnab 2024-03-27 17:47:55 +01:00
parent 1e32571702
commit 47be9dbd0d

View file

@ -2,6 +2,16 @@
## Solutions techniques ## Solutions techniques
### Architecture en micro-services
Chaque *endpoint* de l'application ("docs", "athletes", "medals" et "sports") est un conteneur docker différent. Ces conteneurs utilisent Flask comme framework web.
Devant ces conteneur, un reverse proxy Traefik a été déployé. Il est configuré via les labels des conteneurs dans le docker-compose.
### Explication des micro-services
- **Les services d'API :** chaque conteneur s'occupe d'une partie. Les différents verbes HTTP permettent de lister les différents objets, d'en ajouter de nouveaux, d'en afficher un en particulier, de le modifier et de le supprimer.
- **Le service Swagger :** Il est basé sur la définition OpenAPI en YAML.
## Démarrage rapide ## Démarrage rapide
Un docker-compose est fourni à titre d'exemple. Il permet de rapidement déployer le système dadministration des JO Paris 2024. Un docker-compose est fourni à titre d'exemple. Il permet de rapidement déployer le système dadministration des JO Paris 2024.
Vous pouvez utiliser la commande suivante : Vous pouvez utiliser la commande suivante :
@ -20,6 +30,8 @@ d7b5d3455cb4 git.gnous.eu/anrab35/sae410_sports:latest "python3 sports.py"
05225e266ec6 traefik:v2.11 "/entrypoint.sh --lo…" 22 minutes ago Up 22 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp traefik 05225e266ec6 traefik:v2.11 "/entrypoint.sh --lo…" 22 minutes ago Up 22 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp traefik
``` ```
La documentation complète de l'API est maintenant disponible à l'adresse [http://localhost/docs](http://localhost/docs)
## Utilisation de la suite de tests ## Utilisation de la suite de tests
Pour utiliser les tests unitaires, il faut commencer par cloner le dépôt et installer les dépendances : Pour utiliser les tests unitaires, il faut commencer par cloner le dépôt et installer les dépendances :
@ -27,5 +39,9 @@ Pour utiliser les tests unitaires, il faut commencer par cloner le dépôt et in
git clone https://git.gnous.eu/Anrab35/SAE410_TP2.git git clone https://git.gnous.eu/Anrab35/SAE410_TP2.git
cd SAE410_TP2/pytest cd SAE410_TP2/pytest
python3 -m pip install -r requirements.txt python3 -m pip install -r requirements.txt
python3 -m pytest -v
``` ```
Les tests sont lancés via la commande suivante :
```bash
python3 -m pytest -v
```