You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Go to file
NinjaTrappeur b69ec04aff Merge pull request 'Ajout du frontend et branchement sur l'API axione' (#9) from johan/frontend into master
Reviewed-on: felix.baylac/axione-elig-test#9
1 year ago
address_finder fantoir voie: limite de recherche et recherche '' 1 year ago
axione_api handle axione erreur 1 year ago
config fantoir voie: limite de recherche et recherche '' 1 year ago
dist Add deployment scripts 1 year ago
fixtures handle axione erreur 1 year ago
scripts Adapt backend to new fantoir data schema 1 year ago
static init front with bootstrap 1 year ago
templates factorise spinner & css result.html 1 year ago
tests add tests 1 year ago
.gitignore handle axione erreur 1 year ago
README.md Adapt backend to new fantoir data schema 1 year ago
elig-test.ini.sample update elig-test.ini.sample 1 year ago
elig-test.py Pep-8 reformat 1 year ago
poetry.lock add tests 1 year ago
pyproject.toml add tests 1 year ago
run-dev-server init front with bootstrap 1 year ago
shell.nix init 1 year ago
startGunicornService First aquilenet deployment 1 year ago
webapp.py handle axione erreur 1 year ago

README.md

Axione FTTH - Test d'Éligibilité

Configuration

Ce programme se configure à l'aide du fichier ini se trouvant à /etc/axione-elig-test.ini. Vous pouvez utiliser ./elig-test.ini.sample de ce dépôt git comme point de départ.

Travailler sur l'Application Python

Nous utilisons poetry pour gérer les dépendances python. Vous pouvez l'installer a l'aide du package manager de votre distribution. Si vous utilisez Nix, vous pouvez l'obtenir en entrant en tapant nix-shell.

Une fois poetry installé, vous pouvez obtenir les dépendances Python à l'aide de poetry install. Vous pouvez ensuite obtenir un interprêteur Python pré-configuré pour utiliser ces dépendances à l'aide de poetry shell.

Jouer les Tests

Nous avons quelques tests pour le parseur. Vous pouvez les jouer à l'aide de:

$ poetry run pytest

Debugger l'Application Localement

Travailler depuis la VM whitelistée par Axione est peu pratique. C'est pourquoi nous avons ajouté un mode debug permettant de simuler les réponses d'Axione.

Pour lancer la webapp localement en mode debug, vous pouvez utiliser le script run-dev-server:

./run-dev-server

Tester la recherche d'adresses

Pour tester la recherche d'addresse il faut en local la DB sqlite contenant les infos de Fantoir et de la base de la Poste (Infos sur les communes)

Dans le fichier elig-test.ini bien renseigner le chemin en local vers cette base (champ db_addresses_sqlite_path dans la section [ADDRESSES])

Une fois le serveur lancer comme décrit plus haut, on peut tester l'API via curl :

# Obtenir la liste de toutes les communes
curl -v http://127.0.0.1:5000/addresses/communes

# Chercher une commune par nom
curl -v http://127.0.0.1:5000/addresses/communes?s=plonevez+du+faou
# Chercher une commune par code postal
curl -v http://127.0.0.1:5000/addresses/communes?s=29530

# Chercher les voies d'une commune via son code insee
curl -v http://127.0.0.1:5000/addresses/fantoirvoies/29036

Jeux de données

Insee

Importez ce CSV https://www.data.gouv.fr/fr/datasets/base-officielle-des-codes-postaux/ dans la base de données