Sobes.tech
Middle

Cum se realizează gestionarea versiunilor în Helm?

sobes.tech AI

Răspuns de la AI

Gestionarea versiunilor în Helm se face pe două niveluri:

  1. Versiunea Chart-ului (Chart Version): Definește versiunea întregului Helm Chart. Se modifică la orice schimbare în șabloane, valori implicite sau metadate ale Chart-ului. Este specificată în fișierul Chart.yaml.

  2. Versiunea Aplicației (App Version): Definește versiunea aplicației propriu-zise, livrată împreună cu acest Chart. Este specificată în fișierul Chart.yaml și are un caracter exclusiv informativ pentru utilizatorul final al Chart-ului. Nu influențează funcționarea Helm.

Fișierul Chart.yaml:

# Fișier cu metadate ale Chart-ului
apiVersion: v2       # Versiunea API Helm
name: my-app         # Numele Chart-ului
description: Aplicația mea # Descrierea Chart-ului
version: 1.2.3       # Versiunea Chart-ului. Se recomandă urmarea SemVer.
appVersion: "2.5.0"  # Versiunea aplicației. String.

Ciclul de viață și gestionarea versiunilor release:

De fiecare dată când instalezi sau actualizezi un Helm Chart, Helm creează o nouă releasă. Fiecare releasă are un număr de revizie unic. Acest număr crește la fiecare operație helm install, helm upgrade sau helm rollback pentru același nume de releasă.

Exemplu de lucru cu relee:

# Instalarea Chart-ului (crearea releasei, revizia 1)
helm install my-release ./my-chart

# Actualizarea Chart-ului (crearea unei noi versiuni de releasă, revizia 2)
helm upgrade my-release ./my-chart

# Revertirea la versiunea anterioară a releasăi (crearea unei noi versiuni, revizia 3)
helm rollback my-release 2

# Vizualizarea istoriei relee
helm history my-release

Utilizarea versiunilor la instalare și actualizare:

La instalarea sau actualizarea unui Chart dintr-un depozit, poți specifica o versiune anume folosind flag-ul --version:

# Instalarea unei versiuni specifice a Chart-ului
helm install my-release my-repo/my-chart --version 1.2.3

# Actualizarea la o versiune specifică a Chart-ului
helm upgrade my-release my-repo/my-chart --version 1.3.0

Astfel, gestionarea versiunilor în Helm acoperă atât pachetul (Chart) cu conținutul său, cât și istoricul implementărilor acestui pachet (releasurile).