diff --git a/CHANGELOG.md b/CHANGELOG.md index 9f23793..a6ff0c3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,14 @@ ## 2026-07-07 (soir) +### Modifié +- **Nomenclature `ip-miroir` : longueurs UNIFORMES.** Le VLAN dérivé passe à + `1000 + index×10 + zone` → **toujours 4 chiffres** (1011..4094), donc le VMID + (`VLAN·octet·seq`) fait **toujours 9 chiffres**. Longueurs uniformes et mnémotechniques + (retirer 1000 redonne `index×10+zone`). Les deux tenants sont **convergés** sur le réseau + fédéré 10/8 : Chezlepro (idx 1) → VLANs 1011-1016 / 10.11.x ; Technolibre (idx 2) → + VLANs 1021-1026 / 10.12.x. Chezlepro quitte le bac-à-sable plat 192.168.15/VLAN 15. + ### Ajouté - **GUI : erreurs de déploiement en LANGAGE CLAIR.** Quand une action (créer/vérifier/déployer) échoue, le GUI n'oblige plus à lire le dump Ansible : un encadré résume les tâches en erreur — diff --git a/scripts/inventory_rules.py b/scripts/inventory_rules.py index dc8c906..a455847 100644 --- a/scripts/inventory_rules.py +++ b/scripts/inventory_rules.py @@ -335,11 +335,11 @@ def deriver_nomenclature(fonction: str, seq: int, nomenclature: dict) -> dict | # index.categorie.service.sequence (largeur variable, VMID des instances existantes). schema = nomenclature.get("vmid_schema", "compact") if schema == "ip-miroir": - # VLAN DERIVE : index x 10 + zone. Unique GLOBALEMENT sur un trunk convergE - # (chaque tenant a son bloc de 10 ; 1-9 reserves a l'infra partagee). Le VLAN - # contient deja le tenant (1er chiffre = index), donc le VMID MENE avec le VLAN - # (pas de chiffre d'index separe) et tient dans les 9 chiffres max de Proxmox. - vlan = index * 10 + int(cat) + # VLAN DERIVE : 1000 + index x 10 + zone. Le socle 1000 force le VLAN a + # TOUJOURS 4 chiffres (1011..4094) -> le VMID (VLAN.octet.seq) fait TOUJOURS + # 9 chiffres : LONGUEURS UNIFORMES et mnemotechniques. Unique GLOBALEMENT sur + # un trunk convergE (retirer 1000 redonne index x 10 + zone = tenant + zone). + vlan = 1000 + index * 10 + int(cat) vmid = f"{vlan}{hote:03d}{int(seq):02d}" else: vlan = c.get("vlan")