Gitlab-CI
Infrastruktura procesów gitlab-ci
2 minute read
GitLab to kompleksowa platforma DevOps służąca do zarządzania cyklem życia oprogramowania – od planowania, przez wersjonowanie kodu, aż po testowanie, wdrażanie i monitorowanie. Oferuje zintegrowane narzędzia do zarządzania repozytoriami Git, ciągłej integracji i wdrażania (CI/CD), zarządzania zadaniami, a także kontroli dostępu i bezpieczeństwa. GitLab może działać jako usługa chmurowa (GitLab.com) lub być wdrożony lokalnie (self-hosted), co czyni go elastycznym rozwiązaniem zarówno dla małych zespołów, jak i dużych organizacji.
---
config:
theme: neo
layout: dagre
look: neo
---
flowchart LR
subgraph s3["Repozytorium IAC"]
n12["iac-gitlab"]
end
subgraph s4["Infrastruktura"]
n13["Zarządzanie grupami i repozytoriami"]
end
n12 --> s4
s4 --> n14["Repository"] & n15["Group"]
n12@{ shape: rounded}
n14:::Pine
n15:::Pine
classDef Aqua stroke-width:1px, stroke-dasharray:none, stroke:#46EDC8, fill:#DEFFF8, color:#378E7A
classDef Sky stroke-width:1px, stroke-dasharray:none, stroke:#374D7C, fill:#E2EBFF, color:#374D7C
classDef Pine stroke-width:1px, stroke-dasharray:none, stroke:#254336, fill:#27654A, color:#FFFFFF
Poniższy schemat opisuje jak wyglada zarządzanie przestrzeńią w gitlabie. Dokładniejszy opis znajduje się tutaj
Instalacja gitlab-runnera odbywa się za pomocą Terraform, którzy tworzy maszynę wirtualną (container proxmox), a instalacja usługi odbywa się za pomocą Ansible.
W projektach GitLab zaleca się stosowanie centralnego repozytorium z definicjami pipeline’ów oraz wspólnymi komponentami CI/CD, co pozwala na standaryzację i łatwiejsze zarządzanie procesami automatyzacji. Kluczowe znaczenie ma również zachowanie spójnej struktury plików .gitlab-ci.yml, w tym prawidłowa definicja stages, co ułatwia czytelność, utrzymanie i rozwój pipeline’ów w całej organizacji.
Infrastruktura procesów gitlab-ci
🌐 Gitlab pages
🖊️ Standard opisywania commitów