diff --git a/CHANGELOG.md b/CHANGELOG.md index 3c7d9d9..bc2d6c3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,63 @@ # CHANGELOG — Set-OPS +## 2026-09-10 (11) — Le trou reste ouvert derriere la porte qu'on croyait fermee + +Troisieme reconstruction complete de Chezlepro : **32 minutes, un seul echec — le mien**, +introduit par le passage au cache et revele par la naissance. + + clonage 3 min 52 + placement {'asgard': 14} + `fatal:` dans le journal 0, pas meme un ignore + servi par le cache +963 Mo + tire de l'Internet +183 Mo -> 81 % servis localement + +### `get_url` IGNORE la configuration d'apt + +Le mandataire pose dans `/etc/apt/apt.conf.d/` ne vaut **que pour apt**. Les six cles de +signature sortaient donc TOUJOURS en direct, malgre tout le travail sur le remap. + +Et ce n'etait pas theorique. Depuis `collab-01` : + + en direct grafana 200 collabora TIMEOUT + via le cache collabora 200 + +La route directe vers Collabora ne passe pas depuis cette zone. Trois cles sur quatre +avaient reussi PAR CHANCE — parce que leurs fournisseurs, eux, etaient joignables. Le meme +geste corrige les deux : plus rien ne sort, et la machine qui n'avait pas de route en +trouve une. + +### Pourquoi seule une NAISSANCE pouvait le montrer + +Mes deploiements de convergence rendaient `failed=0` — parce que les cles etaient **deja +sur disque** et que la tache etait sautee. Le defaut existait depuis le premier commit du +remap, invisible a tout deploiement sur une flotte existante. + +C'est l'argument de la reconstruction depuis zero, applique a moi-meme : *un correctif +qu'on ne verifie que sur une machine deja construite n'est pas verifie.* + +### La derive s'est effacee toute seule + +`apt-cacher-ng` tournait encore sur `forge-01`, que plus aucun plan ne declarait. Je +proposais de l'arreter a la main. La reconstruction l'a fait : + + apt-cacher-ng : absent paquet : 0 sondes : les 4 legitimes + +**Ce qui n'est pas au plan n'existe pas apres une naissance.** La propriete centrale du +depot, verifiee sur un cas qu'on n'avait pas provoque pour elle. + +### Etat mesure + + 14 / 14 machines 0 source en HTTPS direct + 14 / 14 machines 0 erreur `apt-get update` + prouver 65 OK, 0 echec + ansible-lint 0 defaut sur 79 fichiers + +### Les trois reconstructions de la journee + + 1re (matin) 3 echecs 1 h 08 + 2e (confirmation) 0 echec 34 min + 3e (avec le cache) 1 echec 32 min — le mien, corrige + ## 2026-09-10 (10) — Plus rien ne sort chercher ses paquets, et un tenant de moins a nourrir Deux mouvements d'une seule doctrine : **le site fournit tout ce dont un tenant a besoin diff --git a/roles/client_journal/tasks/main.yml b/roles/client_journal/tasks/main.yml index 7a38394..b28b376 100644 --- a/roles/client_journal/tasks/main.yml +++ b/roles/client_journal/tasks/main.yml @@ -29,6 +29,28 @@ owner: root group: root mode: "0644" + # LA CLE PASSE PAR LE CACHE, ELLE AUSSI (mesure du 2026-09-10). + # + # `get_url` ignore la configuration d'apt : le mandataire pose dans + # `/etc/apt/apt.conf.d/` ne vaut que pour apt. Les cles de signature sortaient donc + # TOUJOURS en direct, meme apres que tous les depots soient passes par le cache — un + # trou reste ouvert derriere une porte qu'on croyait fermee. + # + # Et ce n'est pas theorique : depuis `collab-01`, la route directe vers + # `www.collaboraoffice.com` EXPIRE, quand le cache l'atteint sans peine. + # + # en direct grafana 200 collabora TIMEOUT + # via le cache collabora 200 + # + # Le meme geste corrige donc les deux : plus rien ne sort, et la machine qui n'avait + # pas de route en trouve une. + # + # DEGRADE, JAMAIS DEVINE : sans cache d'amorcage declare, la valeur est VIDE et + # `get_url` sort en direct comme avant. On n'invente pas un mandataire. + environment: + http_proxy: >- + {{ ('http://' ~ artefacts_amorcage) if (artefacts_amorcage | default('') | string | length > 0) else '' }} + https_proxy: "" # `apt_repository` AJOUTE, IL NE REMPLACE PAS (mesure du 2026-09-10). # diff --git a/roles/client_pki/tasks/main.yml b/roles/client_pki/tasks/main.yml index 855551e..f5d9a46 100644 --- a/roles/client_pki/tasks/main.yml +++ b/roles/client_pki/tasks/main.yml @@ -79,6 +79,28 @@ retries: 5 delay: 6 until: client_pki_cle_depot_telechargee is succeeded + # LA CLE PASSE PAR LE CACHE, ELLE AUSSI (mesure du 2026-09-10). + # + # `get_url` ignore la configuration d'apt : le mandataire pose dans + # `/etc/apt/apt.conf.d/` ne vaut que pour apt. Les cles de signature sortaient donc + # TOUJOURS en direct, meme apres que tous les depots soient passes par le cache — un + # trou reste ouvert derriere une porte qu'on croyait fermee. + # + # Et ce n'est pas theorique : depuis `collab-01`, la route directe vers + # `www.collaboraoffice.com` EXPIRE, quand le cache l'atteint sans peine. + # + # en direct grafana 200 collabora TIMEOUT + # via le cache collabora 200 + # + # Le meme geste corrige donc les deux : plus rien ne sort, et la machine qui n'avait + # pas de route en trouve une. + # + # DEGRADE, JAMAIS DEVINE : sans cache d'amorcage declare, la valeur est VIDE et + # `get_url` sort en direct comme avant. On n'invente pas un mandataire. + environment: + http_proxy: >- + {{ ('http://' ~ artefacts_amorcage) if (artefacts_amorcage | default('') | string | length > 0) else '' }} + https_proxy: "" - name: Ajouter le depot apt Smallstep ansible.builtin.template: diff --git a/roles/serveur_collabora/tasks/main.yml b/roles/serveur_collabora/tasks/main.yml index 767c3e7..0225e7b 100644 --- a/roles/serveur_collabora/tasks/main.yml +++ b/roles/serveur_collabora/tasks/main.yml @@ -47,6 +47,28 @@ retries: 5 delay: 6 until: serveur_collabora_cle is succeeded + # LA CLE PASSE PAR LE CACHE, ELLE AUSSI (mesure du 2026-09-10). + # + # `get_url` ignore la configuration d'apt : le mandataire pose dans + # `/etc/apt/apt.conf.d/` ne vaut que pour apt. Les cles de signature sortaient donc + # TOUJOURS en direct, meme apres que tous les depots soient passes par le cache — un + # trou reste ouvert derriere une porte qu'on croyait fermee. + # + # Et ce n'est pas theorique : depuis `collab-01`, la route directe vers + # `www.collaboraoffice.com` EXPIRE, quand le cache l'atteint sans peine. + # + # en direct grafana 200 collabora TIMEOUT + # via le cache collabora 200 + # + # Le meme geste corrige donc les deux : plus rien ne sort, et la machine qui n'avait + # pas de route en trouve une. + # + # DEGRADE, JAMAIS DEVINE : sans cache d'amorcage declare, la valeur est VIDE et + # `get_url` sort en direct comme avant. On n'invente pas un mandataire. + environment: + http_proxy: >- + {{ ('http://' ~ artefacts_amorcage) if (artefacts_amorcage | default('') | string | length > 0) else '' }} + https_proxy: "" # DEPOT PLAT : `Suites: ./`, aucun composant. Une source classique ne le trouverait pas. - name: Ajouter le depot apt Collabora diff --git a/roles/serveur_grafana/tasks/main.yml b/roles/serveur_grafana/tasks/main.yml index 8ba51df..8d430fa 100644 --- a/roles/serveur_grafana/tasks/main.yml +++ b/roles/serveur_grafana/tasks/main.yml @@ -61,6 +61,28 @@ owner: root group: root mode: "0644" + # LA CLE PASSE PAR LE CACHE, ELLE AUSSI (mesure du 2026-09-10). + # + # `get_url` ignore la configuration d'apt : le mandataire pose dans + # `/etc/apt/apt.conf.d/` ne vaut que pour apt. Les cles de signature sortaient donc + # TOUJOURS en direct, meme apres que tous les depots soient passes par le cache — un + # trou reste ouvert derriere une porte qu'on croyait fermee. + # + # Et ce n'est pas theorique : depuis `collab-01`, la route directe vers + # `www.collaboraoffice.com` EXPIRE, quand le cache l'atteint sans peine. + # + # en direct grafana 200 collabora TIMEOUT + # via le cache collabora 200 + # + # Le meme geste corrige donc les deux : plus rien ne sort, et la machine qui n'avait + # pas de route en trouve une. + # + # DEGRADE, JAMAIS DEVINE : sans cache d'amorcage declare, la valeur est VIDE et + # `get_url` sort en direct comme avant. On n'invente pas un mandataire. + environment: + http_proxy: >- + {{ ('http://' ~ artefacts_amorcage) if (artefacts_amorcage | default('') | string | length > 0) else '' }} + https_proxy: "" # `apt_repository` AJOUTE, IL NE REMPLACE PAS (mesure du 2026-09-10). # diff --git a/roles/serveur_icinga/tasks/main.yml b/roles/serveur_icinga/tasks/main.yml index 6376ab9..4c6c7e0 100644 --- a/roles/serveur_icinga/tasks/main.yml +++ b/roles/serveur_icinga/tasks/main.yml @@ -19,6 +19,28 @@ url: "{{ serveur_icinga_keyring_url }}" dest: "/tmp/icinga-archive-keyring.deb" mode: "0644" + # LA CLE PASSE PAR LE CACHE, ELLE AUSSI (mesure du 2026-09-10). + # + # `get_url` ignore la configuration d'apt : le mandataire pose dans + # `/etc/apt/apt.conf.d/` ne vaut que pour apt. Les cles de signature sortaient donc + # TOUJOURS en direct, meme apres que tous les depots soient passes par le cache — un + # trou reste ouvert derriere une porte qu'on croyait fermee. + # + # Et ce n'est pas theorique : depuis `collab-01`, la route directe vers + # `www.collaboraoffice.com` EXPIRE, quand le cache l'atteint sans peine. + # + # en direct grafana 200 collabora TIMEOUT + # via le cache collabora 200 + # + # Le meme geste corrige donc les deux : plus rien ne sort, et la machine qui n'avait + # pas de route en trouve une. + # + # DEGRADE, JAMAIS DEVINE : sans cache d'amorcage declare, la valeur est VIDE et + # `get_url` sort en direct comme avant. On n'invente pas un mandataire. + environment: + http_proxy: >- + {{ ('http://' ~ artefacts_amorcage) if (artefacts_amorcage | default('') | string | length > 0) else '' }} + https_proxy: "" - name: Installer le trousseau de cles Icinga ansible.builtin.apt: diff --git a/roles/serveur_loki/tasks/main.yml b/roles/serveur_loki/tasks/main.yml index 2506473..d47ed03 100644 --- a/roles/serveur_loki/tasks/main.yml +++ b/roles/serveur_loki/tasks/main.yml @@ -29,6 +29,28 @@ owner: root group: root mode: "0644" + # LA CLE PASSE PAR LE CACHE, ELLE AUSSI (mesure du 2026-09-10). + # + # `get_url` ignore la configuration d'apt : le mandataire pose dans + # `/etc/apt/apt.conf.d/` ne vaut que pour apt. Les cles de signature sortaient donc + # TOUJOURS en direct, meme apres que tous les depots soient passes par le cache — un + # trou reste ouvert derriere une porte qu'on croyait fermee. + # + # Et ce n'est pas theorique : depuis `collab-01`, la route directe vers + # `www.collaboraoffice.com` EXPIRE, quand le cache l'atteint sans peine. + # + # en direct grafana 200 collabora TIMEOUT + # via le cache collabora 200 + # + # Le meme geste corrige donc les deux : plus rien ne sort, et la machine qui n'avait + # pas de route en trouve une. + # + # DEGRADE, JAMAIS DEVINE : sans cache d'amorcage declare, la valeur est VIDE et + # `get_url` sort en direct comme avant. On n'invente pas un mandataire. + environment: + http_proxy: >- + {{ ('http://' ~ artefacts_amorcage) if (artefacts_amorcage | default('') | string | length > 0) else '' }} + https_proxy: "" # `apt_repository` AJOUTE, IL NE REMPLACE PAS (mesure du 2026-09-10). #