GITLAB-CI - Utworzenie procesu wersjonowania kodu¶
Tips
SemVer (Semantic Versioning)1 to standard wersjonowania oprogramowania, który określa sposób nadawania numerów wersji w formacie MAJOR.MINOR.PATCH.
Struktura:¶
- MAJOR – Zwiększane, gdy wprowadzane są zmiany niekompatybilne wstecz.
- MINOR – Zwiększane, gdy dodawane są nowe funkcje, ale zachowana jest kompatybilność wsteczna.
- PATCH – Zwiększane, gdy poprawiane są błędy bez zmiany funkcjonalności.
Dodatkowo można stosować oznaczenia:
- Pre-release (np. 1.2.0-alpha.1
) – wersje testowe przed oficjalnym wydaniem.
- Build metadata (np. 1.2.0+build201
) – informacje o kompilacji.
SemVer pomaga w zarządzaniu zależnościami i ułatwia utrzymanie kompatybilności kodu.
Krok 1. Przygotowanie obrazu kontenerowego¶
Przygotowany obraz kontenerowy z semantic-release2 commit
Ręczne wydanie obrazu
docker build -t registry.gitlab.com/pl.rachuna-net/containers/semantic-release:0.0.1 .
docker push registry.gitlab.com/pl.rachuna-net/containers/semantic-release:0.0.1
Krok 2. Przygotowanie komponentu do wersjonowania kodu¶
pl.rachuna-net/cicd/components/versioning
- Krok 1. Pobieranie konfiguracji
.releaserc.js
- Krok 2. Uruchomienie semantic-release
# Ustawienie wersji tylko na potrzeby pipeline
🕵 Set Version:
stage: prepare
rules:
- when: on_success
# Publikacja wersji po utworzeniu artifact'ów
📍 Publish Version:
stage: release
rules:
- when: on_success
