DITP-pilotage / pilote-2

Code source du projet PILOTE2
6 stars 1 forks source link

PILOTE

Docker (facultatif)

Un fichier docker-compose.yml se trouve à la racine du projet et permet de démarrer simplement le projet si vous le souhaitez

Avertissement : le hot reload ne fonctionnera pas sur l'application NextJS si vous utilisez docker ⚠️


Lancer l'application en mode dev

Prérequis

Initialiser la base de données

Lancer le serveur de développement

npm run dev


Lancer les tests et les linters

Prérequis

Avertissement : si vous n'avez pas de fichier.env.test et que vous avez un fichier .env, Jest va le trouver et lancer les tests sur votre base locale de run ⚠️

Initialiser la base de données

Lancer les tests et les linters

Via Docker

Une base de données de test identique à la base de développement est créée dans le data_management/docker-compose.yml, il s'agit de testing dans le container postgres_tests, exposée sur localhost:5433.

Pour lancer les tests qui vont s'exécuter sur cette base:

Complément d'informations

Lancer l'application en mode production

Prérequis

Générer l'app de prod et lancer un serveur en local

npm run build
npm run start


Commandes utiles

Commande Fonction
npm run dev Lance le site en mode développeur (avec hot reload)
npm run build Prépare les fichiers (optimisations) afin de pouvoir les mettre en prod
npm run start Lance un serveur en local qui utilise les fichiers créés pour la production (cf build)
npm run lint Lance le linter ESLint, Typescript et Stylelint
npm run lint:fix Lance le linter ESLint et Stylelint et tente de corriger les erreurs automatiquement
npm run lint:eslint Lance le linter ESLint
npm run lint:tsc Lance le linter Typescript
npm run lint:stylelint Lance le linter Stylelint
npm run test Lance tous les tests (front et back)
npm run test:ci Utilisé par la CI. Lance tous les tests (front et back)
npm run test:client Lance tous les tests côté front (dossier src/client)
npm run test:client:unit Lance les tests unitaires côté front (dossier src/client)
npm run test:client:integration Lance les tests d'intégration côté front (dossier src/client)
npm run test:client:coverage Lance les tests d'intégration côté front et permet d'obtenir le code coverage
npm run test:server Lance tous les tests côté back (dossier src/server)
npm run test:server:unit Lance les tests unitaires côté back (dossier src/server)
npm run test:server:integration Lance les tests d'intégration côté back (dossier src/server)
npm run test:server:domain:coverage Lance les tests du dossier domain dans le back et permet d'obtenir le code coverage
npm run test:server:infrastructure:coverage Lance les tests du dossier infrastructure dans le back et permet d'obtenir le code coverage
npm run test:database:init Permet de réinitialiser la base de donnée de test sans aucune données
npm run database:init Permet de réinitialiser la base de donnée sans aucune données
npm run database:seed Permet de réinitialiser la base de donnée et de la populer avec un jeu de test
npm run postdeploy Utilisé automatiquement lors du déploiement sur Scalingo afin de jouer les migrations Prisma
npm ci Installation et mise à jour des dépendance node