--- # LES PAQUETS QUE DEBIAN NE FOURNIT PAS, SERVIS DEPUIS LE CACHE DU CONTRÔLEUR. # # Trois dépôts tiers sont configurés sur la flotte — Smallstep, Icinga, Grafana — tous en # HTTPS. Or `client_artefacts` pose `Acquire::https::Proxy "DIRECT"`, sans quoi le cache # du site refuse les tunnels HTTPS et aucun dépôt tiers n'est joignable. La conséquence # n'avait pas été vue : **ces trois dépôts contournent le cache par conception**, et # chaque VM neuve allait les chercher sur Internet à sa naissance. # # `step-cli` (Smallstep) et `alloy` (Grafana) sont posés par des intégrations # UNIVERSELLES : sans Internet, une machine neuve n'obtenait ni son client d'autorité ni # ses métriques. C'était le dernier obstacle à une reconstruction hors ligne. # # `make cacher-paquets` les tire UNE FOIS, versions épinglées et empreintes vérifiées. # Ce rôle les dépose depuis ce cache. Les DÉPENDANCES restent l'affaire d'apt : ce sont # des paquets Debian, qui passent déjà par le cache du site en HTTP. paquets_tiers_noms: [] # Le cache vit chez le CONTRÔLEUR, comme celui de Forgejo, Keycloak et Nextcloud : on # télécharge une fois depuis un poste qui a Internet, on déploie ensuite sans en avoir. paquets_tiers_cache: "{{ lookup('env', 'HOME') }}/.cache/setops/paquets" paquets_tiers_dest: "/var/cache/setops/paquets" # LES ÉPINGLES S'APPLIQUENT AUSSI SANS CACHE (2026-10-03). Elles ne valaient que pour ce # qui sortait du cache du contrôleur. Un runner — qui n'a pas ce cache — installait la # dernière version publiée, et le `dist-upgrade` du socle (`common_packages`) montait tout # au-delà de l'épingle, cache ou pas. Mesuré le jour même : sept paquets sur vingt et un # plus récents que leur épingle chez les locataires, et un au site. # # Le fichier qui fait foi est celui du dépôt — le même que lit `make cacher-paquets`. paquets_tiers_fichier_epingles: "{{ role_path }}/../../paquets-tiers.yml" # 990 : apt PRÉFÈRE la version épinglée à toute version plus récente (500 par défaut), y # monte un paquet plus ancien, mais ne RÉTROGRADE jamais un paquet déjà plus récent — ce # que ferait 1000 et plus. Éprouvé sur `site-dns-01` et `web-dorsal-01` avant d'écrire. paquets_tiers_priorite: 990 # `true` : épingler TOUS les paquets de paquets-tiers.yml, pas seulement `paquets_tiers_noms`. # C'est l'appel du socle, avant son `dist-upgrade` (voir common_packages). paquets_tiers_toutes_epingles: false