Le dorsal de dotations.incubateur.anct.gouv.fr
Project description
dotations-locales-back
Installation
Les étapes qui suivent supposent que Python est déjà installé dans votre environnement. La version de Python nécessaire est décrite dans le fichier
pyproject.tomlà la récine du dépôt.
La configuration des dépendances est gérée avec poetry.
Pour gérer différentes versions de Python sur une machine, nous utilisons
pyenvqui permet par exemple d'installer une version avecpyenv install 3.8.9etpoetry env use python3.8.
Pour créer un environnement virtuel et installer les dépendances de l'application, exécuter la commande suivante dans un terminal :
poetry install
Cette commande doit s'achever sans erreur.
On peut voir les dépendances installées avec cette commande :
poetry show
De même avec
poetry run pip listpour les nostalgiques de pip 🙂
Démarrer l'API Web
L'API Web est bâtie sur le framework FastAPI.
Pour la démarrer en local, après avoir suivi les étapes d'installation, exécuter la commande suivante dans un terminal :
poetry run uvicorn dotations_locales_back.web_api.main:app --reload
L'API Web est alors accessible à l'adresse suivante : http://127.0.0.1:8000
Elle peut être testée via l'interface Swagger UI à cette adresse : http://127.0.0.1:8000/docs
Tests
Pour lancer les tests il faut exécuter la commande suivante dans un terminal :
poetry run pytest
Ou depuis un terminal avec l'environnement virtuel activé :
pytest
Déploiement sur Scalingo
Pour déployer cette application sur Scalingo, il est nécessaire de créer 3 fichiers supplémentaires. En effet Scalingo n'est pas compatible avec les fichiers de gestion des dépendances créés par Poetry.
Voici les fichiers à créer :
requirements.txt: Scalingo se base sur ce fichier pour installer les dépendances.
Pour le créer il faut éxécuter la commande suivante :poetry export -f requirements.txt --without-hashes --output requirements.txt
Attention : Si des dépendances sont ajoutées via Poetry, il faudra regénérer le fichier
requirements.txtà chaque fois également. En effet, Poetry gère automatiquement l'ajout de dépendances dans son propre fichierpyproject.tomlmais pas dans le fichierrequirements.txt.
-
runtime.txt: Scalingo se base sur ce fichier pour définir la version de python à utiliser. Il s'agit donc de s'assurer de sa cohérence avec la version de Python indiquée danspyproject.toml -
Procfile: Lors du déploiement Scalingo se base sur ce fichier pour éxécuter la commande qui lance l'application. L'hôte requis est0.0.0.0et il faut également que le serveur écoute le port défini dans une variable d'environnementPORT. Il faut donc ajouter la ligne suivante au fichierProcfile:web: uvicorn web_api.main:app --host=0.0.0.0 --port=${PORT:-5000}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dotations-locales-back-1.3.6.tar.gz.
File metadata
- Download URL: dotations-locales-back-1.3.6.tar.gz
- Upload date:
- Size: 32.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.14 CPython/3.8.13 Darwin/21.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
89e2e18dada783231167c8cde2dfcb6a3640f8c0c7b182ba907f9aa229143424
|
|
| MD5 |
ac3c35a7f334df6de587cec6a6f433ef
|
|
| BLAKE2b-256 |
10e534d0f13c70d6d3a6fd51020f01b09f4c9ebba786660f0009c088c5d4711d
|
File details
Details for the file dotations_locales_back-1.3.6-py3-none-any.whl.
File metadata
- Download URL: dotations_locales_back-1.3.6-py3-none-any.whl
- Upload date:
- Size: 40.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.14 CPython/3.8.13 Darwin/21.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
73cb1b5e43cdc57df49a2f1c6c599527212a6dec5dd68c73a495c87152416173
|
|
| MD5 |
92b43422facae65685b30834a562a0a4
|
|
| BLAKE2b-256 |
26a73309930fb133673f458ae109a556d9ad2f8ebb7e2430ba598714320f04e1
|