🛠 Job template: 🕵 yamllint

🕵 YAML lint

Komponent Yamllint jest odpowiedzialny za walidację wszystkich plików YAML w repozytorium w ramach stage validate.
Wykorzystuje narzędzie yamllint oraz centralny plik konfiguracyjny .yamllint.yml, aby zapewnić spójność stylu i poprawności składniowej plików YAML.

  • Uruchamiany w ramach jobu 🕵 YAML lint
  • Możliwość pełnej parametryzacji obrazu Dockera i ścieżek
  • Automatycznie dołącza pliki pomocnicze (function_print_row.yml, logo.yml, itp.)
  • Można go łatwo zaimportować do dowolnego pipeline za pomocą sekcji include

job

Job, który wykonuje walidację składni plików YAML w repozytorium przy użyciu narzędzia yamllint.


⚙️ Parametry wejściowe (inputs)

Nazwa Typ Domyślna wartość Opis
docker_image string registry.gitlab.com/pl.rachuna-net/containers/python:2.0.0 Obraz Dockera z interpreterem Pythona lub shellem.
logo_url string https://gitlab.com/pl.rachuna-net/cicd/gitlab-ci/-/raw/main/_configs/_logo?ref_type=heads URL logotypu wyświetlanego w logach joba.
validate_repo_namespace string pl.rachuna-net/cicd/components/validate Namespace i ścieżka do repozytorium komponentu validate.
validate_repo_branch string main Gałąź komponentu validate, z której pobierane są pliki.
yamllint_path string _configs/validate/.yamllint.yml Ścieżka do pliku konfiguracyjnego yamllint.

🧬 Zmienne środowiskowe obsługiwane przez skrypt

Job ustawia i wykorzystuje poniższe zmienne środowiskowe:

  • CONTAINER_IMAGE_PYTHON – wybrany obraz Dockera.
  • LOGO_URL – adres logotypu, który jest opcjonalnie pobierany w trakcie uruchamiania joba.
  • VALIDATE_REPO_NAMESPACE – namespace repozytorium komponentu validate.
  • VALIDATE_REPO_BRANCH – gałąź repozytorium komponentu validate.
  • YAMLLINT_PATH – ścieżka do pliku konfiguracyjnego yamllint.

📤 Output

Job wykonuje linting plików YAML i wypisuje wyniki w logach pipeline’u w formie standardowej dla narzędzia yamllint, np.:

===> 🔍 YAML lint results
source/ci-template.yml
  10:3      warning  missing document start "---"  (document-start)
  22:1      error    too many blank lines (1 > 0)  (empty-lines)

W przypadku błędów job kończy się statusem failed.

Last modified August 14, 2025: feat!: DEVOPS-123 Zmiana mkdocs na hugo (660375f)