Travis-ci и Jenkins, в то время как оба инструмента для непрерывной интеграции сильно различаются.
Travis - это размещенный сервис (бесплатный для открытого исходного кода), в то время как вам нужно разместить, установить и настроить Jenkins.
Трэвис не имеет работы, как в Дженкинс. Команды для запуска кода взяты из файла с именем.travis.yml
который находится в коде вашего проекта. Это позволяет легко иметь разные тестовые коды для каждой ветви, поскольку каждая ветка может иметь свою собственную версию файла .travis.yml.
У вас может быть похожая функция с Jenkins, если вы используете один из следующих плагинов:
- Travis YML Plugin - предупреждение: не похоже на популярность, вероятно, не полная функциональность по сравнению с реальным Travis.
- Jervis - модификация Jenkins для чтения и создания заданий из
.jervis.yml
файла, найденного в корне кода проекта. Если .jervis.yml
он не существует, .travis.yml
вместо этого он использует файл.
Существуют и другие размещенные сервисы, которые вы также можете рассмотреть для непрерывной интеграции (не исчерпывающий список):
Как выбрать?
Возможно, вы захотите остаться с Jenkins, потому что вы знакомы с ним или не хотите зависеть от третьей стороны в вашей системе непрерывной интеграции. В противном случае я бы отказался от Дженкинса и пошел бы с одним из бесплатных хост-сервисов CI, поскольку они избавили вас от многих проблем (размещение, установка, настройка, подготовка заданий).
В зависимости от того, где находится ваш репозиторий кода, я бы сделал следующие варианты:
- внутренний → Дженкинс или Гитлаб-Си
- Github.com → Трэвис-Си
Чтобы настроить Travis-CI в проекте GitHub, все, что вам нужно сделать, это:
- добавьте файл .travis.yml в корень вашего проекта
- создать аккаунт на travis-ci.com и активировать свой проект
Функции, которые вы получаете:
- Трэвис будет запускать ваши тесты для каждого толчка, сделанного в вашем репо
- Трэвис будет запускать ваши тесты по каждому запросу, сделанному участниками.
.travis.yml
!) У меня есть несколько проектов github, для которых я использую свой собственный Jenkins, и я ни о чем не жалею. Если у вас есть возможность запустить свой собственный Jenkins, я очень рекомендую этот вариант. Приятно иметь 100% контроль над вашей CI-средой.Я работал над Трэвисом и Дженкинсом: я перечислю некоторые из особенностей обоих:
Настройка CI для проекта
Трэвис выходит на первое место. Это очень легко настроить. Установка менее чем за минуту с GitHub.
Дженкинс:
Перезапуск сборок
Travis: Любой, у кого есть доступ для записи на GitHub, может перезапустить сборку, нажав на `restart build '
Дженкинс: перезапустить сборки на основе фразы. Вы предоставляете текст фразы в описании PR / коммит, например
reverify jenkins
.Контролирующая среда
Travis: Трэвис обеспечивает размещенную среду. Он устанавливает необходимое программное обеспечение для каждой сборки. Это трудоемкий процесс.
Дженкинс: Единовременная настройка. Устанавливает все необходимое программное обеспечение на узле / ведомом компьютере, а затем выполняет сборку / тестирование в предустановленной среде.
Журналы сборки:
Travis: Поддерживает журналы сборки для размещения в Amazon S3.
Jenkins: Простота установки с помощью плагина артефактов сборки.
источник
Я бы предложил Трэвис для проекта с открытым исходным кодом. Это просто в настройке и использовании.
Простые шаги для настройки:
.travis.yml
файл в корень вашего проекта. Добавьте Travis как сервис на странице настроек вашего репозитория.Теперь каждый раз, когда вы делаете коммит в свой репозиторий, Трэвис будет строить ваш проект. Вы можете выполнить простые шаги, чтобы начать работу с Travis CI.
источник