Bonsoir à tous,
La version 11 de Debian est disponible depuis le 14 août. Je me suis proposé pour mettre à jour nos serveurs (prod et bêta) et faire les modifications nécessaires dans le code de ZdS.
Puisque le sujet touche l’infrastructure de ZdS, le code zds-site et le code ansible-zestedesavoir, je crée un sujet ici pour suivre l’avancée et garder plus facilement une trace des discussions. Aussi, ça pourra servir de mémo pour les prochaines mise à jour majeures de Debian.
Debian 11.1 devrait être disponible dans un mois, je pense qu’on peut attendre ce moment, histoire que les bugs les plus sévères causés par la mise à jour soient rapportés et, espérons-le, corrigés. Mais cela ne nous empêcher de nous atteler tout de suite à la mise à jour, les différences entre la version 11 et 11.1 devraient être minimes.
Voici donc une liste de choses à faire pour passer à Debian 11:
- mettre à jour les scripts de ansible-zestedesavoir: la box Vagrant utilisée, la CI
- mettre à jour le script d’installation de ZdS pour qu’il fonctionne bien sur Debian 11, la CI
- mettre à jour Debian sur le serveur de bêta, tester quelques temps
- mettre à jour Debian sur le serveur de prod
Concernant la CI de GitHub, je viens de me rendre compte que Debian n’était pas disponible comme OS des runners, on se contentera donc de mettre à jour la version d’Ubuntu utilisée.
Aussi, je me disais qu’on pourrait aussi en profiter pour mettre à jour nos autres dépendances back:
- Nginx
- MariaDB
- NodeJS
- pas ElasticSearch, puisque le changement de version demande du travail dans le code de ZdS
Dernier point, et c’est lié au précédent, pourquoi, quand les versions sont suffisamment récentes, ne pas installer les paquets directement depuis les dépôts de Debian, plutôt qu’utiliser les dépôts proposés par le logiciel (voilà un exemple) ? Ça simplifierait le rôle Ansible (pas d’ajout de dépôts spécifiques et de leurs clés) et je pense que même si on sera toujours un peu en retard sur les dernières versions des logiciels, le support pour Debian devrait être assuré.
Voici un tableau récapitulatif pour aider à la réflexion:
Programme | Version actuellement utilisée | Version dans Debian 11 | Version upstream |
---|---|---|---|
Nginx | 1.20.1 | 1.18.0 | 1.20.1 |
MariaDB | 10.4.20 | 10.5.11 | 10.6.4 |
NodeJS | 12.22.5 | 12.21.0 | 14.17.5 en LTS, 16.8.0 sinon |
Bon, d’après le tableau, je suggérerais:
- Nginx: garder le dépôt upstream (parce qu’on fait une mise à jour et pas une installation à partir de zéro, downgrader le paquet me paraît un peu délicat)
- MariaDB: utiliser la version dans les dépôts de Debian
- NodeJS: là, on n’a pas vraiment d’autre choix que d’utiliser la dernière LTS, non disponible dans les dépôts.
Qu’en pensez-vous ?