Standardiser le choix du template/OS lors de la création d'une LXC #12

Closed
opened 2026-07-30 08:52:53 +00:00 by Damien · 0 comments
Owner

Contexte (mis à jour suite à #13)

ferretdb va être retiré du dépôt (#13). Une fois ce retrait fait, les scripts créateurs de LXC du dépôt sont :

Script Cible Détection template
openbao LXC Alpine Auto via pveam available + sort -V
gitea-runner LXC Alpine Figé en dur (alpine-3.23-default_20260116_amd64.tar.xz)

komodo, netlab, proxy restent hors périmètre : ils s'installent sur une machine/VM déjà provisionnée, sans notion de template.

Règle à appliquer

  • Le choix de l'OS (Alpine vs Debian vs autre) se décide au cas par cas, à la création du script, selon les requirements du logiciel packagé (ex. dépendance non disponible en musl → Debian). Ce n'est pas une règle générique "toujours Alpine" ni "toujours la config la plus récente toutes familles confondues" — l'auteur du script tranche une fois, en fonction du besoin.
  • Une fois l'OS décidé, le script doit toujours utiliser la dernière version disponible de cette famille via pveam available + sort -V, avec fallback codé en dur si pveam échoue.
  • TEMPLATE explicite en variable d'environnement reste toujours prioritaire et respecté tel quel.

Problème concret

gitea-runner ne suit pas cette règle : template Alpine figé en dur, contrairement à openbao.

Proposition

  1. Factoriser detect_latest_alpine_template() (+ fallback) dans un helper partagé (ex. lib/common.sh) sourcé par openbao et gitea-runner.
  2. Corriger gitea-runner/install.sh pour utiliser l'auto-détection Alpine, avec le même fallback codé en dur.
  3. Mettre à jour le README de gitea-runner pour documenter TEMPLATE comme "auto-détecté".
## Contexte (mis à jour suite à #13) `ferretdb` va être retiré du dépôt (#13). Une fois ce retrait fait, les scripts créateurs de LXC du dépôt sont : | Script | Cible | Détection template | | --- | --- | --- | | `openbao` | LXC Alpine | Auto via `pveam available` + `sort -V` ✅ | | `gitea-runner` | LXC Alpine | **Figé en dur** (`alpine-3.23-default_20260116_amd64.tar.xz`) ❌ | `komodo`, `netlab`, `proxy` restent hors périmètre : ils s'installent sur une machine/VM déjà provisionnée, sans notion de template. ## Règle à appliquer - Le choix de l'OS (Alpine vs Debian vs autre) se décide **au cas par cas, à la création du script**, selon les requirements du logiciel packagé (ex. dépendance non disponible en musl → Debian). Ce n'est pas une règle générique "toujours Alpine" ni "toujours la config la plus récente toutes familles confondues" — l'auteur du script tranche une fois, en fonction du besoin. - Une fois l'OS décidé, le script doit **toujours utiliser la dernière version disponible** de cette famille via `pveam available` + `sort -V`, avec fallback codé en dur si `pveam` échoue. - `TEMPLATE` explicite en variable d'environnement reste toujours prioritaire et respecté tel quel. ## Problème concret `gitea-runner` ne suit pas cette règle : template Alpine figé en dur, contrairement à `openbao`. ## Proposition 1. Factoriser `detect_latest_alpine_template()` (+ fallback) dans un helper partagé (ex. `lib/common.sh`) sourcé par `openbao` et `gitea-runner`. 2. Corriger `gitea-runner/install.sh` pour utiliser l'auto-détection Alpine, avec le même fallback codé en dur. 3. Mettre à jour le README de `gitea-runner` pour documenter `TEMPLATE` comme "auto-détecté".
Damien changed title from gitea-runner: harmoniser la sélection du template Alpine avec openbao (auto-détection) to Harmoniser l'auto-détection de template LXC (Alpine par défaut, Debian si contrainte) sur tous les scripts créateurs de LXC 2026-07-30 08:56:12 +00:00
Damien changed title from Harmoniser l'auto-détection de template LXC (Alpine par défaut, Debian si contrainte) sur tous les scripts créateurs de LXC to Standardiser le choix du template/OS lors de la création d'une LXC 2026-07-30 08:59:36 +00:00
Damien added reference chore/standardize-lxc-scripts 2026-07-30 11:04:43 +00:00
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Damien/infra-scripts#12