SlideShare a Scribd company logo
1 of 19
Download to read offline
Tomek Żmudziński
PHP developer
zmudzinski@trui.pl
Wstęp do Gitlab CI/CD
w aplikacjach napisanych
w Laravel
Continous integration (CI) - wprowadzanie drobnych zmian, przez zespół
deweloperski, które następnie okresowo są ze sobą integrowane.
Continous deployment (CD) - automatyzacja procesu wdrażania aplikacji do
infrastruktury serwerowej.
Continous testing (CT) - automatyczne wykonywanie testów
CI/CD
● Testowanie aplikacji
● Ciągła integracja wprowadzanych zmian
● Automatyzacja
● Spójność
● Izolacja błędów
● Szybsze wydawanie
● Zadowolenie Klienta
● Redukcja kosztów
● Łatwiejsze utrzymanie
● Ciągłość działania aplikacji
Korzyści
● Aplikacja w Laravel
● Gitlab
● Serwer testowy / produkcyjny
● Docker
● Konfiguracja w .gitlab-ci.yml
● Zmienne w repozytorium w Gitlab
Co będzie potrzebne?
Jak to działa?
https://www.axonactive.com/blog/why-ci-cd-improve-our-efficiency/
Jak to działa?
Jak to działa?
Dockerfile
.gitlab-ci.yaml
.gitlab-ci.yml
.gitlab-ci.yml
.gitlab-ci.yml
.gitlab-ci.yml
.gitlab-ci.yml
Zmienne w Gitlab
Działanie
Zero downtime
Tomek Żmudziński
zmudzinski@trui.pl

More Related Content

Similar to Wstęp do Gitlab CI/CD w aplikacjach napisanych w Laravel

Strategie automatyzacji testow
Strategie automatyzacji testowStrategie automatyzacji testow
Strategie automatyzacji testowWiktor Żołnowski
 
Programowanie Komponentowe: #C Wprowadzenie do OSGi
Programowanie Komponentowe: #C Wprowadzenie do OSGiProgramowanie Komponentowe: #C Wprowadzenie do OSGi
Programowanie Komponentowe: #C Wprowadzenie do OSGiMikołaj Olszewski
 
Feature flags na ratunek projektu w JavaScript
Feature flags na ratunek projektu w JavaScriptFeature flags na ratunek projektu w JavaScript
Feature flags na ratunek projektu w JavaScriptThe Software House
 
"Wyzwania automatyzacji w ciągłej integracji" - o tworzeniu i utrzymaniu test...
"Wyzwania automatyzacji w ciągłej integracji" - o tworzeniu i utrzymaniu test..."Wyzwania automatyzacji w ciągłej integracji" - o tworzeniu i utrzymaniu test...
"Wyzwania automatyzacji w ciągłej integracji" - o tworzeniu i utrzymaniu test...Women in Technology Poland
 
GET.NET - Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...
GET.NET -  Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...GET.NET -  Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...
GET.NET - Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...Michal Furmankiewicz
 
Case Study - eCommerce w TIM SA
Case Study - eCommerce w TIM SACase Study - eCommerce w TIM SA
Case Study - eCommerce w TIM SADivante
 
Case study - Wdrożenie eCommerce w TIM SA
Case study - Wdrożenie eCommerce w TIM SACase study - Wdrożenie eCommerce w TIM SA
Case study - Wdrożenie eCommerce w TIM SATomasz Karwatka
 
Refactoring - Jak pozostać przy zdrowych zmysłach, redukując dług
Refactoring - Jak pozostać przy zdrowych zmysłach, redukując długRefactoring - Jak pozostać przy zdrowych zmysłach, redukując dług
Refactoring - Jak pozostać przy zdrowych zmysłach, redukując długMax Małecki
 
HYC - Angular stań się kanciastym
HYC - Angular stań się kanciastymHYC - Angular stań się kanciastym
HYC - Angular stań się kanciastymDariusz Jagieło
 
CI oraz CD w złożonym projekcie o małym budżecie
CI oraz CD w złożonym projekcie o małym budżecieCI oraz CD w złożonym projekcie o małym budżecie
CI oraz CD w złożonym projekcie o małym budżecieGrzegorz Godlewski
 
Nowa wersja systemu - upgrade czy re-implementacja
Nowa wersja systemu - upgrade czy re-implementacjaNowa wersja systemu - upgrade czy re-implementacja
Nowa wersja systemu - upgrade czy re-implementacjaBARTEKWACHNIK
 
To jak zrobimy ten projekt? Czyli o doborze technologii słów kilka.
To jak zrobimy ten projekt? Czyli o doborze technologii słów kilka. To jak zrobimy ten projekt? Czyli o doborze technologii słów kilka.
To jak zrobimy ten projekt? Czyli o doborze technologii słów kilka. Piotr Grabski-Gradziński
 
TIBCO Integration - Slawomir Zak
TIBCO Integration - Slawomir ZakTIBCO Integration - Slawomir Zak
TIBCO Integration - Slawomir ZakSlawomir Zak
 
Piotr Grabski-Gradziński (VML) - To jak zrobimy ten projekt? Czyli o doborze ...
Piotr Grabski-Gradziński (VML) - To jak zrobimy ten projekt? Czyli o doborze ...Piotr Grabski-Gradziński (VML) - To jak zrobimy ten projekt? Czyli o doborze ...
Piotr Grabski-Gradziński (VML) - To jak zrobimy ten projekt? Czyli o doborze ...Business Link Krakow
 
Od Figmy do gotowej aplikacji bez linijki kodu
Od Figmy do gotowej aplikacji bez linijki koduOd Figmy do gotowej aplikacji bez linijki kodu
Od Figmy do gotowej aplikacji bez linijki koduThe Software House
 
Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31kraqa
 
Impuls EVO rozgrzewa
Impuls EVO rozgrzewaImpuls EVO rozgrzewa
Impuls EVO rozgrzewaBPSC
 

Similar to Wstęp do Gitlab CI/CD w aplikacjach napisanych w Laravel (20)

university day 1
university day 1university day 1
university day 1
 
Strategie automatyzacji testow
Strategie automatyzacji testowStrategie automatyzacji testow
Strategie automatyzacji testow
 
Programowanie Komponentowe: #C Wprowadzenie do OSGi
Programowanie Komponentowe: #C Wprowadzenie do OSGiProgramowanie Komponentowe: #C Wprowadzenie do OSGi
Programowanie Komponentowe: #C Wprowadzenie do OSGi
 
Feature flags na ratunek projektu w JavaScript
Feature flags na ratunek projektu w JavaScriptFeature flags na ratunek projektu w JavaScript
Feature flags na ratunek projektu w JavaScript
 
"Wyzwania automatyzacji w ciągłej integracji" - o tworzeniu i utrzymaniu test...
"Wyzwania automatyzacji w ciągłej integracji" - o tworzeniu i utrzymaniu test..."Wyzwania automatyzacji w ciągłej integracji" - o tworzeniu i utrzymaniu test...
"Wyzwania automatyzacji w ciągłej integracji" - o tworzeniu i utrzymaniu test...
 
GET.NET - Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...
GET.NET -  Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...GET.NET -  Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...
GET.NET - Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...
 
Case Study - eCommerce w TIM SA
Case Study - eCommerce w TIM SACase Study - eCommerce w TIM SA
Case Study - eCommerce w TIM SA
 
Case study - Wdrożenie eCommerce w TIM SA
Case study - Wdrożenie eCommerce w TIM SACase study - Wdrożenie eCommerce w TIM SA
Case study - Wdrożenie eCommerce w TIM SA
 
Refactoring - Jak pozostać przy zdrowych zmysłach, redukując dług
Refactoring - Jak pozostać przy zdrowych zmysłach, redukując długRefactoring - Jak pozostać przy zdrowych zmysłach, redukując dług
Refactoring - Jak pozostać przy zdrowych zmysłach, redukując dług
 
HYC - Angular stań się kanciastym
HYC - Angular stań się kanciastymHYC - Angular stań się kanciastym
HYC - Angular stań się kanciastym
 
CI oraz CD w złożonym projekcie o małym budżecie
CI oraz CD w złożonym projekcie o małym budżecieCI oraz CD w złożonym projekcie o małym budżecie
CI oraz CD w złożonym projekcie o małym budżecie
 
Nowa wersja systemu - upgrade czy re-implementacja
Nowa wersja systemu - upgrade czy re-implementacjaNowa wersja systemu - upgrade czy re-implementacja
Nowa wersja systemu - upgrade czy re-implementacja
 
Testowanie automatyczne 2024 INCO Academy
Testowanie automatyczne 2024 INCO AcademyTestowanie automatyczne 2024 INCO Academy
Testowanie automatyczne 2024 INCO Academy
 
To jak zrobimy ten projekt? Czyli o doborze technologii słów kilka.
To jak zrobimy ten projekt? Czyli o doborze technologii słów kilka. To jak zrobimy ten projekt? Czyli o doborze technologii słów kilka.
To jak zrobimy ten projekt? Czyli o doborze technologii słów kilka.
 
TIBCO Integration - Slawomir Zak
TIBCO Integration - Slawomir ZakTIBCO Integration - Slawomir Zak
TIBCO Integration - Slawomir Zak
 
Piotr Grabski-Gradziński (VML) - To jak zrobimy ten projekt? Czyli o doborze ...
Piotr Grabski-Gradziński (VML) - To jak zrobimy ten projekt? Czyli o doborze ...Piotr Grabski-Gradziński (VML) - To jak zrobimy ten projekt? Czyli o doborze ...
Piotr Grabski-Gradziński (VML) - To jak zrobimy ten projekt? Czyli o doborze ...
 
Od Figmy do gotowej aplikacji bez linijki kodu
Od Figmy do gotowej aplikacji bez linijki koduOd Figmy do gotowej aplikacji bez linijki kodu
Od Figmy do gotowej aplikacji bez linijki kodu
 
Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
 
Wirtualizacja systemów operacyjnych oraz aplikacji w środowisku Microsoft - N...
Wirtualizacja systemów operacyjnych oraz aplikacji w środowisku Microsoft - N...Wirtualizacja systemów operacyjnych oraz aplikacji w środowisku Microsoft - N...
Wirtualizacja systemów operacyjnych oraz aplikacji w środowisku Microsoft - N...
 
Impuls EVO rozgrzewa
Impuls EVO rozgrzewaImpuls EVO rozgrzewa
Impuls EVO rozgrzewa
 

More from Laravel Poland MeetUp

WebRTC+Websockety - Jak stworzyłem aplikację do kamerek internetowych w Larav...
WebRTC+Websockety - Jak stworzyłem aplikację do kamerek internetowych w Larav...WebRTC+Websockety - Jak stworzyłem aplikację do kamerek internetowych w Larav...
WebRTC+Websockety - Jak stworzyłem aplikację do kamerek internetowych w Larav...Laravel Poland MeetUp
 
xD bug - Jak debugować PHP-owe aplikacje (Xdebug)
xD bug - Jak debugować PHP-owe aplikacje (Xdebug) xD bug - Jak debugować PHP-owe aplikacje (Xdebug)
xD bug - Jak debugować PHP-owe aplikacje (Xdebug) Laravel Poland MeetUp
 
Kilka slajdów o castowaniu atrybutów w Eloquent
Kilka slajdów o castowaniu atrybutów w EloquentKilka slajdów o castowaniu atrybutów w Eloquent
Kilka slajdów o castowaniu atrybutów w EloquentLaravel Poland MeetUp
 
Jak przyspieszyłem aplikację produkcyjną o ponad 40%
Jak przyspieszyłem aplikację produkcyjną o ponad 40%Jak przyspieszyłem aplikację produkcyjną o ponad 40%
Jak przyspieszyłem aplikację produkcyjną o ponad 40%Laravel Poland MeetUp
 
Cykl życia zapytania HTTP (pod maską)
Cykl życia zapytania HTTP (pod maską)Cykl życia zapytania HTTP (pod maską)
Cykl życia zapytania HTTP (pod maską)Laravel Poland MeetUp
 
Enumy w Laravelu - dlaczego warto stosować?
Enumy w Laravelu - dlaczego warto stosować?Enumy w Laravelu - dlaczego warto stosować?
Enumy w Laravelu - dlaczego warto stosować?Laravel Poland MeetUp
 
Laravelowe paczki do uwierzytelniania
Laravelowe paczki do uwierzytelnianiaLaravelowe paczki do uwierzytelniania
Laravelowe paczki do uwierzytelnianiaLaravel Poland MeetUp
 
Przegląd najciekawszych wtyczek do Laravela
Przegląd najciekawszych wtyczek do LaravelaPrzegląd najciekawszych wtyczek do Laravela
Przegląd najciekawszych wtyczek do LaravelaLaravel Poland MeetUp
 
Laravel Dusk - prosty przepis na testy E2E
Laravel Dusk - prosty przepis na testy E2ELaravel Dusk - prosty przepis na testy E2E
Laravel Dusk - prosty przepis na testy E2ELaravel Poland MeetUp
 
Laravel Octane - czy na pewno taki szybki?
Laravel Octane - czy na pewno taki szybki?Laravel Octane - czy na pewno taki szybki?
Laravel Octane - czy na pewno taki szybki?Laravel Poland MeetUp
 
Automatyzacja utrzymania jakości w środowisku PHP
Automatyzacja utrzymania jakości w środowisku PHPAutomatyzacja utrzymania jakości w środowisku PHP
Automatyzacja utrzymania jakości w środowisku PHPLaravel Poland MeetUp
 
Laravel Collection - tablice na sterydach
Laravel Collection - tablice na sterydachLaravel Collection - tablice na sterydach
Laravel Collection - tablice na sterydachLaravel Poland MeetUp
 

More from Laravel Poland MeetUp (20)

WebRTC+Websockety - Jak stworzyłem aplikację do kamerek internetowych w Larav...
WebRTC+Websockety - Jak stworzyłem aplikację do kamerek internetowych w Larav...WebRTC+Websockety - Jak stworzyłem aplikację do kamerek internetowych w Larav...
WebRTC+Websockety - Jak stworzyłem aplikację do kamerek internetowych w Larav...
 
xD bug - Jak debugować PHP-owe aplikacje (Xdebug)
xD bug - Jak debugować PHP-owe aplikacje (Xdebug) xD bug - Jak debugować PHP-owe aplikacje (Xdebug)
xD bug - Jak debugować PHP-owe aplikacje (Xdebug)
 
Kilka slajdów o castowaniu atrybutów w Eloquent
Kilka slajdów o castowaniu atrybutów w EloquentKilka slajdów o castowaniu atrybutów w Eloquent
Kilka slajdów o castowaniu atrybutów w Eloquent
 
Licencje otwartego oprogramowania
Licencje otwartego oprogramowaniaLicencje otwartego oprogramowania
Licencje otwartego oprogramowania
 
Jak przyspieszyłem aplikację produkcyjną o ponad 40%
Jak przyspieszyłem aplikację produkcyjną o ponad 40%Jak przyspieszyłem aplikację produkcyjną o ponad 40%
Jak przyspieszyłem aplikację produkcyjną o ponad 40%
 
Jak przemycić Shape Up do Scruma?
Jak przemycić Shape Up do Scruma?Jak przemycić Shape Up do Scruma?
Jak przemycić Shape Up do Scruma?
 
Cykl życia zapytania HTTP (pod maską)
Cykl życia zapytania HTTP (pod maską)Cykl życia zapytania HTTP (pod maską)
Cykl życia zapytania HTTP (pod maską)
 
Enumy w Laravelu - dlaczego warto stosować?
Enumy w Laravelu - dlaczego warto stosować?Enumy w Laravelu - dlaczego warto stosować?
Enumy w Laravelu - dlaczego warto stosować?
 
Laravelowe paczki do uwierzytelniania
Laravelowe paczki do uwierzytelnianiaLaravelowe paczki do uwierzytelniania
Laravelowe paczki do uwierzytelniania
 
Przegląd najciekawszych wtyczek do Laravela
Przegląd najciekawszych wtyczek do LaravelaPrzegląd najciekawszych wtyczek do Laravela
Przegląd najciekawszych wtyczek do Laravela
 
Walidacja w Laravelu
Walidacja w LaraveluWalidacja w Laravelu
Walidacja w Laravelu
 
(prawie) Wszystko o Tinkerze
(prawie) Wszystko o Tinkerze(prawie) Wszystko o Tinkerze
(prawie) Wszystko o Tinkerze
 
Laravel Dusk - prosty przepis na testy E2E
Laravel Dusk - prosty przepis na testy E2ELaravel Dusk - prosty przepis na testy E2E
Laravel Dusk - prosty przepis na testy E2E
 
Laravel Octane - czy na pewno taki szybki?
Laravel Octane - czy na pewno taki szybki?Laravel Octane - czy na pewno taki szybki?
Laravel Octane - czy na pewno taki szybki?
 
Laravel Jobs i PHP8
Laravel Jobs i PHP8Laravel Jobs i PHP8
Laravel Jobs i PHP8
 
Wszystko o Laravel Livewire
Wszystko o Laravel Livewire Wszystko o Laravel Livewire
Wszystko o Laravel Livewire
 
Laravel/PHP - zderzenie z PDFami
Laravel/PHP - zderzenie z PDFamiLaravel/PHP - zderzenie z PDFami
Laravel/PHP - zderzenie z PDFami
 
Action-based Laravel
Action-based LaravelAction-based Laravel
Action-based Laravel
 
Automatyzacja utrzymania jakości w środowisku PHP
Automatyzacja utrzymania jakości w środowisku PHPAutomatyzacja utrzymania jakości w środowisku PHP
Automatyzacja utrzymania jakości w środowisku PHP
 
Laravel Collection - tablice na sterydach
Laravel Collection - tablice na sterydachLaravel Collection - tablice na sterydach
Laravel Collection - tablice na sterydach
 

Wstęp do Gitlab CI/CD w aplikacjach napisanych w Laravel