Sobes.tech
Middle

Hoe wordt versiebeheer gedaan in Helm?

sobes.tech AI

Antwoord van AI

Versiebeheer in Helm gebeurt op twee niveaus:

  1. Versie van de Chart (Chart Version): Bepaalt de versie van de hele Helm Chart. Verandert bij elke wijziging in sjablonen, standaardwaarden of metadata van de Chart. Wordt gespecificeerd in het bestand Chart.yaml.

  2. Versie van de Applicatie (App Version): Bepaalt de versie van de eigenlijke applicatie die met deze Chart wordt geleverd. Wordt gespecificeerd in het bestand Chart.yaml en is uitsluitend informatief voor de eindgebruiker van de Chart. Heeft geen invloed op de werking van Helm.

Bestand Chart.yaml:

# Bestand met metadata van de Chart
apiVersion: v2       # Helm API-versie
name: my-app         # Naam van de Chart
description: Mijn applicatie # Beschrijving van de Chart
version: 1.2.3       # Versie van de Chart. Het wordt aanbevolen SemVer te volgen.
appVersion: "2.5.0"  # Versie van de applicatie. String.

Levenscyclus en versiebeheer van releases:

Elke keer dat je een Helm Chart installeert of bijwerkt, maakt Helm een nieuwe release. Elke release heeft een unieke revision-nummer. Dit nummer wordt verhoogd bij elke operatie helm install, helm upgrade of helm rollback voor dezelfde release-naam.

Voorbeeld van werken met releases:

# Installatie van de Chart (creatie van release, revision 1)
helm install my-release ./my-chart

# Bijwerken van de Chart (creatie van een nieuwe versie van de release, revision 2)
helm upgrade my-release ./my-chart

# Terugrollen naar de vorige versie van de release (creatie van een nieuwe versie, revision 3)
helm rollback my-release 2

# Bekijk de geschiedenis van de release
helm history my-release

Gebruik van versies bij installatie en bijwerken:

Bij het installeren of bijwerken van een Chart uit een repository kun je een specifieke versie aangeven met de vlag --version:

# Installatie van een specifieke versie van de Chart
helm install my-release my-repo/my-chart --version 1.2.3

# Bijwerken naar een specifieke versie van de Chart
helm upgrade my-release my-repo/my-chart --version 1.3.0

Zo dekt versiebeheer in Helm zowel de pakket (Chart) met de inhoud als de geschiedenis van de implementaties van dat pakket (releases).