Sobes.tech
Middle

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:

  1. 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.

  2. 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.yaml et 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).