Aller au contenu

Qu'est-ce que MicroLab

MicroLab est un orchestrateur de bureau (une app que vous installez et ouvrez) qui lance plusieurs microservices à la fois sur votre machine —avec la communication entre eux déjà résolue— pour tester et exécuter des flux complets avec un effort minimal. Il est agnostique de projet et d’entreprise : il ne contient rien d’aucun projet concret.

Démarrer un micro en local aujourd’hui implique, à la main : démarrer Docker, l’infrastructure (Kafka/Redis/Postgres), créer la base de données, lancer le bon module avec le profil local, et —le plus coûteux— décider quoi faire des autres services qu’il appelle : les lancer aussi ?, pointer vers DEV avec VPN ?, les simuler ?

Faire cela pour plusieurs micros à la fois et les faire dialoguer est fastidieux et sujet aux erreurs : ports répétés, URLs mal pointées, migrations contre des environnements partagés… MicroLab automatise tout cela et le rend reproductible.

  • Autodétecte comment chaque micro démarre (sa technologie, ses ports, son infrastructure et ses dépendances) et génère sa description ; vous n’avez qu’à la relire.
  • Résout les ports à l’exécution pour qu’ils n’entrent pas en collision, même s’ils déclarent tous 8080.
  • Réécrit les URLs entre micros selon la façon dont vous avez résolu chaque dépendance (local, cloud ou mock), sans toucher au code des repos.
  • Lance l’infrastructure commune (Kafka, Redis, PostgreSQL) dans Docker.
  • Vous laisse observer tout pendant l’exécution : l’état de chaque micro, les logs en direct, les appels que reçoivent les mocks et les métriques.

Pour les équipes qui développent et testent en local des systèmes de plusieurs microservices qui s’appellent entre eux, et qui dépendent aujourd’hui d’instructions manuelles de type LOCAL_SETUP.md exécutées pas à pas. MicroLab remplace ce processus manuel par un programme qui orchestre tout.

  • Effort minimal : ce qui peut être autodétecté l’est.
  • Non invasif : MicroLab ne modifie jamais les repos des micros ; il fait tout par injection de configuration au démarrage.
  • Reproductible et transparent : ce qu’il fait est visible (logs, ports, état).