/catalogue

Catalogue en apprentissage

Primary LanguageJavaScript

Catalogue

Documentation

https://mission-apprentissage.gitbook.io/catalogue/

Prise en main

Stack

  • React

  • Lambda

  • Node

  • Mongo

  • Es

Développement

Getting started

  • Donner mon IP pour whitelisting à Antoine

  • Demander les variables d'environnement .env à l'équipe et l'insérer dans le projet

  • Avoir robomongo https://robomongo.org/

  • Configurer la variable d'environnement STAGE à dev ou prod ** peut être set à la volé STAGE="dev" yarn ...

  • configurer aws-cli avec les accès disponible dans le .env

aws configure --profile mna-devops
  • Utiliser le profile correspondant pour le reste des commandes exécutées
export AWS_PROFILE=mna-devops
yarn global add dotenv-cli
  • Installer serverless
yarn global add serverless

tl;dr mount local env

yarn
npm run docker:start
STAGE=dev dotenv npm run mongodb:dump
STAGE=dev dotenv npm run es:dump

n.b: en cas de première install, il faudra lancer la migration migrationESMapping

Accéder en local

Docker

Il est possible de démarrer en local des containers Docker (Elastichsearch, MongoDB,...) en lançant la commande :

npm run docker:start

Pour stopper et détruire la stack :

npm run docker:stop

npm run docker:destroy

Pour information, ces tâches npm utilisent docker-compose (cf. docker-compose.yml).

Elasticsearch

Une fois les containers démarrés, il est possible de charger les données dans Elasticsearch en lançant la commande :

ES_URL="<url elasticsearch>" npm run es:dump

Cette tâche npm utilise un script bash contenu dans tools/elasticsearch.

La variable ES_URL doit contenir l'url d'un Elasticsearch qui contient les indexes etablissements, formations et domainesmetiers (ex: staging)

Il est également possible de réaliser un backup d'une instance Elasticsearch :

ES_URL="<url elasticsearch>" npm run es:backup

Cette tâche va créer un tar.gz dans le répertoire .data/elasticsearch/backups

MongoDB

Une fois les containers démarrés, il est possible de charger les données dans MongoDB en lançant la commande :

MONGODB_URL="<url mongodb>" npm run mongodb:dump

Cette tâche npm utilise un script bash contenu dans tools/mongodb.

La variable MONGODB_URL doit contenir l'url d'un MongoDB (ex: staging)

Il est également possible de réaliser un backup d'une base :

MONGODB_URL="<url mongodb>" npm run mongodb:backup

Cette tâche va créer un répertoire dans le répertoire .data/mongodb/backups

Accéder en local