Gitlab CI/CD¶
GitLab CI/CD1 (Continuous Integration/Continuous Deployment) to wbudowany w GitLab system automatyzacji procesów budowania, testowania i wdrażania kodu. Działa na podstawie pliku konfiguracyjnego .gitlab-ci.yml
, który definiuje pipeline – zestaw zadań wykonywanych automatycznie po zmianach w repozytorium.
Pipeline składa się z jobów (zadań) pogrupowanych w stage (etapy), np. build
, test
, deploy
. GitLab CI uruchamia je w określonej kolejności, a wykonanie może odbywać się na GitLab Runnerach – agentach uruchamiających zadania.
Dzięki GitLab CI/CD możliwe jest ciągłe dostarczanie (CD), czyli automatyczne wdrażanie aplikacji na produkcję lub do środowisk testowych. Obsługuje kontenery, chmury i infrastruktury on-premise, ułatwiając zarządzanie cyklem życia oprogramowania. 🚀
Architektura projektu gitlab-ci w pl.rachuna-net
¶
Question
Kod źródłowy projektu znajduje się tutaj.
Projekt zawiera
├─ gitlab-ci # repozytorium z generycznymi procesami ci
└─ components # grupa zawierająca komponenty (`ci/cd catalog`)
├── docker # komponent budujący obrazy kontenerowe
├── sonarqube # komponent wykonujący skanowanie dla sonarqube
├── terraform # komponent obsługujący terraform
└── versioning # komponent do wersjonowania aplikacji