--- # Flux réseau du cache d'artefacts DU SITE. Voir docs/flux-conception.md. # # UN SEUL FLUX, et c'est tout son sens : accepter les caches des écosystèmes voisins. # `serveur_artefacts` porte le reste (servir sa propre flotte, remplir depuis Debian). # # `voisins_site` désigne les autres tenants que CE SITE héberge. Ni `flotte` (mon # écosystème), ni `externe` — qui signifie « depuis l'Internet » et aurait publié le cache # au monde entier. # # LA RÈGLE APPARTIENT AU SITE : c'est son runner qui prépare le terrain, pas un tenant qui # ouvrirait une porte chez un autre. flux: - sens: ingress port: 3142 protocole: tcp pair: voisins_site chiffrement: clair raison: >- Servir les caches des écosystèmes voisins. Debian n'est ainsi téléchargé qu'une fois pour tout le site, et le cache ne voit que des requêtes AGRÉGÉES — jamais quelle machine installe quoi. # LA RACINE DOIT POUVOIR REMPLIR. Ce cache n'a pas d'amont interne — c'est LUI l'amont # de tous les autres. Sans flux sortant, la chaine entiere se termine sur un cache vide : # # VM du tenant -> cache du tenant -> cache du SITE -> (rien) # # Il manquait, et ca ne se serait vu qu'au premier `apt update` d'un ecosysteme neuf — # c'est-a-dire au pire moment. - sens: egress port: 80 protocole: tcp pair: externe chiffrement: clair raison: >- Remplir le cache depuis les dépôts Debian amont. En clair parce que les dépôts apt sont signés : l'intégrité vient de la signature, pas du transport. - sens: egress port: 443 protocole: tcp pair: externe chiffrement: tls-requis raison: >- Les dépôts tiers qui n'existent qu'en HTTPS (smallstep, Grafana, Icinga), et le dépôt de binaires (roues PyPI, collections Galaxy, versions GitHub, Nextcloud, Forgejo). Le site les relaie pour que la flotte n'ait pas à sortir elle-même.