Skip to content
Snippets Groups Projects
Select Git revision
  • e2e2d1969c94e36bd47a92a16beb840608e306a9
  • master default
  • clement
  • fix_requirements
  • new_signup
  • interface_admin
  • hamza
  • dev
  • test
  • melissa
  • context_sheet
  • sorties_new
  • Seon82-patch-2
  • export_bdd
  • refactor/participation-user-link
15 results

visits

HumaViRon

Description du projet

Ce projet est un projet de web app leaderboard pour l'Humaviron. Il possède une partie accessible sans connexion : accueil, accès aux classements, objectifs, page partenaires, ... La partie administration est accessible via l'authentification avec l'auth ViaRézo.

Technologies utilisées

  • Front : Le front utilise la librairie JavaScript React. Le routage est géré par React-routeur. Il communique au back grâces à des appels à l'api et axios.
  • Back : Le back est en nodejs et utilise Express.
  • Base de données : Le back communique avec une base de données mysql.

## Mise en production

  • Base de données : mysql est installé directement sur la machine et disponible sur le port 3306 (port par défaut). Les bases de données de production et de pré-production sont nommées respectivement leaderboard et leaderboard_preprod. Les users des bases de données sont respectivement leaderboard et leaderboard_preprod. Les mots de passes sont définis dans les variables de la CI gitlab.

  • Back : le back est lancé avec pm2 sous le nom back-prod (ou back-preprod) pour le back de preprod. Le back de production écoute sur le port 8000 et le back de pré-production sur le port 5000.

  • Front : le front est compilé et servi de manière statique par nginx qui est configuré de manière à servir les 2 versions du site (leaderboard.viarezo.fr et leaderboard-test.viarezo.fr) et gérer le proxy du /api vers les backs respectifs.

Déploiement avec CI/CD

Une pipeline est configurée sur le projet gitlab, les actions effectuées sont les suivantes:

  • Dans le cas d'une branche quelconque : linter du back et du front.
  • Dans le cas de la branche staging : linter et déploiement du site en version preprod leaderboard-test.viarezo.fr.
  • Dans le cas de la branche master : linter et déploiement du site en version prod leaderboard.viarezo.fr.