Kopiowanie zabronione - kliknij tutaj i uzyskaj dostęp do GitHuba!

Continuous Integration w oparciu o Jenkins – cześć 2


Zanim zaczniesz czytać ten wpis gorąco zachęcam Cię do zapoznania się z artykułem https://javaleader.pl/2019/07/29/continuous-integration-w-oparciu-o-jenkins-czesc-1 gdzie znajdziesz wstęp do pojęcia ciągłej integracji oraz zobaczysz jak konfigurować Jenkinsa dla lokalnego repozytorium (na dysku swojego komputera). Tutaj ważna uwaga – w konfiguracji GitHuba potrzebujemy dodać adres Jenkinsa który zainstalowany jest na publicznym adresie IP. Jeśli Jenkins zainstalowany jest na localhost można użyć rozwiązań tunelowych np. ngrok.com. W artykule Jenkins wystawiony będzie na serwerze VPS. Graficznie temat przedstawia się następująco:

Znalezione obrazy dla zapytania jenkins integrations

[źródło] https://www.guru99.com/jenkin-continuous-integration.html

Z poziomu GitHuba należy w ustawieniach skonfigurować tzw. Webhooks, jest to publiczny adres Jenkinsa z dodaną ścieżką /github-webhook/. W ustawieniach dodatkowo wybieramy zdarzenia jakie mają powodować wywołanie metody POST na tym adresie – na GitHubie znajdziemy taki oto zapis “We’ll send a POST request to the URL below“.

Z poziomu samego Jenkinsa wystarczy dodać w ustawieniach repozytorium kodu dla danego projektu adres do swojego GitHuba:

Dla przykładu dodany zadanie budowania to uruchomienie powłoki shella i wykonanie instrukcji wypisującej na ekran przykładowy tekst “test build”:

Zadanie zostanie automatycznie wykonane:

Wynik to:

Aby podejrzeć ostatnie zmiany dokonywane na repozytorium czyli GitHub Hook Log należy przejść pod adres http://jenkins_address/job/JavaLeader.pl/GitHubPollLog/ lub z poziomu terminala ./jenkins_address/job/JavaLeader.pl/GitHubPollLog/


Leave a comment

Your email address will not be published.


*