Sobes.tech
Middle

Jak odbywa się wersjonowanie w Helm?

sobes.tech AI

Odpowiedź od AI

Zarządzanie wersjami w Helm odbywa się na dwóch poziomach:

  1. Wersja Chart (Chart Version): Określa wersję całego Helm Chart. Zmienia się przy wprowadzaniu jakichkolwiek zmian w szablonach, wartościach domyślnych lub metadanych Chart. Jest określona w pliku Chart.yaml.

  2. Wersja Aplikacji (App Version): Określa wersję samej aplikacji, która jest dostarczana za pomocą tego Chart. Jest określona w pliku Chart.yaml i ma charakter wyłącznie informacyjny dla końcowego użytkownika Chart. Nie wpływa na działanie Helm.

Plik Chart.yaml:

# Plik z metadanymi Chart
apiVersion: v2       # Wersja API Helm
name: my-app         # Nazwa Chart
description: Moja aplikacja # Opis Chart
version: 1.2.3       # Wersja Chart. Zaleca się stosowanie SemVer.
appVersion: "2.5.0"  # Wersja aplikacji. Tekst.

Cykl życia i wersjonowanie wydań:

Za każdym razem, gdy instalujesz lub aktualizujesz Helm Chart, Helm tworzy nową wydanie. Każde wydanie ma unikalny numer rewizji. Numer ten zwiększa się przy każdej operacji helm install, helm upgrade lub helm rollback dla tej samej nazwy wydania.

Przykład pracy z wydaniami:

# Instalacja Chart (tworzenie wydania, rewizja 1)
helm install my-release ./my-chart

# Aktualizacja Chart (tworzenie nowej wersji wydania, rewizja 2)
helm upgrade my-release ./my-chart

# Przywrócenie do poprzedniej wersji wydania (tworzenie nowej wersji, rewizja 3)
helm rollback my-release 2

# Wyświetlenie historii wydań
helm history my-release

Użycie wersji przy instalacji i aktualizacji:

Podczas instalacji lub aktualizacji Chart z repozytorium można wskazać konkretną wersję za pomocą flagi --version:

# Instalacja konkretnej wersji Chart
helm install my-release my-repo/my-chart --version 1.2.3

# Aktualizacja do konkretnej wersji Chart
helm upgrade my-release my-repo/my-chart --version 1.3.0

W ten sposób zarządzanie wersjami w Helm obejmuje zarówno pakiet (Chart) z jego zawartością, jak i historię wdrożeń tego pakietu (wydania).