Jak utworzyć nowe zadanie kompilacji w Jenkins Projekt Freestyle

⚡ Inteligentne podsumowanie

Jenkins Projekt Freestyle to powtarzalne zadanie kompilacji, które łączy w sobie pobieranie kodu źródłowego, kroki kompilacji i działania po kompilacji w jedno konfigurowalne zadanie, utworzone w całości za pomocą Jenkins interfejs sieciowy bez konieczności pisania kodu potokowego.

  • 🔘 Definicja: Praca w stylu dowolnym to Jenkins„typ projektu ogólnego przeznaczenia, konfigurowany za pomocą formularzy, a nie Jenkinsplik.
  • Wymagania wstępne: Bieganie Jenkins Najpierw wymagany jest kontroler, JDK na agencie kompilacji, wtyczka Git i dostępne repozytorium.
  • Dziesięć kroków: Zaloguj się, utwórz nowy element, nadaj mu nazwę, ustaw repozytorium, dodaj krok kompilacji, zapisz, skompiluj i odczytaj dane wyjściowe konsoli.
  • 🧪 Przykład rozwiązania: Projekt HelloWorld pobrany z GitHub kompiluje się za pomocą javac i działa z javą w Windows krok kompilacji wsadowej.
  • 🛠️. Mapa konfiguracji: Sześć sekcji formularza — Ogólne, Źródło Code Zarządzanie, wyzwalacze kompilacji, środowisko kompilacji, kroki kompilacji i działania po kompilacji — obejmują każdą opcję.
  • ⚙️ Ograniczenie zakresu: Zadania typu Freestyle nadają się do automatyzacji pojedynczych zadań; zadania wymagające dostarczenia wielu etapów należą do zadań w ramach kontrolowanego wersjonowania potoku.

Jak utworzyć nowe zadanie kompilacji w Jenkins Projekt Freestyle

Czym są sterowniki Jenkins Projekt Freestyle?

Jenkins Projekt Freestyle to powtarzalne zadanie kompilacji, skrypt lub potok, który zawiera kroki i działania po kompilacji. To ulepszone zadanie, które może obejmować wiele operacji. Umożliwia konfigurowanie wyzwalaczy kompilacji i zapewnia bezpieczeństwo oparte na projekcie. Jenkins Projekt. Oferuje również wtyczki ułatwiające tworzenie kroków i działań po utworzeniu.

Rodzaje działań, które możesz wykonać w Jenkins Etap kompilacji lub działania po kompilacji są dość ograniczone. W ramach programu dostępnych jest wiele standardowych wtyczek. Jenkins Projekt Freestyle pomoże Ci rozwiązać ten problem.

Poniższy diagram przedstawia pracę w stylu dowolnym wewnątrz szerszego ciągła integracja pętla, od pobrania źródła aż do działań po kompilacji, które raportują wynik.

Kroki tworzenia pracy w Jenkins Projekt Freestyle
Jak utworzyć pracę w Jenkins

Wymagania wstępne dotyczące tworzenia Jenkins Praca w stylu dowolnym

Zanim dziesięć poniższych kroków zadziała w pełni, cztery rzeczy muszą być spełnione. Brak którejkolwiek z nich jest częstym powodem, dla którego pierwsza konstrukcja freestyle'owa kończy się niepowodzeniem z czerwoną piłką, a nie niebieską.

  • Bieganie Jenkins sterownik. Jenkins domyślnie nasłuchuje na porcie 8080. Jeśli Jenkins jeszcze nie działa, postępuj zgodnie z przewodnik po instalacji pierwszy.
  • JDK na maszynie, na której uruchamiana jest kompilacja. Przykładowy układ kompiluje się Java, więc javac Musi znajdować się w ścieżce PATH kontrolera lub agenta wykonującego zadanie. Potwierdź to jednolinijkowym poleceniem. java -version wykonaj krok kompilacji przed dodaniem czegokolwiek innego.
  • Wtyczka Git. git opcja pojawia się tylko w Źródle Code Zarządzanie po zainstalowaniu wtyczki za pomocą zarządzanie Jenkins > Wtyczki.
  • Repozytorium dostępne dla każdego. Publiczny protokół HTTPS URL nie wymaga żadnych danych uwierzytelniających. Prywatne repozytorium wymaga danych uwierzytelniających przechowywanych w Jenkins po pierwsze, w przeciwnym wypadku wyewidencjonowanie nie powiedzie się już podczas pierwszej kompilacji.

Konto z Zadanie/Utwórz potrzebne jest również pozwolenie — na nowym pojedynczym użytkowniku Jenkins konto administratora już je ma.

Jak utworzyć nowe zadanie kompilacji w Jenkins

Praca w stylu freestyle jest bardzo elastyczną i łatwą w użyciu opcją. Można go używać do dowolnego rodzaju projektu; jest łatwy w konfiguracji, a wiele jego opcji pojawia się w innych zadaniach kompilacji. Poniżej znajduje się krok po kroku proces tworzenia pracy Jenkins.

Krok 1) Zaloguj się do Jenkins

Aby utworzyć Jenkins praca freestyle, zaloguj się do swojego Jenkins pulpit nawigacyjny, odwiedzając swój Jenkins ścieżka instalacji. Zwykle będzie ona hostowana na localhost http://localhost:8080 Jeśli zainstalowany Jenkins w innej ścieżce użyj odpowiedniego URL aby uzyskać dostęp do pulpitu nawigacyjnego, jak pokazano poniżej Jenkins przykład tworzenia miejsc pracy.

Jenkins deska rozdzielcza osiągnięta na Jenkins ścieżka instalacji po zalogowaniu

Krok 2) Utwórz nowy element

Kliknij "Nowa pozycja” w lewym górnym rogu pulpitu nawigacyjnego. Poniższy zrzut ekranu pokazuje, gdzie znajduje się ten link.

Nowy link do pozycji znajduje się w lewym górnym rogu Jenkins tablica rozdzielcza

Krok 3) Wprowadź szczegóły przedmiotu

Na następnym ekranie

  1. Wpisz nazwę elementu, który chcesz utworzyć. W tym demo użyjemy „Hello world”.
  2. Wybierz projekt Freestyle
  3. Kliknij OK

Pole nazwy elementu z wybranym projektem Freestyle przed kliknięciem OK

Krok 4) Wprowadź szczegóły projektu

Wprowadź szczegóły projektu, który chcesz przetestować. Poniżej znajduje się strona konfiguracji.

Szczegóły projektu wprowadzono na Jenkins strona konfiguracji zadań w stylu dowolnym

Krok 5) Wejdź do repozytorium URL

Pod źródłem Code Zarządzanie, Wprowadź swoje repozytorium URLPosiadamy repozytorium testowe zlokalizowane pod adresem https://github.com/kriru/firstJava.git

Źródło
 Code Sekcja zarządzania z repozytorium testów Git URL wpisana

Możliwe jest również skorzystanie z lokalnego repozytorium.

Jeśli Twoje repozytorium GitHub jest prywatne, Jenkins najpierw zweryfikuje Twoje dane logowania w serwisie GitHub, a dopiero potem pobierze kod źródłowy z Twojego repozytorium GitHub.

Krok 6) Dostosuj ustawienia

Teraz, gdy podałeś już wszystkie szczegóły, czas na stworzenie kodu. Dostosuj ustawienia w sekcji budować sekcję, w której możesz zbudować kod w dowolnym momencie. Możesz nawet zaplanować, aby kompilacja odbywała się okresowo, o określonych porach.

W trakcie budowy,

  1. Kliknij "Dodaj krok kompilacji"
  2. Kliknij "Wykonać Windows polecenie wsadowe” i dodaj polecenia, które chcesz wykonać podczas procesu kompilacji.

Lista rozwijana zawierająca dostępne kroki kompilacji wygląda następująco.

Dodaj rozwijaną listę kroków kompilacji otwartą na stronie konfiguracji zadania w trybie dowolnym

⚠️ Uwaga dotycząca wersji: niedawny Jenkins wydania oznaczają ten obszar Zbuduj kroki zamiast Buduji na Linuksie lub macOS agentów, opcja równoważna to Uruchom powłokę. Przycisk nadal nazywa się Dodaj krok kompilacji.

Tutaj dodałem polecenia Java, aby skompilować kod Java.

Dodałem następujące polecenia systemu Windows:

javac HelloWorld.java
java HelloWorld

Okno poleceń z wprowadzonymi dwoma wierszami pokazano poniżej.

Wykonać Windows pole poleceń wsadowych zawierające polecenia javac i java

Krok 7) Zapisz projekt

Po wprowadzeniu wszystkich danych,

  1. Kliknij Aplikuj
  2. Zapisz projekt.

Krok 8) Zbuduj kod źródłowy

Teraz na ekranie głównym kliknij przycisk Kompiluj teraz po lewej stronie, aby zbudować kod źródłowy.

Przycisk „Zbuduj teraz” po lewej stronie ekranu projektu w stylu dowolnym

Krok 9) Sprawdź status

Po kliknięciu opcji Buduj teraz możesz sprawdzić status uruchomionej kompilacji w obszarze Historia kompilacji.

Panel historii kompilacji pokazujący status uruchomionej kompilacji w stylu dowolnym

Krok 10) Zobacz dane wyjściowe konsoli

Kliknij numer kompilacji, a następnie kliknij dane wyjściowe konsoli, aby zobaczyć status uruchomionej kompilacji. Powinien pojawić się komunikat o powodzeniu, pod warunkiem, że poprawnie wykonałeś konfigurację, jak pokazano poniżej. Jenkins utwórz nowy przykład zadania.

Ekran wyjściowy konsoli pokazujący komunikat o pomyślnym zakończeniu kompilacji

Podsumowując, stworzyliśmy program HelloWorld i opublikowaliśmy go w serwisie GitHub. Jenkins pobiera kod ze zdalnego repozytorium i kompiluje go w sposób ciągły z określoną przez Ciebie częstotliwością.

Jenkins Wyjaśnienie sekcji konfiguracji projektu Freestyle

Powyższy opis dotyczy tylko pól potrzebnych w przykładzie HelloWorld. Sama strona konfiguracji jest podzielona na sześć sekcji formularza, a wiedza o tym, co zawiera każda z nich, znacznie ułatwia znalezienie pozostałych opcji.

Sekcja Co kontroluje Typowe ustawienie
Ogólne Opis zadania, odrzucanie starych kompilacji, parametry i informacja, czy zadanie jest uruchamiane na konkretnym agencie Descriptjon plus limit retencji kompilacji
Źródło Code Zarząd Które repozytorium sprawdzić, z jakimi danymi uwierzytelniającymi i oddziałem Git, protokół HTTPS URL, Oddział */master or */main
Twórz wyzwalacze Co automatycznie uruchamia kompilację Ankieta SCM, okresowe kompilacje lub webhook z GitHub
Zbuduj środowisko Obudowy nakładane na całą konstrukcję Usuń obszar roboczy przed rozpoczęciem kompilacji i dodaj znaczniki czasu do dziennika konsoli
Zbuduj kroki Polecenia wykonujące pracę działają od góry do dołu Wykonać Windows polecenie wsadowe lub wykonaj powłokę
Akcje po kompilacji Co się dzieje po zakończeniu kroków, bez względu na wynik Archisprawdź artefakty, opublikuj raport z testów, wyślij e-mail

Dwa nawyki oszczędzają sporo czasu na debugowaniu. Dodawaj kroki kompilacji w kolejności, w jakiej muszą zostać wykonane, ponieważ Jenkins Przetwarza je od góry do dołu i zatrzymuje się przy pierwszym błędzie. Następnie archiwizuje wszystko, co generuje kompilacja, jako akcję po kompilacji, ponieważ obszar roboczy jest ponownie wykorzystywany przez kolejną kompilację, a zarchiwizowane artefakty są przechowywane według numeru kompilacji.

Freestyle Project kontra Pipeline: Którego powinieneś użyć?

Freestyle to nie jedyny typ projektu na ekranie Nowy element i nie zawsze jest to właściwy typ. Poniższa tabela zestawia go z Praca przy rurociągu w kwestiach, które decydują o większości rzeczywistych wyborów.

Punkt porównania Projekt Freestyle Rurociąg
Jak to jest zdefiniowane Formularze internetowe przechowywane w zadaniu config.xml na kontrolerze A Jenkinsplik zatwierdzony z kodem aplikacji
Zmieniać historię W posiadaniu Jenkins, poza twoim repozytorium Revprzeglądane i wersjonowane jak każdy inny plik źródłowy
Etapy i praca równoległa Pojedyncza płaska lista kroków kompilacji Nazwane etapy, gałęzie równoległe i widok etapu
Krzywa uczenia się Nie potrzeba żadnych skryptów Wymaga deklaratywnej składni potoku
Najlepsze dopasowanie Jedna kompilacja, jeden skrypt, jedno zaplanowane zadanie lub nauka Jenkins Wieloetapowe przepływy kompilacji, testowania i wdrażania w różnych środowiskach

Praktyczna zasada: sięgaj po styl dowolny, gdy zadanie jest jednoetapowe i wciąż uczysz się posługiwać narzędziem, a następnie przenieś pracę do Potok CI/CD jak tylko rozwinie się w drugim etapie lub będzie wymagał przeglądu wraz z kodem. Zespoły, które łączą Jenkins z narzędziami do kompilacji często szybko osiągamy ten punkt — Maven i Selenium ustawienie jest częstym czynnikiem wyzwalającym przełączenie i to samo rozumowanie ma zastosowanie do każdego testowanie automatyzacji pakiet składający się z kilku faz.

FAQ

W wynikach konsoli podana jest przyczyna. Trzy najczęstsze to brak pliku javac w zmiennej PATH agenta, prywatne repozytorium bez zapisanych danych uwierzytelniających oraz nieprawidłowa nazwa gałęzi. Popraw zgłoszony wiersz, a następnie ponownie uruchom polecenie „Build Now”.

Otwórz wyzwalacze kompilacji i zaznacz Buduj okresowo, a następnie wprowadź składnię cron, taką jak H 2 * * * na nocny bieg. H rozkłada obciążenie na całą godzinę. Ankieta SCM używa tej samej składni, ale kompiluje się tylko wtedy, gdy repozytorium uległo zmianie.

Dodaj Uruchom powłokę z menu Dodaj krok kompilacji zamiast Wykonaj Windows polecenie wsadowe. Wyświetlana opcja zależy od systemu operacyjnego kontrolera lub agenta, z którym powiązane jest zadanie, a nie od Twojego komputera.

Przechowuj token lub klucz SSH po zarządzanie Jenkins > Poświadczenia, a następnie wybierz go z listy rozwijanej Poświadczenia w Źródle Code Sekcja zarządzania. Jenkins weryfikuje je przed wyewidencjonowaniem, więc błędne dane uwierzytelniające powodują natychmiastowy błąd kompilacji.

Narzędzia uczenia maszynowego odczytują logi konsoli i grupują powtarzające się błędy, oddzielając prawdziwy błąd kompilacji od niestabilnego agenta lub przekroczenia limitu czasu. Taka selekcja wskazuje Ci jeden wiersz, który ma znaczenie, zamiast przewijać ręcznie długi log.

Drugi pilot GitHub tworzy skrypt wsadowy lub skrypt powłoki w ramach kroku kompilacji, a jego interfejs wiersza poleceń może podsumować nieudany log konsoli. Nie można klikać w formularz konfiguracji, dlatego przed zapisaniem należy przejrzeć każde wygenerowane polecenie.

Dodaj Archizobacz artefakty jako akcję po kompilacji i nadaj jej wzór taki jak **/*.class. ArchiPliki ved są przechowywane pod numerem kompilacji, dzięki czemu przetrwają przestrzeń roboczą po ponownym użyciu lub wyczyszczeniu podczas następnego uruchomienia.

Każda praca mieszka w JENKINS_HOME/jobs/<job-name>, z ustawieniami formularza w config.xml i każdy bieg pod builds/Aby przenieść lub przywrócić zadanie, wystarczy wykonać kopię zapasową tego folderu.

Podsumuj ten post następująco: