Sobes.tech
Middle

Hogyan verziózod a táblákat a projektjeidben?

sobes.tech MI

Válasz az MI-től

A szemantikus verziókezelést (SemVer) használjuk a MAJOR.MINOR.PATCH formátumban.

  • MAJOR: Visszafelé kompatibilitást sértő változások.
  • MINOR: Új funkciók hozzáadása a visszafelé kompatibilitás megtartásával.
  • PATCH: Hibajavítások a visszafelé kompatibilitás megtartásával.

A következő gyakorlatokat alkalmazzuk:

  • A chart verzióját a Chart.yaml fájlban adjuk meg.
  • Minden változásnál, amely a telepítést érinti (még a kicsi is), a verziót a SemVer szerint növeljük.
  • Git tageket használunk a chart verziók rögzítésére. A tag megfelel a chart verziójának (pl. mychart-1.2.3).
  • A telepítés során egy adott chart verziót használunk, nem a legutóbbit.
  • A verziókezelést beépítjük a CI/CD folyamatba.

Példa Chart.yaml:

# Chart.yaml
apiVersion: v2
name: my-app
description: Egy Helm chart a alkalmazásomhoz
version: 1.2.3 # A chart verziója
appVersion: "1.0.0" # Az alkalmazás verziója

CI/CD folyamat:

  1. A fejlesztő módosítja a chartot.
  2. Egy Merge Request nyílik.
  3. A CI pipeline végrehajtja a lintinget és a teszteket (helm lint, helm test).
  4. A fő ágba történő merge esetén a chart verziója növekszik (kézi vagy automatikus módon CI/CD eszközökkel).
  5. Egy Git tag készül az új chart verzióval.
  6. A chartokat csomagolják (helm package) és közzéteszik egy chart repositoryban (pl. Artifactory, Nexus, OCI Registry).

Ez lehetővé teszi a korábbi verziókra való visszatérést és a verziók közötti változások egyértelmű meghatározását.