Co to jest CI/CD?
Krótka odpowiedź
CI/CD to zestaw praktyk automatyzujących budowanie, testowanie i wdrażanie oprogramowania w powtarzalnym potoku (pipeline). Skrót oznacza Continuous Integration (ciągłą integrację kodu z automatycznymi testami) oraz Continuous Delivery lub Continuous Deployment (ciągłe dostarczanie i wdrażanie zmian). Dzięki CI/CD zespoły publikują nowe wersje aplikacji częściej, szybciej i z mniejszym ryzykiem błędów. To jeden z filarów kultury DevOps.
CI/CD to podejście do wytwarzania oprogramowania, w którym budowanie, testowanie i wdrażanie kodu odbywają się automatycznie, w powtarzalnym potoku (pipeline). Dzięki temu zespół dostarcza zmiany częściej, szybciej i z mniejszym ryzykiem błędów. CI/CD jest jednym z filarów kultury DevOps i codziennym narzędziem pracy programistów oraz inżynierów.
Co oznacza skrót CI/CD
Skrót łączy dwa pojęcia. CI (Continuous Integration), czyli ciągła integracja, to praktyka częstego scalania kodu wielu programistów do wspólnego repozytorium, gdzie automatycznie uruchamiane są testy. CD ma dwa znaczenia: Continuous Delivery (ciągłe dostarczanie — aplikacja jest zawsze gotowa do wdrożenia jednym kliknięciem) oraz Continuous Deployment (ciągłe wdrażanie — każda zmiana po przejściu testów trafia na produkcję automatycznie).
Jak działa pipeline CI/CD
Potok CI/CD to sekwencja etapów uruchamiana po każdej zmianie w systemie kontroli wersji Git:
- Build — kod jest kompilowany i pakowany, często do obrazu Docker.
- Test — automatycznie uruchamiane są testy jednostkowe i integracyjne.
- Release — gotowa wersja trafia do repozytorium artefaktów.
- Deploy — aplikacja jest wdrażana na serwer lub do klastra Kubernetes.
Popularne narzędzia to GitHub Actions, GitLab CI, Jenkins i CircleCI.
Dlaczego CI/CD jest ważne
Automatyzacja skraca czas dostarczania nowych funkcji z tygodni do godzin. Testy uruchamiane przy każdej zmianie wcześnie wykrywają błędy, gdy są tańsze do naprawy. Powtarzalny proces eliminuje ręczne, podatne na pomyłki wdrożenia i ułatwia szybki powrót do poprzedniej wersji. To dlatego znajomość CI/CD należy do standardowych wymagań na stanowiskach DevOps, backend i cloud.
Powiązane pojęcia
- Docker — konteneryzacja aplikacji na potrzeby pipeline'u.
- Kubernetes — orkiestracja wdrożeń na produkcji.
- Chmura obliczeniowa — środowisko, w którym najczęściej działają potoki CI/CD.
- Backend — obszar, w którym CI/CD stosuje się najintensywniej.
Chcesz nauczyć się budować własne potoki od podstaw? Sprawdź praktyczny kurs CI/CD online w LearnIT.
Gdzie się tego nauczysz
Chcesz nauczyć się CI/CD w praktyce?
Przejdź od definicji do realnych projektów pod okiem mentorów.
Zobacz kurs CI/CDNajczęstsze pytania
Powiązane pojęcia
Uzyskaj bezpłatną konsultację
Wypełnij formularz i otrzymaj kilka rozdziałów naszego podręcznika w prezencie!
