Дженкинс против Трэвис-CI. Какой из них вы бы использовали для проекта с открытым исходным кодом?

Для моего проекта мне нужно выбрать между Дженкинсом и Трэвисом-CI. Я использую Дженкинса в течение многих лет, но я также читал хорошие отзывы о Travis-CI.

Какой из них вы бы использовали для проекта с открытым исходным кодом? Каковы основные преимущества или преимущества обоих?

Ответ 1

Travis-ci и Jenkins, хотя оба являются инструментами для непрерывной интеграции, очень различны.

Travis - это размещенная служба (бесплатная для открытого кода), в то время как вы должны размещать, устанавливать и настраивать Jenkins.

У Трэвиса нет работы, как у Дженкинса. Команды, выполняемые для проверки кода, берутся из файла с именем .travis.yml, который находится вдоль кода проекта. Это позволяет легко использовать разные тестовые коды для каждой ветки, поскольку каждая ветвь может иметь свою собственную версию файла .travis.yml.

У вас может быть аналогичная функция с Jenkins, если вы используете один из следующих плагинов:

  • Travis YML Plugin - предупреждение: похоже, не популярно, возможно, не является полным по сравнению с реальным Travis.
  • Jervis - модификация Дженкинса, чтобы заставить его читать задания создания из файла .jervis.yml, найденного в корне кода проекта. Если .jervis.yml не существует, он будет возвращаться к использованию файла .travis.yml.

Существуют и другие размещенные службы, которые вы также можете рассмотреть для непрерывной интеграции (не исчерпывающий список):


Как выбрать?

Возможно, вам захочется остаться с Дженкинсом, потому что вы знакомы с ним или не хотите зависеть от третьей стороны для вашей системы непрерывной интеграции. Кроме того, я бы бросил Дженкинса и пошел с одним из бесплатных сервисов CI, поскольку они сэкономили вам много неприятностей (хост, установка, настройка, подготовка заданий).

В зависимости от того, где размещен ваш репозиторий кода, я бы сделал следующие варианты:

  • in-house → Дженкинс или gitlab-ci
  • Github.com → Travis-CI

Чтобы настроить Travis-CI в проекте github, вам нужно всего лишь:

  • добавьте . travis.yml файл в корень вашего проекта
  • создать учетную запись на travis-ci.com и активировать свой проект

Доступны следующие функции:

  • Travis будет запускать ваши тесты для каждого нажатия на вашем репо
  • Travis будет запускать ваши тесты на каждый вкладчик, получающий запрос на тягу.

Ответ 2

Я работал как с Трэвисом, так и с Дженкинсом: я перечислю некоторые из функций обоих:

  • Настройка CI для проекта:

    Тревис: выходит на первое место. Он очень прост в настройке. Требуется меньше минуты для настройки с github. - Войти в github - создать веб-крюк для Travis - вернуться в Travis (https://travis-ci.org/) - войти в систему с учетными данными github и синхронизировать репозиторий github и разрешить запросы Push и Pull, Очень простая настройка в Тревисе.

    Дженкинс: создать среду (Мастер Дженкинс) - создать веб-крючки - конфигурации на каждом задании (требуется время, сравнимое с Travis)

  • Повторно запустите сборки:

    Travis: у кого когда-либо есть доступ на запись в github, они могут повторно запустить сборку, нажав restart build

    Дженкинс: перезапустите сборку на основе фразы: укажите текст фразы в описании PR/фиксации, например reverify jenkins

  • Управляющая среда:

    Travis: Travis предоставляет размещенную среду, Travis устанавливает требуемые программные средства для каждой сборки - это трудоемкий процесс.

    Jenkins: это обычная настройка, установите все необходимые программы в node/slave machine и выполните все тесты в предустановленной среде.

  • Журналы сборки:

    Travis: Поддерживает журналы сборки для размещения на Amazon S3.

    Jenkins: легко настраивается с помощью плагина build artifacts.

Ответ 3

Я бы предложил Travis для проекта с открытым исходным кодом. Это просто настроить и использовать.

Простые шаги для настройки:

  • Должна иметь GITHUB учетную запись и зарегистрироваться в веб-сайте Travis CI с использованием вашей учетной записи GITHUB.
  • Добавьте .travis.yml файл в корневой каталог вашего проекта. Добавьте Travis как сервис на странице настроек вашего репозитория.

Теперь каждый раз, когда вы вносите в свой репозиторий, Travis будет строить ваш проект. Вы можете выполнить простые шаги для начала работы с помощью Travis CI.