Set-OPS-Public/roles/paquets_tiers/defaults/main.yml
Daniel Allaire 715f9de84d paquets tiers : les épingles tiennent, cache ou pas
- épingles posées en préférences apt (990) par chaque rôle et par le socle
  avant son dist-upgrade ; garde : paquet plus récent ou épingle inopérante
- quatre épingles relevées (step-cli, icingadb-redis, icinga-php-*)
- paquets_tiers : --force-confold aux mises à jour ; une mise à jour compte
  comme un changement
- CHANGELOG 66

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 21:52:25 -04:00

38 lines
2.4 KiB
YAML

---
# 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