Какво е CI?
Непрекъснатата интеграция е метод за разработване на софтуер, при който членовете на екипа могат да интегрират работата си поне веднъж на ден. При този метод всяка интеграция се проверява от автоматизирана компилация за търсене на грешката. Концепцията CI е въведена за първи път преди повече от две десетилетия, за да се избегне „адът на интеграцията“, който се случва, когато интеграцията се отложи до края на проекта.
В този урок ще научите
- Какво е CI?
- Какво е Травис CI?
- Какво е Дженкинс?
- Какво прави Травис?
- Какво направи Дженкин?
- Travis CI Характеристики:
- Характеристики на Дженкин:
- Травис срещу Дженкинс
- Индекс на популярност
- Кое е по добре?
Как работи CI?
- Разработчиците пишат код и извършват промени в споделеното хранилище
- След това CI сървърът наблюдава хранилището и оценява всички промени
- CI изгражда системата и провежда интеграция и модулни тестове
- Сървърът освобождава разполагаеми артефакти
- Сървърът за непрекъсната интеграция присвоява тагове за изграждане на версията и строителния код
- След това CI сървърът съобщава на екипа за успешното изграждане. Ако тестовете не успеят, сървърът предупреждава за събитието до екипа за разработка. Екипът ще отстрани проблемите възможно най-бързо.
КЛЮЧОВА РАЗЛИКА
- Травис CI е търговски инструмент за CI, докато Jenkins е инструмент с отворен код.
- Травис CI отнема много по-малко време, за да започне, докато Дженкинс се нуждае от сложна настройка.
- Travis CI предлага по-малко опции за персонализиране, докато Jenkins предлага широки възможности за персонализиране.
- Travis CI има YAML конфигурационен файл, докато Jenkins предоставя пълна опция за конфигуриране на потребителя.
Какво е Травис CI?
Травис CI беше първият CI като инструмент за обслужване. Той въведе нов подход за изграждане на код в облака. Този инструмент за CI позволява на потребителя да се регистрира, да свърже своето хранилище, да изгражда, както и да тества приложенията си.
Инструментът Travis CI може лесно да се интегрира с общите хранилища в облака като GitHub и Bitbucket. Той предлага много автоматизирани опции за CI, които намаляват необходимостта от специален сървър, тъй като сървърът Travis CI се хоства в облака. Това ви позволява да тествате в различни среди, на различни машини, работещи на различни операционни системи.
Travis CI е безплатен за проекти с отворен код. За търговски проекти трябва да закупите корпоративен план.
Какво е Дженкинс?
Jenkins е награждаван инструмент за непрекъсната интеграция, който наблюдава изпълнението на циклите на внедряване. Започна като страничен проект от групата на софтуерните инженери на Sun. По-късно тя беше разширена като един от популярните CI инструменти с отворен код, които помагат на екипите за разработка на софтуер да автоматизират своето внедряване.
Jenkins е инструмент, базиран на Java, което означава, че ви е необходима само Java Runtime Environment, за да го управлявате. Следователно, Jenkins може да бъде инсталиран на всяка операционна система, в която работи Java.
В този инструмент разработчиците могат също да определят условия за персонализирани компилации. Jenkins поддържа масивен архив на приставки. Това позволява на разработчиците да променят начина, по който Дженкин изглежда и работи.
Освен това наборът от плъгини на Jenkins Pipeline се предлага със специални инструменти, които позволяват на разработчиците да моделират лесни за сложни тръбопроводи за доставка, използвайки метода DSL (Digital Subscribe line).
Какво прави Травис?
Травис CI предлага следните предимства:
- Можете да наблюдавате проекти на GitHub
- Изпълнява тест и бързо генерирайте резултати. Възможно е паралелно изпълнение на теста.
- Изградете артефакти и проверете качеството на кода
- Лесно внедряване към облачни услуги
- Той може да идентифицира както малки, така и големи промени в кода.
- Разработчиците могат да използват Travis CI, за да наблюдават тестовете, когато работят.
- Инструментът се интегрира със Slack, HipChat, Email и др.
Какво прави Дженкин?
Jenkins ви позволява да автоматизирате вашите задачи за изграждане, тестване и внедряване. Инструментът осигурява поддръжка за различни операционни системи като Windows, Mac OSX и Linux системи.
Освен това Дженкинс ви дава възможност бързо да изграждате и тествате кода си, за да получите ранна обратна връзка дали е готов за производство или не. В повечето случаи Дженкин ще изисква малко модификации според персонализираните изисквания на вашия екип.
Travis CI Характеристики:
- Автоматична интеграция с GitHub
- Достъп до хранилище за изграждане на заявки за изтегляне
- Поддръжка за 21 езика като Android, C, C #, C ++, Java, JavaScript (с Node.js), Perl, PHP, Python, R, Ruby и др.
- Предварително инсталирани инструменти за изграждане и тестване
- Налични услуги - бази данни, опашки за съобщения и др.
- Внедряване в множество облачни услуги
- Шифровайте защитени променливи на околната среда или файлове
- Виртуални машини, пресъздадени след всяка компилация
- CLI клиент и API за скриптове
- Предлага се с безплатен облачен хостинг, който не изисква поддръжка или администриране.
Характеристики на Дженкин:
- Лесен за инсталиране, надграждане и конфигуриране
- Разпределени компилации
- Мониторинг на външни работни места
- Повече от 600 приставки за персонализиране на вашата среда на Jenkins
- Над 1000+ публични хранилища на Github, 500+ участници, активна ангажираща дейност
- Поддръжка на различни методи за удостоверяване, системи за контрол на версиите, уведомяване и др.
- Jenkins предоставя API за отдалечен достъп и неговите функционалности.
- Осигурете мощен инструмент за CI / CD за големи проекти
- Той поддържа различни модели работа като Freestyle, Pipeline и др.,
- Позволява на разработчиците да добавят своите разширения
- Съвместим с Docker, Libvirt, Kubernetes и много други програми
Травис срещу Дженкинс
Параметър | Дженкин | Травис |
---|---|---|
Разходи | Дженкинс е свободен. Но екипът за разработка трябва да работи и да поддържа своя специален сървър. Това може да се счита за допълнителен разход. | Корпоративните апартаменти на Travis CI започват от $ 129 на месец. Увеличение на разходите въз основа на нивото на подкрепа, от която се нуждаете. |
Време за настройка | Дженкинс се нуждае от сложна настройка. Така че ще имате много дълго време за изчакване за пълната инсталация. | Отнема много по-малко време, за да започнете. Създайте конфигурационен файл и започнете да интегрирате. |
производителност | Ако търсите CI инструмент с неограничени възможности за персонализиране, тогава Jenkins е най-добрият избор за вас. | Travis CI е най-добрият избор, ако работите в проект с отворен код. |
Тип инструмент | Безплатно е да използвате инструмента с отворен код. | Това е търговски инструмент за CI |
Употреба | Лесен за използване | Гъвкав за използване |
Github | Добре за Github | Отлично за Github |
поддържа | Широка подкрепа от общността. | Ограничена подкрепа за общността. |
Професионалисти |
|
|
Минуси |
|
|
Планове за използване | Безплатно | Безплатно за проекти с отворен код. Въпреки това, платено за предприятие. |
Сървърна машина | Базирано на сървъра | Облачно базирано |
Опции за персонализиране | | Повече ▼ | По-малко |
Конфигурация | Напълно адаптивни | ЯМЛ |
Контрол върху системата | Пълна | Много по-малко |
Индекс на популярност
Броят на въпросите, обозначени като Дженкинс и Травис в Stack Overflow.
Кое е по добре?
По този начин, с горната дискусия, можем да разберем, че Травис и Дженкинс предлагат прекрасни функции. Малките проекти с отворен код са най-подходящи за Travis CI, тъй като е лесен за изпълнение и бърз за настройка. От друга страна, голямото предприятие е най-подходящо за Дженкинс, тъй като предлага безплатно лицензиране за частен проект и широк спектър от персонализируеми функции. И така, можем да кажем, че и двата инструмента за непрекъсната интеграция са добри по своя начин.