MonAideCyber est un service numérique développé par le laboratoire d'innovation de l'ANSSI, en lien avec l'incubateur BetaGouv de la direction interministérielle du numérique. Il s’adresse aux entités publiques et privées, quelle que soit leur taille, déjà sensibilisées au risque et souhaitant s’engager dans une démarche proportionnée et concrète de renforcement de leur cybersécurité.
Il est nécessaire en prérequis d'avoir installé Git, Docker et Node.js v18.
Commencer par récupérer les sources du projet et aller dans le répertoire créé.
$ git clone [email protected]:betagouv/mon-aide-cyber.git && cd mon-aide-cyber
Rajouter le réseau commun à l'application et au journal (s'il n'existe pas déjà) :
$ docker network create reseau-mon-aide-cyber
Lancer Docker et exécuter docker-compose pour lancer l'application.
docker-compose up
Optionnellement, forcer le build si nécessaire.
docker-compose up --build --force-recreate --no-deps
Les tests sont lancés manuellement et nécessitent une première installation des espaces de travail du projet (npm install
).
npm run test
lance les tests de l'api
et dufront
npm run test:watch
lance les tests à chaque modification de fichier de l'api
et dufront
Afin que les tests effectués sur la couche de persistance s'exécutent bien, il est nécessaire de lancer un conteneur de base de données dédiée aux tests.
Il existe un mon-aide-cyber-api/test/docker-compose.yml
pour créer le conteneur.
cd mon-aide-cyber-api/test/ & docker-compose up
IMPORTANT : un conteneur node va se lancer afin d'exécuter les migrations knex, vérifiez bien que ce dernier a terminé son travail avant d'utiliser la base de donnée de tests.
VITE_INFORMATION_A_AFFICHER
à true pour pouvoir afficher le message pour accéder à la plateforme de production sur la page de connexionVITE_MAC_URL_OFFICIELLE
URL vers l’environnement cible lorsque l’on affiche le message pour accéder à la plateforme de production sur la page de connexionVITE_MATOMO_SITE_ID
identifiant de l’instance matomoVITE_MATOMO_URL
URL du script Matomo suivant l’environnement désiré (dev
,staging
,live
)