From 814e40754bc6a58d6e64811811a3ed0043c49592 Mon Sep 17 00:00:00 2001 From: Fufeck Date: Tue, 27 Feb 2024 16:27:44 +0100 Subject: [PATCH] fix: README --- .env.sample | 7 +-- README.md | 118 +++++++++++++++++++++++++++++++-------------------- package.json | 1 - 3 files changed, 74 insertions(+), 52 deletions(-) diff --git a/.env.sample b/.env.sample index 3036b62d..34cf461c 100644 --- a/.env.sample +++ b/.env.sample @@ -11,12 +11,7 @@ SMTP_BCC= SHOW_EMAILS=YES EDITOR_URL_PATTERN=https://mes-adresses.data.gouv.fr/bal// API_URL=http://localhost:5000 -RUN_MIGRATION=0 API_DEPOT_URL=https://plateforme-bal.adresse.data.gouv.fr/api-depot API_DEPOT_CLIENT_ID= API_DEPOT_CLIENT_SECRET= -BAN_API_URL=https://plateforme.adresse.data.gouv.fr -URL_CONTOURS_COMMUNES=http://etalab-datasets.geo.data.gouv.fr/contours-administratifs/2023/geojson/communes-100m.geojson -DISABLE_TASKS=false -RUN_CRON_IN_API=false -PRINT_MEMORY_USAGE=false \ No newline at end of file +BAN_API_URL=https://plateforme.adresse.data.gouv.fr \ No newline at end of file diff --git a/README.md b/README.md index 65374e53..382b2ff3 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,13 @@ -# API Bases Adresse Locales +# Mes Adresses API -API permettant la gestion de bases d’adresses à l’échelon local +Mes adresses api est un dispositif logiciel composé de deux application -[![codecov](https://badgen.net/codecov/c/github/etalab/api-bal)](https://codecov.io/gh/etalab/api-bal) -[![XO code style](https://badgen.net/badge/code%20style/XO/cyan)](https://github.com/xojs/xo) +- API: permettant la gestion de bases d’adresses à l’échelon local coupler avec [Mes adresses](https://github.com/BaseAdresseNationale/mes-adresses) +- CRON: permettant le deploiement continue des BALs de mes-adresses-api vers [Api de depot](https://github.com/BaseAdresseNationale/api-depot) ## Documentation -➡️ [Accéder à la documentation de l'API](https://github.com/etalab/api-bal/wiki/Documentation-de-l'API) +https://adresse-data-gouv-fr.gitbook.io/bal/mes-adresses ## Pré-requis @@ -19,82 +19,110 @@ API permettant la gestion de bases d’adresses à l’échelon local ### Installation +Installation des dépendances Node.js + ``` yarn ``` -### Démarrer le service +Créer les variables d'environnement + +```bash +cp .env.sample .env +``` + +On pourra ensuite éditer les variables d'environnement dans le fichier `.env` si nécessaire. + +### Développement + +Lancer l'api de développement : ``` -yarn start +$ yarn dev:api ``` -### Lancer les tests +Lancer le cron de développement : ``` -yarn test +$ yarn dev:cron ``` -## Mise a jour +### Production -### Contoures des communes +Créer une version de production : ``` -yarn update-contours +$ yarn build ``` -### Cadastres des communes +Démarrer l'api (port 3000 par défaut) : ``` -yarn update-cadastre +$ yarn start:api ``` +Démarrer le cron : -## Configuration - -Cette application utilise des variables d'environnement pour sa configuration. -Elles peuvent être définies classiquement ou en créant un fichier `.env` sur la base du modèle `.env.sample`. - -| Nom de la variable | Description | -| --- | --- | -| `EDITOR_URL_PATTERN ` | Pattern permettant de construire l'URL vers l'édition d'une BAL | -| `MONGODB_URL` | Paramètre de connexion à MongoDB | -| `MONGODB_DBNAME` | Nom de la base de données à utiliser | -| `PORT` | Port à utiliser pour l'API | -| `SMTP_HOST` | Nom d'hôte du serveur SMTP | -| `SMTP_PORT` | Port du serveur SMTP | -| `SMTP_USER` | Nom d'utilisateur pour se connecter au serveur SMTP | -| `SMTP_PASS` | Mot de passe pour se connecter au serveur SMTP | -| `SMTP_SECURE` | Indique si le serveur SMTP nécessite une connexion sécurisée (`YES`) | -| `SMTP_FROM` | Adresse à utiliser en tant qu'expéditeur des emails | -| `SMTP_BCC` | Adresse(s) en copie cachée à utiliser pour tous les envois de notifications | -| `SHOW_EMAILS` | Indique si les courriels doivent être affichés dans les logs (`YES`) | -| `API_URL` | URL de base de l’API | +``` +$ yarn start:cron +``` -Toutes ces variables ont des valeurs par défaut que vous trouverez dans le fichier `.env.sample`. +### Mise a jour -## Docker +Mettre a jour les liste des communes (code insee) qui ont un cadastre -Il est possible d’executer cette application dans un conteneur Docker afin d’éviter d’avoir à installer toutes ses dépendances sur votre machine. +``` +yarn update-cadastre +``` -Le fichier `docker-compose.yml` crée les services suivants : -- Une base mongodb, non exposée -- L’API Bases Adresses Locales, exposée sur le port `5000` -- Un service Mongo Express, exposé sur le port `8081` (interface web à mongodb) +### Test -Pour démarrer les services, lancer +Rapport des tests (jest) : ``` -docker-compose up +$ yarn test ``` -L’image Docker de l’API est construite avec le fichier `Dockerfile`. Les modifications apportées au code ne seront pas détectées automatiquement, il est nécessaire de reconstruire l’image avec +### Linter + +Rapport du linter (eslint) : ``` -docker-compose build +$ yarn lint ``` +## Configuration + +Cette application utilise des variables d'environnement pour sa configuration. +Elles peuvent être définies classiquement ou en créant un fichier `.env` sur la base du modèle `.env.sample`. + +| Nom de la variable | Description | +| --------------------------| --------------------------------------------------------------------------- | +| `MONGODB_URL` | Paramètre de connexion à MongoDB | +| `MONGODB_DBNAME` | Nom de la base de données à utiliser | +| `PORT` | Port à utiliser pour l'API | +| `SHOW_EMAILS` | Indique si les courriels doivent être affichés dans les logs (`YES`) | +| `API_URL` | URL de base de l’API | +| `API_DEPOT_URL` | URL de l'api-depot | +| `API_DEPOT_CLIENT_ID` | Id du client de l'api-depot | +| `API_DEPOT_CLIENT_SECRET` | Token du client de l'api-depot | +| `EDITOR_URL_PATTERN` | Pattern permettant de construire l'URL vers l'édition d'une BAL | +|---|---| +| `SMTP_HOST` | Nom d'hôte du serveur SMTP | +| `SMTP_PORT` | Port du serveur SMTP | +| `SMTP_USER` | Nom d'utilisateur pour se connecter au serveur SMTP | +| `SMTP_PASS` | Mot de passe pour se connecter au serveur SMTP | +| `SMTP_SECURE` | Indique si le serveur SMTP nécessite une connexion sécurisée (`YES`) | +| `SMTP_FROM` | Adresse à utiliser en tant qu'expéditeur des emails | +| `SMTP_BCC` | Adresse(s) en copie cachée à utiliser pour tous les envois de notifications | + +Toutes ces variables ont des valeurs par défaut que vous trouverez dans le fichier `.env.sample`. + +## Gouvernance + +Ce outil a été conçu à l'initiative d'Etalab. Il est depuis 2020 piloté conjointement par Etalab et l'ANCT. + ## Licence MIT diff --git a/package.json b/package.json index fe75037a..91f8e125 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,6 @@ "test:cron": "jest --config ./apps/cron/test/jest-e2e.json", "test:e2e": "yarn test:api && yarn test:cron", "update-cadastre": "node ./scripts/update-communes-cadastre.js", - "update-contours": "node ./scripts/update-contours-communes.js", "push-staging": "./scripts/push-staging.sh" }, "dependencies": {