Dépôts

Comment les responsabilités de la solution sont réparties entre plusieurs dépôts et pourquoi cette séparation peut s'avérer utile.

Pourquoi le multi-dépôt ?

Séparer les dépôts peut aider à :

  • isoler les domaines
  • permettre des déploiements indépendants
  • réduire la taille et le bruit par dépôt
  • attribuer une propriété (ownership) claire à chaque équipe

Dépôts principaux

globalsone-frontend

Contient la SPA et l’expérience utilisateur.

globalsone-api-gateway

Contient la configuration et le comportement du gateway.

globalsone-bff

Contient l’agrégation, la transformation et les endpoints orientés frontend.

globalsone-ms-{domain}

Contiennent la logique métier de chaque domaine.

globalsone-shared-kernel

Contient les types ou contrats réellement partagés et stables.

Bénéfices

  • Une propriété (ownership) plus claire
  • CI/CD indépendant
  • Un impact moindre des changements locaux
  • Une meilleure séparation organisationnelle

Coûts

  • Une coordination accrue entre les dépôts
  • Le versionnage des paquets partagés
  • Une visibilité distribuée
  • Une discipline de gouvernance plus exigeante

Quand cela a-t-il du sens

Cela a d’autant plus de sens lorsque :

  • il existe plusieurs domaines bien définis
  • plusieurs équipes travaillent en parallèle
  • les déploiements nécessitent une réelle indépendance
  • l’organisation est prête à gouverner les contrats et les standards

Résumé

Le multi-dépôt n’est pas une fin en soi. C’est une stratégie d’organisation qui peut apporter clarté et indépendance, à condition de s’accompagner de bonnes limites et de bonnes règles de collaboration.