Mimo rosnącej konkurencji Jenkins pozostaje jednym z najpopularniejszych serwerów ciągłej integracji. Został on stworzony podczas niesławnego podziału społeczności Hudson, który nastąpił po tym, jak gigant oprogramowania Oracle przejął kontrolę nad otwartym Hudsonem w ruchu, który zaognił społeczność programistów i rozpalił internet gorącą debatą.

Dobrą wiadomością dla deweloperów wszędzie, którzy wierzą w znaczenie utrzymywania oprogramowania open-sourcowego z rąk wielkich korporacji jest to, że w późniejszej bitwie Hudson vs. Jenkins, to Jenkins był zwycięski.

Częścią powodu za tym była sama liczba wspaniałych wtyczek Jenkinsa, które zostały opracowane przez społeczność Jenkinsa. W chwili obecnej Jenkins posiada ponad 1500 wtyczek, które pomagają programistom zautomatyzować duże części rozwoju projektu. Wtyczki te mogą pomóc w realizacji zadań począwszy od pomocy w ciągłym dostarczaniu, przesyłaniu plików z jednego projektu do drugiego, wyświetlaniu projektów Jenkinsa w JIRA, i tak dalej, i tak dalej.

Ponieważ każda z tych wtyczek rozwiązuje inne problemy, wybór najlepszych wtyczek Jenkinsa nie jest łatwym zadaniem. Więc zamiast wzbudzać kontrowersje, w tym artykule, mam na celu wyszczególnienie niektórych z najbardziej przydatnych wtyczek, które pomagają programistom zaoszczędzić czas, jak również ułatwiają im życie.

Aby poszerzyć atrakcyjność tego artykułu, wybrałem mieszankę wtyczek, z których niektóre przypadną do gustu indywidualnym programistom, a inne będą przydatne dla dużych zespołów dev.

  1. Job DSL

Problemem, którego doświadczyło wielu programistów korzystających z Jenkinsa do pracy nad wieloma zadaniami, jest konieczność wielokrotnego konfigurowania każdego nowego zadania, które uruchamiają. Jest to nie tylko bardzo czasochłonne (biorąc pod uwagę, że wielu pełnoetatowych programistów pracuje nad 100 zadaniami rocznie), ale również może sprawić, że ich praca będzie monotonna.

Wtyczka Jenkins Job DSL pozwala programistom używać Groovy do definiowania zadań i konfigurowania dla nich wspólnego zestawu elementów. Wtyczka następnie utrzymuje te skrypty i aktualizuje informacje o zadaniach automatycznie. Pozwala to programistom na tworzenie standardowych szablonów przy użyciu języka Domain Specific Language (DSL), co sprawia, że tworzenie nowych projektów jest bardzo proste.

2. Job Generator Plugin
Dla kierowników projektów i zespołów dev, które są zaangażowane w rozwój projektów na dużą skalę, śledzenie postępu prac może być w najlepszym przypadku koszmarem. Wtyczka Jenkins Job Generator pozwala kierownikom projektów odpowiedzialnym za konkretny potok Jenkinsa upoważnić deweloperów z ich zespołu do tworzenia nowych szablonów zadań, które mogą być następnie wykorzystane do rozpoczęcia nowych projektów/gałęzi rozwoju.

Choć możliwe jest zrobienie tego ręcznie, po raz kolejny zadanie to może być bardzo czasochłonne, szczególnie jeśli twój projekt ma wiele potoków. Zaletą wtyczki Job Generator w stosunku do powyższej wtyczki Job DSL jest to, że nie wymaga ona od programistów znajomości Groovy.

3. Performance Plugin

Jest to naprawdę fajne narzędzie dla programistów do zabawy. Pozwala programistom przechwytywać raporty z całej gamy narzędzi testujących, które obejmują JUnit, JMeter, Twitter’s Lago i Taurus. Możesz przeglądać informacje dotyczące wydajności Twojego projektu w Jenkinsie za pomocą wykresów i diagramów. Jest to świetny przykład najlepszej wtyczki do wykresów Jenkinsa.

4. GitHub/GitLab Pull Request Builder

Ta bardzo popularna wtyczka Git dla Jenkinsa pozwala programistom łatwo zautomatyzować przegląd kodu. Po zainicjowaniu żądania pociągnięcia, wtyczka pobierze źródło i wyniki kompilacji, dzięki czemu programiści mogą szybko sprawdzić, czy ich kod jest poprawny.

Ta świetna wtyczka pozwala również programistom na zainicjowanie automatycznego scalania pod warunkiem, że kod przejdzie przegląd.

5. JIRA Plugin

Wydana w grudniu 2016 roku, wtyczka JIRA całkiem sporo robi to, co mówi na blasze. Pozwala programistom zintegrować JIRA z Jenkinsem. Wiele zespołów deweloperskich używa JIRA całkiem sporo, więc możliwość przeglądania Jenkinsa przez JIRA pomaga usprawnić proces rozwoju.

6. Kubernetes Plugin

Dla tych zespołów deweloperskich, które prowadzą wiele projektów w tym samym czasie, Jenkins może być czasami frustrujący, ponieważ tak naprawdę nie oferuje wielkiej skalowalności serwera. Problem ten rozwiązuje Plugin Kubernetes, który pozwala deweloperom korzystającym z Kubernetes zautomatyzować proces skalowania serwerów Jenkinsa w środowisku Kubernetes.

Dla tych deweloperów, którzy korzystają z Docker Swarm to Jenkins Self-Organizing Swarm Modules Plugin pozwoli Ci dodać skalowalność do Jenkinsa w ten sam sposób. Po zainstalowaniu, obie wersje pozwolą ci na pracę z Jenkinsem bez martwienia się o problemy ze skalowalnością.

7. Wtyczka Build Pipeline

Ciągła integracja jest świetnym sposobem na rozwijanie projektów, ale stawia również wiele wyzwań. Śledzenie wszystkich aspektów postępu prac, w tym zapewniania jakości, może być nie lada wyzwaniem, gdy mamy do czynienia ze złożonymi, wielowarstwowymi projektami.

Wtyczka Jenkins Build Pipeline pozwala kierownikom projektów na tworzenie łańcucha połączonych prac, dzięki czemu mogą oni uzyskać znacznie bardziej przejrzysty obraz wszystkich etapów potoku projektu. Wtyczka pozwala menedżerom decydować o tym, które kroki mogą być zautomatyzowane lub wymagają ręcznej interwencji. Ta wspaniała wtyczka naprawdę pozwala programistom przejąć pełną kontrolę nad ich projektami, dlatego jest używana przez tak wiele zespołów zajmujących się tworzeniem oprogramowania.

8. SCM Sync Configuration Plugin

Zagubione dane konfiguracyjne sprawiły, że niejeden kierownik projektu nie spał w nocy. Nie tylko potrzeba czasu, aby to naprawić, ale również można temu zapobiec. W ten sam sposób, że kod może być kopia zapasowa do repozytoriów, z pomocą tej poręcznej wtyczki, Jenkins pliki konfiguracyjne mogą być zbyt.

This SCM Sync Configuration Plugin pozwala na automatyczne tworzenie kopii zapasowych plików konfiguracyjnych do repozytorium SCM. Nie tylko to, ale ta wtyczka będzie również śledzić wszelkie zmiany, dając menedżerom jasny widok na wszelkie zmiany. Jest to popularne narzędzie do tworzenia kopii zapasowych Jenkinsa, które każdy programista powinien mieć w swoim zestawie narzędzi.

9. Jenkins Maven plugin

Maven jest bardzo lubiany za dostarczanie łatwego w użyciu standardowego układu budowania projektu. Pomaga to programistom zaoszczędzić czas na początku projektów, pozwalając im wskoczyć od razu na głęboką wodę i nie martwić się o ten aspekt zaznajomienia się z projektem.

Ta wtyczka pozwala Jenkinsowi monitorować kompilacje Mavena, aby umożliwić automatyczną archiwizację raportów i pomóc w równoległych lub przyrostowych kompilacjach modułów itp. Jest łatwy do skonfigurowania i nie wymaga wiele w sposobie konfiguracji Jenkinsa.

10 . Jenkins Subversion plugin

Przy ogromnej liczbie programistów wciąż używających Apache Subversion, istniało ogromne zapotrzebowanie na wtyczkę Jenkinsa, która integrowałaby te dwie rzeczy. Ta wtyczka będzie monitorować zmiany i wyzwalać nowe kompilacje, gdy jest to wymagane, a także automatycznie aktualizować obszar roboczy, aby był gotowy do rozpoczęcia nowej kompilacji.

.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.