Szukaj…


Uwagi

Jenkins jest narzędziem ciągłej integracji open source napisanym w Javie. Projekt został rozwidlony przez Hudsona po sporze z Oracle .

Jenkins zapewnia usługi ciągłej integracji w zakresie opracowywania oprogramowania. Jest to system serwerowy działający w kontenerze serwletu, takim jak Apache Tomcat. Obsługuje narzędzia SCM, w tym AccuRev, CVS, Subversion, Git, Mercurial, Perforce, Clearcase i RTC, i może realizować projekty oparte na Apache Ant i Apache Maven, a także dowolne skrypty powłoki i polecenia wsadowe systemu Windows. Głównym twórcą Jenkins jest Kohsuke Kawaguchi . Wydane na licencji MIT, Jenkins jest wolnym oprogramowaniem.

Kompilacje mogą być uruchamiane na różne sposoby, w tym uruchamiane przez zatwierdzenie w systemie kontroli wersji, poprzez planowanie za pomocą mechanizmu podobnego do crona, budowanie po zakończeniu innych kompilacji oraz żądanie adresu URL konkretnej kompilacji.

Wersje

Jenkins

Wersja Data wydania
1,656 2016-04-03
2.0 2016-04-20

Jenkins 1.x vs Jenkins 2.x

Jenkins jest (i nadal jest) systemem ciągłej integracji (CI), który umożliwia automatyzację procesu tworzenia oprogramowania, na przykład budowanie kodu na wyzwalaczach SCM. Jednak rosnące zapotrzebowanie na ciągłą dostawę (CD) wymagało, aby Jenkins ewoluował od czystego systemu CI do mieszanki CI i CD. Wzrasta również potrzeba cofnięcia uprzemysłowienia ofert pracy Jenkins, a klasyczne oferty pracy Jenkins 1.x Freestyle/Maven jobs zaczęły być zbyt ograniczone w stosunku do niektórych potrzeb.

Pod Jenkins 1.xa pojawiła się wtyczka zwana workflow-plugin która pozwala programistom pisać kod opisujący zadania. Jenkins 2 idzie dalej, dodając wbudowaną obsługę Pipeline as Code . Główną zaletą jest to, że potoki, będące plikami skryptów Groovy, mogą być bardziej złożone niż zadania freestyle skonfigurowane w interfejsie użytkownika i mogą być kontrolowane pod kątem wersji. Jenkins 2 dodaje także nowy interfejs, który ułatwia wizualizację różnych „etapów” zdefiniowanych w potoku i śledzenie postępów całego potoku, takich jak poniżej:

wprowadź opis zdjęcia tutaj

Aby uzyskać pełny przegląd tego, co Jenkins 2 dodaje do Jenkins, zobacz Jenkins 2 Overview .

Ponadto pełny dziennik zmian jest dostępny na stronie Jenkins.

Instalacja

Dla systemów opartych na apt-get, takich jak Ubuntu

Dodaj repozytorium Jenkins:

wget -q -O - https://jenkins-ci.org/debian/ Jenkins-ci.org.key | sudo apt-key

sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'

Zaktualizuj źródła i zainstaluj Jenkins:

sudo apt-get update

sudo apt-get install jenkins

Użytkownik Jenkins został utworzony i domyślnie Jenkins będzie działał na porcie 8080.

Dla dystrybucji opartych na RPM, takich jak Red Hat Enterprise Linux (RHEL), CentOS, Fedora lub Scientific Linux

Aby pobrać plik repozytorium dla wersji stabilnej:

sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo

Lub jeśli chcesz najnowsze cotygodniowe wydania:

sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo

Zaimportuj klucz publiczny:

sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key

Zainstaluj Jenkins za pomocą yum:

sudo yum install jenkins

Jenkins wymaga java do uruchomienia, aby go zainstalować:

sudo yum install java

Aby uruchomić / zatrzymać / zrestartować jenkins użyj:

sudo service jenkins start/stop/restart

Aktualizacja jenkins (instalacje RPM)

  1. Kopia zapasowa katalogu domowego jenkins
  2. Zastąp jenkins.war w następującej lokalizacji nowym plikiem WAR. / usr / lib / jenkins / jenkins.war`
  3. Uruchom ponownie Jenkins
  4. Sprawdź przypięte wtyczki i odpnij w razie potrzeby
  5. Załaduj ponownie konfigurację z dysku

Uwaga: W przypadku aktualizacji Jenkins 2 dla dołączonego serwera aplikacji jetty wyłącz port AJP (ustaw JENKINS_AJP_PORT="-1" ) w /etc/sysconfig/jenkins .

Konfigurowanie serwera proxy Nginx

Natywnie Jenkins działa na porcie 8080. Możemy ustanowić serwer proxy z portu 80 -> 8080, aby uzyskać dostęp do Jenkins poprzez:

http://<url>.com

zamiast domyślnego

http://<url>.com:8080

Zacznij od instalacji Nginx.

sudo aptitude -y install nginx

Usuń domyślne ustawienia Nginx

cd /etc/nginx/sites-available

sudo rm default ../sites-enabled/default

Utwórz nowy plik konfiguracyjny

sudo touch jenkins

Skopiuj poniższy kod do nowo utworzonego pliku jenkins .

upstream app_server {
  server 127.0.0.1:8080 fail_timeout=0;
}

server {
  listen 80;
  listen [::]:80 default ipv6only=on;
  server_name ;

  location / {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_redirect off;

    if (!-f $request_filename) {
        proxy_pass http://app_server;
        break;
    }
  }
}

Utwórz symboliczne łącze między witrynami dostępnymi i włączonymi witrynami:

sudo ln -s /etc/nginx/sites-available/jenkins /etc/nginx/sites-enabled/

Uruchom ponownie usługę proxy Nginx

sudo service nginx restart

Jenkins będzie teraz dostępny z portu 80.

Instalowanie wtyczki ze źródła zewnętrznego

java -jar [Path to client JAR] -s [Server address] install-plugin [Plugin ID]

Klient JAR musi być plikiem JAR CLI, a nie tym samym plikiem JAR / WAR, w którym działa sam Jenkins. Unikalne identyfikatory można znaleźć na odpowiedniej stronie wtyczek na wiki Jenkins CLI ( https://wiki.jenkins-ci.org/display/JENKINS/Plugins)

Przenieś Jenkinsa z jednego komputera na drugi

Pomogło mi to przejść z Ubuntu 12.04 (Jenkins wer. 1.628) do Ubuntu 16.04 (Jenkins wer. 1.651.2). Najpierw zainstalowałem Jenkinsa z repozytoriów .

  1. Zatrzymaj oba serwery Jenkins

  2. Skopiuj JENKINS_HOME (np. / JENKINS_HOME / lib / jenkins) ze starego serwera na nowy. Z konsoli na nowym serwerze:

    rsync -av username@old-server-IP:/var/lib/jenkins/ /var/lib/jenkins/

  3. Uruchom nowy serwer Jenkins

Możesz tego nie potrzebować, ale musiałem

  • Manage Jenkins i Reload Configuration from Disk .
  • Odłącz i podłącz ponownie wszystkich niewolników.
  • Sprawdź, czy w Configure System > Jenkins Location Jenkins URL jest poprawnie przypisany do nowego serwera Jenkins.

Skonfiguruj projekt w Jenkins

Tutaj sprawdzimy najnowszą kopię kodu naszego projektu, uruchomimy testy i uruchomimy aplikację. Aby to osiągnąć, wykonaj następujące kroki:

  1. Otwórz Jenkins w przeglądarce.
  2. Kliknij link Nowa praca .
  3. Wprowadź nazwę projektu i wybierz łącze Utwórz darmowy projekt oprogramowania .
  4. Kliknij przycisk OK .
  5. W sekcji Zarządzanie kodem źródłowym zaznacz pole wyboru obok narzędzia do zarządzania kodem źródłowym. W moim przypadku wybrałem Git .

Podaj adres URL repozytorium git://github.com/example/example.git takiego jak git://github.com/example/example.git

  1. W obszarze Wyzwalacze kompilacji zaznacz pole wyboru obok opcji Ankieta SCM .
  2. Podaj ***** w polu Harmonogram . To pole jest odpowiedzialne za uruchamianie kompilacji w regularnych odstępach czasu. ***** określa, że zadanie będzie uruchamiane co minutę w przypadku zmian w repozytorium git.
  3. W sekcji Kompilacja kliknij przycisk Dodaj krok kompilacji , a następnie wybierz opcję, za pomocą której chcesz zbudować projekt. Wybrałem opcję Wykonaj powłokę . W polu poleceń wpisz polecenie budowania, uruchom testy i wdróż je w prod.
  4. Przewiń w dół i zapisz .

Powyżej skonfigurowaliśmy podstawowy projekt w Jenkins, który co minutę uruchamia kompilację w celu zmiany w twoim repozytorium git. Uwaga: Aby skonfigurować skomplikowany projekt, może być konieczne zainstalowanie niektórych wtyczek w Jenkins.

Jenkins pełne wprowadzenie w jednym miejscu

1. Jenkins:

Jenkins jest narzędziem ciągłej integracji open source napisanym w Javie. Projekt został rozwidlony przez Hudsona po sporze z Oracle.

Krótko mówiąc, Jenkins jest wiodącym serwerem automatyzacji typu open source. Zbudowany w Javie, zapewnia setki wtyczek do obsługi budowania, testowania, wdrażania i automatyzacji dla praktycznie każdego projektu.

Funkcje: Jenkins oferuje następujące główne funkcje po wyjęciu z pudełka, a wiele wtyczek można dodać za pomocą wtyczek:

Łatwa instalacja: wystarczy uruchomić java -jar jenkins.war, wdrożyć go w kontenerze serwletu. Bez dodatkowej instalacji, bez bazy danych. Wolisz instalator czy pakiet natywny? My też je mamy. Łatwa konfiguracja: Jenkins można skonfigurować w całości z przyjaznego internetowego interfejsu GUI z rozbudowanymi kontrolami błędów w locie i bezpośrednią pomocą. Bogaty ekosystem wtyczek: Jenkins integruje się z praktycznie każdym istniejącym narzędziem SCM lub narzędziem do budowania. Zobacz wtyczki. Rozszerzalność: Większość części Jenkins można rozszerzać i modyfikować, a tworzenie nowych wtyczek Jenkins jest łatwe. Pozwala to dostosować Jenkins do własnych potrzeb. Rozproszone kompilacje: Jenkins może dystrybuować obciążenia kompilacji / testowania na wiele komputerów z różnymi systemami operacyjnymi. Budujesz oprogramowanie dla OS X, Linux i Windows? Nie ma problemu.

Instalacja:

$ wget -q -O - https://jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -

$ sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list'
$ sudo apt-get update
$ sudo apt-get install jenkins
to do more refer link :

Ref: https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins+on+Ubuntu

Patrz: http://www.vogella.com/tutorials/Jenkins/article.html

Ref: https://wiki.jenkins-ci.org/display/JENKINS/Meet+Jenkins

Katalog JENKINS_HOME Jenkins potrzebuje trochę miejsca na dysku do wykonywania kompilacji i przechowywania archiwów. Możesz sprawdzić tę lokalizację na ekranie konfiguracji Jenkins. Domyślnie jest to ustawione na ~ / .jenkins, ale możesz to zmienić na jeden z następujących sposobów: Ustaw zmienną środowiskową „JENKINS_HOME” w nowym katalogu osobistym przed uruchomieniem kontenera serwletu. Ustaw właściwość systemową „JENKINS_HOME” na kontener serwletu. Ustaw pozycję środowiska JNDI „JENKINS_HOME” w nowym katalogu. Zobacz kolekcję dokumentacji specyficznej dla kontenera, aby dowiedzieć się, jak to zrobić dla swojego kontenera. Możesz zmienić tę lokalizację także po pewnym czasie korzystania z Jenkinsa. Aby to zrobić, całkowicie zatrzymaj Jenkinsa, przenieś zawartość ze starego JENKINS_HOME do nowego domu, ustaw nowy JENKINS_HOME i uruchom ponownie Jenkins. JENKINS_HOME ma dość oczywistą strukturę katalogów, która wygląda następująco:

JENKINS_HOME

+- config.xml     (jenkins root configuration)
 +- *.xml          (other site-wide configuration files)
 +- userContent    (files in this directory will be served under your http://server/userContent/)
 +- fingerprints   (stores fingerprint records)
 +- plugins        (stores plugins)
 +- workspace (working directory for the version control system)
     +- [JOBNAME] (sub directory for each job)
 +- jobs
     +- [JOBNAME]      (sub directory for each job)
         +- config.xml     (job configuration file)
         +- latest         (symbolic link to the last successful build)
         +- builds
             +- [BUILD_ID]     (for each build)
                 +- build.xml      (build result summary)
                 +- log            (log file)
                 +- changelog.xml  (change log)

Jenkins Build Jobs:

Tworzenie nowej pracy kompilacji w Jenkins jest proste: wystarczy kliknąć pozycję menu „Nowa praca” na pulpicie nawigacyjnym Jenkins. Jenkins obsługuje kilka różnych rodzajów zadań kompilacji, które są przedstawiane, gdy zdecydujesz się utworzyć nowe zadanie

Projekt oprogramowania Freestyle

Zadania kompilacji Freestyle są kompilacjami ogólnego przeznaczenia, co zapewnia maksymalną elastyczność.

Projekt Maven „Projekt maven2 / 3” to zadanie kompilacji specjalnie dostosowane do projektów Maven. Jenkins rozumie pliki pom i struktury projektu Maven i może wykorzystać informacje zebrane z pliku pom, aby zredukować pracę potrzebną do skonfigurowania projektu.

Przepływ pracy

Organizuje długotrwałe działania, które mogą obejmować wiele niewolników budujących. Nadaje się do budowania rurociągów i / lub organizowania złożonych działań, które nie mieszczą się łatwo w typie pracy w wolnym stylu.

Monitorowanie zadania zewnętrznego Zadanie kompilacji „Monitorowanie zadania zewnętrznego” pozwala monitorować procesy nieinteraktywne, takie jak zadania cron.

Zadanie multikonfiguracji „Projekt multikonfiguracji” (zwany również „projektem macierzowym”) umożliwia uruchomienie tego samego zadania kompilacji w wielu różnych konfiguracjach. Ta potężna funkcja może być przydatna do testowania aplikacji w wielu różnych środowiskach, z różnymi bazami danych, a nawet na różnych komputerach.

1. Budowanie projektu oprogramowania (dowolny styl)

Jenkins może być używany do wykonywania typowej pracy serwera kompilacji, takiej jak ciągłe / oficjalne / nocne kompilacje, uruchamianie testów lub wykonywanie powtarzalnych zadań wsadowych. W Jenkins nazywa się to „projektem wolnego oprogramowania”. Konfigurowanie projektu Przejdź do strony głównej Jenkins, wybierz „Nowa praca”, a następnie „Zbuduj projekt w dowolnym stylu”. Ten typ zadania składa się z następujących elementów: opcjonalnego SCM, takiego jak CVS lub Subversion, w którym znajduje się kod źródłowy. opcjonalne wyzwalacze kontrolujące, kiedy Jenkins wykona kompilacje. jakiś rodzaj skryptu kompilacji, który wykonuje kompilację (mrówka, maven, skrypt powłoki, plik wsadowy itp.), w którym odbywa się prawdziwa praca, opcjonalne kroki w celu zebrania informacji z kompilacji, takie jak archiwizacja artefaktów i / lub nagrywanie javadoc i testowanie wyniki. opcjonalne kroki, aby powiadomić inne osoby / systemy o wyniku kompilacji, takie jak wysyłanie wiadomości e-mail, wiadomości błyskawicznych, aktualizowanie narzędzia do śledzenia problemów itp.

Kompilacje dla projektów nie będących źródłami kontroli Czasami istnieje potrzeba zbudowania projektu wyłącznie w celach demonstracyjnych lub dostęp do repozytorium SVN / CVS jest niedostępny. Wybierając konfigurację projektu jako „Brak” w „Zarządzaniu kodem źródłowym” będziesz musiał:

  1. Zbuduj projekt co najmniej raz (zakończy się niepowodzeniem), ale Jenkins utworzy strukturę jenkins / workspace / PROJECTNAME /
  2. Skopiuj pliki projektu do jenkins / workspace / PROJECTNAME /
  3. Zbuduj ponownie i odpowiednio skonfiguruj

Jenkins ustawia zmienne środowiskowe

Podczas wykonywania zadania Jenkins ustawia niektóre zmienne środowiskowe, których można użyć w skrypcie powłoki, poleceniu wsadowym, skrypcie Ant lub Maven POM. Zobacz listę zmiennych, klikając ENVIRONMENT_VARIABLE

Konfigurowanie automatycznych kompilacji

Kompilacje w Jenkins można uruchamiać okresowo (zgodnie z harmonogramem, określonym w konfiguracji) lub po wykryciu zmian źródłowych w projekcie lub można je automatycznie uruchomić, żądając adresu URL:

http: // YOURHOST / jenkins / job / PROJECTNAME / build

Pozwala to na podłączenie kompilacji Jenkins do różnych konfiguracji. Aby uzyskać więcej informacji (w szczególności robienie tego z włączonymi zabezpieczeniami), zobacz Interfejs API dostępu zdalnego.

Kompilacje według zmian źródła

Możesz poprosić Jenkinsa o sprawdzenie zmian w systemie kontroli wersji. Możesz określić, jak często Jenkins sonduje twój system kontroli wersji, używając tej samej składni, co crontab w systemach Unix / Linux. Jeśli jednak okres odpytywania jest krótszy niż potrzeba na sondowanie systemu kontroli wersji, możesz skończyć z wieloma kompilacjami dla każdej zmiany. Powinieneś albo dostosować okres odpytywania, aby był dłuższy niż czas potrzebny do sondowania systemu kontroli wersji, lub użyć wyzwalacza po zatwierdzeniu. Możesz sprawdzić dziennik odpytywania dla każdej kompilacji, aby zobaczyć, ile czasu zajęło sondowanie systemu.

Alternatywnie, zamiast odpytywania w ustalonych odstępach czasu, możesz użyć wyzwalacza URL (opisanego powyżej), ale z opcją / polling zamiast / build na końcu adresu URL. To sprawia, że Jenkins odpytuje SCM w poszukiwaniu zmian zamiast budować natychmiast. Zapobiega to uruchomieniu kompilacji przez Jenkinsa bez istotnych zmian zatwierdzeń wpływających na moduły lub gałęzie niezwiązane z zadaniem. Podczas używania / odpytywania zadanie musi być skonfigurowane do odpytywania, ale harmonogram może być pusty.

Buduje przez e-mail (sendmail)

Jeśli masz konto root swojego systemu i korzystasz z sendmaila, najłatwiej jest ulepszyć / etc / aliases i dodać następujący wpis: jenkins-foo: "| / bin / wget -o / dev / null

http: // YOURHOST / jenkins / job / PROJECTNAME / build

a następnie uruchom polecenie „newaliases”, aby powiadomić sendmaila o zmianie. Za każdym razem, gdy ktoś wyśle wiadomość e-mail do „jenkins-foo @ yoursystem”, uruchomi to nową kompilację. Zobacz to, aby uzyskać więcej informacji na temat konfigurowania sendmaila. Buduje przez e-mail (qmail) Za pomocą qmaila możesz napisać /var/qmail/alias/.qmail-jenkins w następujący sposób: | / bin / wget -o / dev / null http: // YOURHOST / jenkins / job / PROJECTNAME / build

2. Budowanie projektu Maven

Jenkins zapewnia typ pracy dedykowany Maven 2/3. Ten typ pracy głęboko integruje Jenkinsa z Maven 2/3 i zapewnia następujące korzyści w porównaniu z bardziej ogólnym projektem wolnego oprogramowania.

Jenkins analizuje POM Maven, aby uzyskać wiele informacji potrzebnych do wykonania swojej pracy. W rezultacie ilość konfiguracji jest drastycznie zmniejszona.

Jenkins słucha egzekucji Mavena i zastanawia się, co należy zrobić samemu. Na przykład automatycznie zapisuje raport JUnit, gdy Maven uruchomi fazę testową. Lub jeśli uruchomisz cel javadoc, Jenkins automatycznie zarejestruje javadoc.

Jenkins automatycznie tworzy zależności między projektami, które deklarują między sobą zależności SNAPSHOT. Patrz poniżej. Dlatego przede wszystkim musisz tylko skonfigurować informacje SCM i jakie cele chcesz uruchomić, a Jenkins wymyśli wszystko inne.

Ten typ projektu może automatycznie zapewniać następujące funkcje:

Archiwizuj artefakty wytworzone przez kompilację

Opublikuj wyniki testu

Wyzwalaj zadania dla projektów, które są zależnymi niżej

Wdróż swoje artefakty w repozytorium Maven

Wyniki testu na przebicie według modułu

Opcjonalnie odbuduj tylko zmienione moduły, przyspieszając kompilacje

Automatyczne tworzenie łańcuchów kompilacji na podstawie zależności modułów

Jenkins odczytuje zależności Twojego projektu z POM, a jeśli są one również zbudowane na Jenkins, wyzwalacze są skonfigurowane w taki sposób, że nowa kompilacja w jednej z tych zależności automatycznie rozpocznie nową kompilację twojego projektu. Jenkins rozumie wszystkie rodzaje zależności w POM. Mianowicie, rodzic POM

<dependencies> section of your project
<plugins> section of your project
<extensions> section of your project
<reporting> section of your project

Ten proces bierze pod uwagę wersje, dzięki czemu możesz mieć wiele wersji / gałęzi projektu na tym samym Jenkinsie i poprawnie określa zależności. Zauważ, że zakresy wersji zależności nie są obsługiwane, patrz [ https://issues.jenkins-ci.org/browse/JENKINS-2787][1] z tego powodu.

Tę funkcję można wyłączyć na żądanie - patrz opcja konfiguracji Kompiluj za każdym razem, gdy budowana jest zależność SNAPSHOT

Instalacja:

1. przejdź do Zarządzaj Jenkins >> skonfiguruj System

  1. w zakładce maven „Kliknij na instalację maven ......

Możesz albo zmusić Jenkinsa do zainstalowania określonej wersji Maven automatycznie, albo podać ścieżkę do lokalnej instalacji Maven (Możesz skonfigurować tyle wersji Maven dla twoich projektów kompilacji, ile chcesz i używać różnych wersji Maven dla różnych projektów. Jeśli zaznaczysz pole wyboru Zainstaluj automatycznie, Jenkins pobierze i zainstaluje dla Ciebie żądaną wersję Maven i zainstaluje ją w katalogu narzędzi w katalogu głównym Jenkins.

Jak tego użyć

Najpierw musisz skonfigurować instalację Maven (ten krok można pominąć, jeśli używasz DEV @ cloud). Można to zrobić, przechodząc do ekranu konfiguracji systemu (Zarządzaj Jenkins-> Konfiguruj system). W sekcji „Instalacje Maven”: 1) kliknij przycisk Dodaj, 2) nadaj mu nazwę, np. „Maven 3.0.3”, a następnie 3) wybierz wersję z menu rozwijanego.

Teraz Jenkins automatycznie zainstaluje tę wersję za każdym razem, gdy będzie potrzebna (na przykład na nowych komputerach z kompilacją), pobierając ją z Apache i rozpakowując.

Utwórz nową pracę Maven:

  1. Kliknięcie „Nowa praca / Nowy przedmiot” po lewej stronie
  2. Daj temu imię
  3. Wybierz „Zbuduj projekt Maven 2/3”
  4. Zapisz swoją pracę

Teraz musisz skonfigurować swoje zadanie

  1. Wybierz SCM, którego chcesz użyć (np. Używając git)

  2. wybierz cel maven, do którego chcesz zadzwonić

  3. dodaj adres URL repozytorium i dane uwierzytelniające.

  4. sprawdź repozytorium prywatnego użytkownika maven:

Możesz również zdefiniować ścieżkę klienta dla tego samego.

5 Zbuduj projekt

Zbuduj swój projekt, klikając buduj teraz i klikając pasek postępu w lewej części „Build Executor Status”, aby zobaczyć, jak Jenkins instaluje Maven, sprawdź projekt i zbuduj go za pomocą maven.

Logowanie:

https://wiki.jenkins-ci.org/display/JENKINS/Logging

Konsola skryptu:

Przydatny do rozwiązywania problemów, diagnostyki lub aktualizacji partii zadań Jenkins zapewnia konsolę skryptową, która zapewnia dostęp do wszystkich elementów wewnętrznych Jenkins. Te skrypty są napisane w Groovy, a niektóre z nich znajdziesz na tej stronie .

Skonfiguruj prosty projekt kompilacji za pomocą skryptu potokowego Jenkins 2

Tutaj będziemy tworzyć potok Groovy w Jenkins 2, aby wykonać następujące kroki:

  • Sprawdzaj co 5 minut, czy nowy kod został zatwierdzony do naszego projektu
  • Kod kasy z repozytorium SCM
  • Kompilacja Maven naszego kodu Java
  • Przeprowadź nasze testy integracyjne i opublikuj wyniki

Oto kroki, które wykonamy:

  1. Upewnij się, że mamy przynajmniej wersję Jenkinsa 2.0 (możesz to sprawdzić w prawym dolnym rogu strony), na przykład:

    Przykład przechwytywania wersji Jenkinsa

  2. Na stronie głównej Jenkins kliknij opcję Nowy element

  3. Wprowadź nazwę projektu i wybierz Rurociąg

  4. W sekcji Wyzwalacze kompilacji wybierz opcję Ankiety SCM i dodaj następujący 5-minutowy harmonogram CRON: */5 * * * *

  5. W sekcji Rurociąg wybierz Skrypt rurociągu lub Skrypt rurociągu z SCM

  6. Jeśli w poprzednim kroku wybrałeś skrypt potoku z SCM , musisz teraz podać adres URL repozytorium SCM (Git, Mercurial, Subversion) w adresie URL repozytorium, takim jak http://github.com/example/example.git . Musisz także określić ścieżkę skryptu pliku skryptu Groovy w repozytorium przyklad.git, np. pipelines/example.groovy

  7. Skopiuj następujący kod Groovy, albo bezpośrednio w oknie skryptu Groovy, jeśli wcześniej klikałeś Pipeline Script, lub w example.groovy jeśli wybrałeś Pipeline Script z SCM

node('remote') {
    // Note : this step is only needed if you're using direct Groovy scripting
    stage 'Checkout Git project'
    git url: 'https://github.com/jglick/simple-maven-project-with-tests.git'
    def appVersion = version()
    if (appVersion) {
        echo "Building version ${appVersion}"
    }

    stage 'Build Maven project'
    def mvnHome = tool 'M3'
    sh "${mvnHome}/bin/mvn -B -Dmaven.test.failure.ignore verify"
    step([$class: 'JUnitResultArchiver', testResults: '**/target/surefire-reports/TEST-*.xml'])
}
def version() {
    def matcher = readFile('pom.xml') =~ '<version>(.+)</version>'
    matcher ? matcher[0][1] : null
}

Proszę, powinieneś być w stanie skompilować i przetestować swój pierwszy projekt Jenkins przy użyciu potoku Jenkins 2 Groovy.



Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow