Comment la gestion des versions est-elle effectuée dans Helm?
sobes.tech IA
Réponse de l'IA
La gestion des versions dans Helm se fait à deux niveaux:
-
Version du Chart (Chart Version): Définit la version de l'ensemble du Helm Chart. Elle change lors de toute modification des modèles, valeurs par défaut ou métadonnées du Chart. Elle est indiquée dans le fichier
Chart.yaml. -
Version de l'Application (App Version): Définit la version de l'application elle-même, livrée avec ce Chart. Elle est indiquée dans le fichier
Chart.yamlet est uniquement informative pour l'utilisateur final du Chart. Elle n'affecte pas le fonctionnement de Helm.
Fichier Chart.yaml:
# Fichier de métadonnées du Chart
apiVersion: v2 # Version de l'API Helm
name: my-app # Nom du Chart
description: Mon application # Description du Chart
version: 1.2.3 # Version du Chart. Il est conseillé de suivre SemVer.
appVersion: "2.5.0" # Version de l'application. C'est une chaîne.
Cycle de vie et gestion des versions des releases:
Chaque fois que vous installez ou mettez à jour un Chart Helm, Helm crée une nouvelle release. Chaque release a un numéro de révision unique. Ce numéro augmente à chaque opération helm install, helm upgrade ou helm rollback pour un même nom de release.
Exemple de gestion des releases:
# Installation du Chart (création de la release, révision 1)
helm install my-release ./my-chart
# Mise à jour du Chart (création d'une nouvelle version de la release, révision 2)
helm upgrade my-release ./my-chart
# Revenir à la version précédente de la release (création d'une nouvelle version, révision 3)
helm rollback my-release 2
# Voir l'historique de la release
helm history my-release
Utilisation des versions lors de l'installation et de la mise à jour:
Lors de l'installation ou de la mise à jour d'un Chart depuis un dépôt, vous pouvez spécifier une version précise avec le drapeau --version:
# Installer une version spécifique du Chart
helm install my-release my-repo/my-chart --version 1.2.3
# Mettre à jour vers une version spécifique du Chart
helm upgrade my-release my-repo/my-chart --version 1.3.0
Ainsi, la gestion des versions dans Helm couvre à la fois le package (Chart) avec son contenu, et l'historique des déploiements de ce package (releases).