Przy wielu narzędziach Continuous Integration dostępnych na rynku, wybór najlepszego narzędzia do projektu jest dość żmudnym zadaniem. Poniżej znajduje się lista 20 najpopularniejszych narzędzi CI z popularnymi funkcjami i linkami do pobrania.
1) Kolego
Buddy to inteligentne narzędzie CI / CD dla twórców stron internetowych, zaprojektowane w celu obniżenia progu wejścia do DevOps. Wykorzystuje potoki dostarczania do tworzenia, testowania i wdrażania oprogramowania. Rurociągi tworzą ponad 100 gotowych do użycia działań, które można dowolnie układać - tak jak buduje się dom z cegieł.
- 15-minutowa konfiguracja w przejrzystym i zrozumiałym interfejsie użytkownika / UX
- Błyskawiczne wdrożenia oparte na zestawach zmian
- Kompilacje są uruchamiane w izolowanych kontenerach z buforowanymi zależnościami
- Obsługuje wszystkie popularne języki, frameworki i menedżery zadań
- Dedykowana lista działań Docker / Kubernetes
- Integruje się z AWS, Google, DigitalOcean, Azure, Shopify, WordPress i nie tylko
- Obsługuje równoległość i konfigurację YAML
2) Jenkins:
Jenkins to narzędzie do ciągłej integracji typu open source. Został napisany przy użyciu języka programowania Java. Ułatwia testowanie w czasie rzeczywistym i raportowanie pojedynczych zmian w większej bazie kodu. To oprogramowanie pomaga programistom szybko znajdować i rozwiązywać usterki w ich bazie kodu oraz zautomatyzować testowanie ich kompilacji.
Funkcje:
- Zapewnij obsługę skalowania w poziomie do dużej liczby węzłów i równomiernego rozłożenia obciążenia między nimi
- Łatwa aktualizacja do wszystkich systemów operacyjnych i wersji Linux, Mac OS lub Windows
- Oferuje łatwą instalację, ponieważ Jenkins jest dostępny jako plik WAR, wszystko, czego potrzebujesz, aby umieścić go w swoim kontenerze JEE, a konfiguracja jest gotowa do uruchomienia.
- Jenkins można łatwo skonfigurować i skonfigurować za pomocą interfejsu internetowego
- Może łatwo rozdzielić pracę na kilka maszyn,
Link do pobrania: https://jenkins.io/download/
3) TeamCity:
TeamCity to serwer ciągłej integracji, który obsługuje wiele zaawansowanych funkcji.
Funkcje:
- Rozszerzalność i dostosowywanie
- Zapewnia lepszą jakość kodu dla każdego projektu
- Utrzymuje serwer CI w dobrej kondycji i stabilny, nawet jeśli nie są uruchomione żadne kompilacje
- Skonfiguruj kompilacje w DSL
- Profile chmurowe na poziomie projektu
- Kompleksowa integracja z VCS
- Raportowanie postępu kompilacji na bieżąco
- Zdalne uruchamianie i wstępnie przetestowane zatwierdzenie
Link do pobrania: https://www.jetbrains.com/teamcity/download/#section=windows
4) BiG EVAL
BiG EVAL to kompleksowy pakiet narzędzi programowych, których celem jest wykorzystanie wartości danych przedsiębiorstwa poprzez zapewnienie jakości komponentów wbudowanych w projekty rozwojowe zorientowane na dane oraz pomiar jakości danych podczas całego cyklu życia danych.
Funkcje:
- Możliwość osadzania w zautomatyzowanych procesach DataOps i DevOps.
- Quality Gates do wdrażania komponentów systemowych, a także do strumieni danych do iz magazynów danych.
- Testowanie autopilotem w celu zwinnego tworzenia analitycznych modeli danych, datamarts i hurtowni danych.
- Wysokowydajny silnik skryptów i reguł w pamięci.
- Abstrakcja dla dowolnego rodzaju danych (RDBMS, API, Flatfiles, aplikacje biznesowe w chmurze / lokalnie).
5) GoCD:
GoCD to serwer ciągłej integracji typu open source. Służy do łatwego modelowania i wizualizacji złożonych przepływów pracy. To narzędzie CI umożliwia ciągłe dostarczanie i zapewnia intuicyjny interfejs do tworzenia potoków CD.
Funkcje:
- Obsługuje wykonywanie równoległe i sekwencyjne. Zależności można łatwo skonfigurować.
- Wdrażaj dowolną wersję w dowolnym momencie
- Wizualizuj przepływ pracy od końca do końca w czasie rzeczywistym za pomocą mapy strumienia wartości.
- Bezpiecznie wdrażaj do produkcji.
- Obsługuj uwierzytelnianie i autoryzację użytkowników
- Zachowaj uporządkowaną konfigurację
- Mnóstwo wtyczek zwiększających funkcjonalność.
- Aktywna społeczność o pomoc i wsparcie.
Link do pobrania: https://www.gocd.org/download/
6) Bambus:
Bamboo to serwer kompilacji z ciągłą integracją, który wykonuje - automatyczne budowanie, testowanie i publikowanie w jednym miejscu. Bezproblemowo współpracuje z oprogramowaniem JIRA i Bitbucket. Bamboo obsługuje wiele języków i technologii, takich jak łyżki CodeDeply, Ducker, Git, SVN, Mercurial, AWS i Amazon S3.
Funkcje:
- Uruchom równoległe testy wsadowe
- Konfiguracja Bamboo jest dość prosta
- Funkcja uprawnień dla poszczególnych środowisk umożliwia programistom i kontroli jakości wdrażanie w ich środowiskach
- Może wyzwalać kompilacje na podstawie zmian wykrytych w repozytorium, powiadomień push z Bitbucket
- Dostępne w wersji hostowanej lub lokalnej
- Ułatwia współpracę w czasie rzeczywistym i jest zintegrowany z HipChat.
- Wbudowane rozgałęzianie i przepływy pracy w Git. Automatycznie łączy gałęzie.
Link do pobrania: https://www.atlassian.com/software/bamboo
7) Gitlab CI:
GitLab CI jest częścią GitLab. Jest to aplikacja internetowa z interfejsem API, która przechowuje swój stan w bazie danych. Zarządza projektami i zapewnia przyjazny interfejs użytkownika, oprócz tego, że oferuje wszystkie funkcje GitLab.
Funkcje:
- GitLab Container Registry to bezpieczny rejestr obrazów Dockera
- GitLab oferuje wygodny sposób zmiany metadanych problemu lub żądania scalenia bez dodawania poleceń ukośnika w polu komentarza
- Zapewnia interfejsy API dla większości funkcji, dzięki czemu umożliwia programistom tworzenie głębszych integracji z produktem
- Pomaga programistom wdrożyć pomysł w życie, znajdując obszary, w których można ulepszyć proces rozwoju
- Pomaga Ci to zabezpieczyć Twoje dane w kwestiach poufnych
- Wewnętrzne projekty w GitLab pozwalają na promowanie wewnętrznego pozyskiwania wewnętrznych repozytoriów.
Link do pobrania: https://about.gitlab.com/installation/
8) CircleCI:
Circle CI to elastyczne narzędzie CI, które działa w dowolnym środowisku, takim jak wieloplatformowa aplikacja mobilna, serwer Python API lub klaster Docker. To narzędzie redukuje błędy i poprawia jakość aplikacji.
Funkcje:
- Pozwala wybrać środowisko kompilacji
- Obsługuje wiele języków, takich jak Linux, w tym C ++, Javascript, NET, PHP, Python i Ruby
- Obsługa platformy Docker umożliwia skonfigurowanie dostosowanego środowiska
- Automatycznie anuluj wszystkie kompilacje w kolejce lub uruchomione, gdy zostanie wyzwolona nowsza kompilacja
- Rozdziela i równoważy testy w wielu kontenerach, aby skrócić ogólny czas kompilacji
- Zabroń osobom niebędącym administratorami modyfikowania krytycznych ustawień projektu
- Popraw ocenę sklepów na Androida i iOS, wysyłając aplikacje wolne od błędów.
- Optymalne buforowanie i równoległość dla szybkiej wydajności.
- Integracja z narzędziami VCS
Link do pobrania: https://circleci.com/
9) Kod pocztowy:
Codeship to potężne narzędzie CI, które automatyzuje proces tworzenia i wdrażania. Uruchamia zautomatyzowany przepływ pracy, upraszczając wypychanie do repozytorium.
Funkcje:
- Zapewnia pełną kontrolę nad projektem systemów CI i CD.
- Scentralizowane zarządzanie zespołem i kokpity
- Łatwy dostęp do kompilacji debugowania i protokołu SSH, które pomagają debugować bezpośrednio ze środowiska CI
- Codeship zapewnia pełną kontrolę nad dostosowywaniem i optymalizacją przepływu pracy CI i CD
- Umożliwia zaszyfrowane zewnętrzne buforowanie obrazów Dockera
- Umożliwia konfigurowanie zespołów i uprawnień dla organizacji i członków zespołu
- Występuje w dwóch wersjach 1) Basic i 2) Pro
Link do pobrania: https://codeship.com/
10) Buildbot:
Buildbot to programistyczny element CI, który automatyzuje cykl kompilacji / testowania. Jest szeroko stosowany w wielu projektach oprogramowania do sprawdzania poprawności zmian w kodzie. Zapewnia rozproszone, równoległe wykonywanie zadań na różnych platformach.
Funkcje:
- Zapewnia obsługę wielu hostów testowych o różnych architekturach.
- Zgłaszaj awarie jądra hostów
- Utrzymuje repozytorium z jednego źródła
- Zautomatyzuj kompilację
- Każde zatwierdzenie opiera się na mainline na maszynie integracyjnej
- Zautomatyzuj wdrażanie
- To jest Open Source
Link do pobrania: https://buildbot.net/
11) Uczciwość:
Integrity to serwer ciągłej integracji, który działa tylko z GitHubem. W tym narzędziu CI za każdym razem, gdy użytkownik zatwierdza kody, buduje i uruchamia kod. Generuje również raporty i przekazuje użytkownikowi powiadomienia.
Funkcje:
- To narzędzie CI działa obecnie tylko z git, ale można je łatwo dublować z innymi SCM
- To narzędzie CI obsługuje wiele mechanizmów powiadomień, takich jak AMQP, Email, HTTP, Amazon SES, Flowdock, Shell i TCP.
- Funkcja powiadomienia HTTP wysyła żądanie HTTP POST pod określony adres URL
Link do pobrania: http://integrity.github.io/
12) Strider:
Strider to narzędzie typu open source. Jest napisany w Node.JS / JavaScript. Używa MongoDB jako magazynu zapasowego. Dlatego MongoDB i Node.js są niezbędne do zainstalowania tego CI. Narzędzie oferuje obsługę różnych wtyczek, które modyfikują schemat bazy danych i rejestrują trasy HTTP.
Funkcje:
- Strider integruje się z wieloma projektami, takimi jak GitHub, BitBucket, Gitlab itp.
- Umożliwia dodawanie punktów zaczepienia w celu wykonywania dowolnych akcji kompilacji
- Twórz i testuj swoje projekty oprogramowania w sposób ciągły
- Bezproblemowo integruje się z Github
- Publikuj i subskrybuj zdarzenia dotyczące gniazd
- Twórz i modyfikuj interfejsy użytkownika Striders
- Potężne wtyczki do dostosowywania domyślnych funkcji
- Obsługuje Docker
Link do pobrania: https://github.com/Strider-CD/strider
13) Autorabit:
AutoRABIT to kompleksowy pakiet Continuous Delivery Suite, który przyspiesza proces rozwoju. Usprawnia cały proces wydawania. Pomaga organizacjom dowolnej wielkości we wdrażaniu ciągłej integracji.
Funkcje:
- Narzędzie jest specjalnie zaprojektowane do wdrażania na platformie Salesforce
- Oszczędne i szybsze wdrożenia oparte na zmianach obsługujących ponad 120 obsługiwanych typów metadanych.
- Pobierz zmiany z systemu kontroli wersji i automatycznie wdrażaj je w piaskownicy
- Automatyczne zatwierdzanie zmian w systemie kontroli wersji bezpośrednio z piaskownicy
Link do pobrania: https://www.autorabit.com/tag/autorabit-download/
14) Ostateczny konstruktor:
FinalBuilder to narzędzie do budowania firmy Vsoft. Dzięki FinalBuilder nie ma potrzeby edytowania XML ani pisania skryptów. Możesz definiować i debugować skrypty kompilacji, gdy planuje je za pomocą harmonogramu systemu Windows lub integrować z Jenkins, Continua CI itp.
Funkcje:
- Przedstawia proces budowania w logicznie ustrukturyzowanym interfejsie graficznym
- Obejmuje akcje try and catch służące do obsługi błędów zlokalizowanych
- Zapewnia ścisłą integrację z usługą planowania systemu Windows, która umożliwia planowanie kompilacji
- FinalBuilder obsługuje kilkanaście systemów kontroli wersji
- Zapewnia obsługę skryptów
- Dane wyjściowe wszystkich akcji w procesie kompilacji są kierowane do dziennika kompilacji.
Link do pobrania: https://www.finalbuilder.com/downloads/finalbuilder
15) Wercker:
Wercker to narzędzie CI, które automatyzuje tworzenie i wdrażanie kontenera. Tworzy zautomatyzowane potoki, które można wykonać za pomocą interfejsu wiersza poleceń.
Funkcje:
- W pełni zintegrowany z Github i Bitbucket
- Użyj interfejsu wiersza polecenia Wercker, aby uzyskać szybsze iteracje lokalne
- Wykonuj kompilacje jednocześnie, aby Twój zespół mógł się poruszać
- Przeprowadzaj testy równoległe, aby skrócić czas oczekiwania swojego zespołu
- Integracja z setkami narzędzi zewnętrznych
- Otrzymuj powiadomienia systemowe w produkcie i e-mailem
Link do pobrania: https://www.oracle.com/corporate/acquisitions/wercker/
16) Buildkite:
Agent buildkite to niezawodny i wieloplatformowy program do uruchamiania kompilacji. To narzędzie CI ułatwia uruchamianie automatycznych kompilacji w Twojej infrastrukturze. Służy głównie do uruchamiania zadań kompilacji, raportowania kodu stanu i dziennika wyjściowego zadania.
Funkcje:
- To narzędzie CI działa w wielu różnych systemach operacyjnych i architekturach
- Może uruchamiać kod z dowolnego systemu kontroli wersji
- Umożliwia uruchomienie dowolnej liczby agentów kompilacji na dowolnym komputerze
- Można go zintegrować z narzędziami takimi jak Slack, HipChat, Flowdock, Campfire i nie tylko
- Buildkite nigdy nie widzi kodu źródłowego ani tajnych kluczy
- Oferuje stabilną infrastrukturę
Link do pobrania: https://buildkite.com/
17) Semafor:
Semafor to narzędzie do ciągłej integracji, które umożliwia testowanie i wdrażanie kodu za naciśnięciem jednego przycisku. Obsługuje wiele języków, frameworków i może być zintegrowany z Github. Może również wykonywać automatyczne testy i wdrażanie.
Funkcje:
- Łatwy proces konfiguracji
- Umożliwia automatyczne testowanie równoległe
- Jeden z najszybszych CI dostępnych na rynku
- Z łatwością może obejmować wiele projektów o różnych rozmiarach
- Bezproblemowa integracja z GitHub i Bitbucket
Link do pobrania: https://semaphoreci.com
18) CruiseControl:
CruiseControl jest zarówno narzędziem CI, jak i rozszerzalną strukturą. Służy do tworzenia niestandardowego procesu ciągłego budowania. Ma wiele wtyczek do różnych kontroli źródła, technologii tworzenia, w tym poczty e-mail i komunikatorów internetowych.
Funkcje:
- Integracja z wieloma różnymi systemami kontroli źródła, takimi jak vss, csv, svn, git, hg, perforce, clearcase, filesystem itp.
- Pozwala na budowanie wielu projektów na jednym serwerze
- Integracja z innymi narzędziami zewnętrznymi, takimi jak NAnt, NDepend, NUnit, MSBuild, MBUnit i Visual Studio
- Zapewnij wsparcie dla zdalnego zarządzania
Link do pobrania: http://cruisecontrol.sourceforge.net/download.html
19) Bitrise:
Bitrise to platforma ciągłej integracji i dostarczania jako usługa. Oferuje mobilną ciągłą integrację i dostawę dla całego zespołu. Umożliwia integrację z wieloma popularnymi usługami, takimi jak Slack, HipChat, HockeyApp, Crashlytics itp.
Funkcje:
- Pozwala tworzyć i testować przepływy pracy w terminalu
- Otrzymujesz swoje aplikacje bez konieczności ręcznego sterowania
- Każda kompilacja działa indywidualnie na własnej maszynie wirtualnej, a wszystkie dane są usuwane na koniec kompilacji
- Wsparcie dla zewnętrznych testów beta i usług wdrożeniowych
- Wsparcie dla żądania ściągnięcia GitHub
Link do pobrania: https://github.com/bitrise-io/bitrise#install-and-setup
20) Urbancode:
IBM UrbanCode Deploy to aplikacja CI. Łączy w sobie solidną widoczność, identyfikowalność i funkcje audytu w jednym pakiecie.
Funkcje:
- Zwiększ częstotliwość dostarczania oprogramowania dzięki zautomatyzowanym, powtarzalnym procesom wdrażania
- Zmniejsz liczbę niepowodzeń wdrażania
- Usprawnij wdrażanie aplikacji wielokanałowych we wszystkich środowiskach, zarówno lokalnych, jak i w chmurze
- Bezpieczeństwo i skalowalność na poziomie przedsiębiorstwa
- Modelowanie środowiska chmury hybrydowej
- Automatyzacja typu „przeciągnij i upuść”
Link do pobrania: https://www.ibm.com/ms-en/marketplace/application-release-automation