Дженкинс: Учебник по CI-инструменту

Если вы хотите использовать непрерывную интеграцию (CI) в своей команде, вам следует использовать простой, но мощный инструмент CI. С Jenkins такой инструмент находится под рукой: Это программное обеспечение с открытым исходным кодом предлагает огромное количество возможностей, особенно с помощью подключаемых модулей, а также для повышения эффективности процесса непрерывной интеграции.

Jenkins основан на Java и поэтому работает на любой платформе. Поскольку программное обеспечение поставляется с Winston, промежуточным ПО для сервлетов, нет необходимости в дополнительных серверах, таких как Tomcat. Для того чтобы вы могли успешно работать с Jenkins, мы сначала объясним, как установить и настроить программу. Затем мы покажем вам пример того, как сделать первые шаги в проекте.

Установка программы

Jenkins доступен в различных версиях. Вы можете выбрать либо еженедельную версию — Jenkins выпускает обновление каждую неделю — либо Long-Term-Support (LTS), в которой новая версия выходит каждые три месяца. В рамках этих двух веток у вас есть выбор между различными релизами. Помимо установочных пакетов для обычных операционных систем (Windows, macOS, Ubuntu/Debian), также доступны версия для Docker и веб-архив (.war).

Примечание

В нашем примере мы используем Windows Installer версии 2.121.1 (LTS) под Windows 7. Если вы используете другую версию или операционную систему, процесс установки может отличаться. Поскольку Jenkins основан на Java, у вас должна быть установлена актуальная версия технологии Java.

Программа установки Windows проведет вас через весь процесс установки. Все, что вам нужно сделать, это указать желаемый каталог установки и запустить установку.

Установка Jenkins

Установка займет всего несколько секунд. Сразу после этого программа откроет предпочитаемый вами браузер и загрузит localhost:8080. Затем вы найдете веб-интерфейс для работы с Jenkins. Но сначала вам нужно сделать шаг в целях безопасности. Jenkins сгенерирует для вас случайный пароль. Его можно найти в каталоге Jenkins, в папке secrets и в файле initialAdminPassword. Этот файл можно открыть любым текстовым редактором. Скопируйте строку и вставьте ее в поле в веб-интерфейсе.

Теперь пора приступать к работе. Мастер установки спросит вас, хотите ли вы выбрать, какие плагины установить, или вы предпочитаете использовать настройки по умолчанию, в которые уже интегрированы все важные расширения. Если вы новичок в Jenkins, этот вариант вас вполне устроит. И не волнуйтесь — дополнительные плагины могут быть установлены в любое время, легко и без проблем.

Затем создайте первого пользователя. Если вы работаете над проектом в одиночку, вы можете пропустить этот шаг и просто использовать Jenkins в качестве администратора — в настройках Jenkins вы все равно сможете позже создать новых пользователей с разными правами. На последнем шаге настройки у вас все еще есть возможность ввести URL-адрес Jenkins. В соответствующее поле уже введен localhost:8080. Если вы установили Jenkins на сервере (что должно быть в профессиональной рабочей среде), введите здесь правильный путь к директории Jenkins. Сохраните свои записи и завершите настройку.

Совет

Дополнительные настройки можно также выполнить позже в меню конфигурации Jenkins.

Jenkins — введение в принцип работы

Вы можете обнаружить, что запуск проекта дает вам наилучшее представление о том, как работает Jenkins. Вот наше пошаговое руководство по созданию проекта в Jenkins. Вы запускаете Jenkins с абсолютно пустой рабочей средой. Чтобы начать новый проект CI, вы должны создать новое задание. Это делается через заметное уведомление в центре окна («create new jobs») или через пункт меню «new item» с левой стороны.

Следующий шаг — дать проекту название и выбрать, чего вы хотите добиться:

  • Freestyle project: Jenkins соединяет систему контроля версий с системой сборки.
  • Pipeline: Создается конвейер из нескольких агентов сборки.
  • Многоконфигурационный проект: Если у вас есть проект, требующий различных настроек, например, потому что вы используете различные тестовые среды, выберите эту опцию.
  • Папка: Папка — это контейнер, в котором можно хранить вложенные объекты.
  • Организация GitHub: Этот параметр выполняет поиск во всех репозиториях учетной записи GitHub.
  • Multibranch Pipeline: Позволяет создавать несколько конвейеров напрямую.

Jenkins фокусируется на свободных проектах, поэтому в нашем примере мы создадим один.

На следующей странице у вас есть множество опций настройки. Вы настраиваете свой проект по шести категориям. Предположим, вы пишете программу на Java и хотите использовать непрерывную интеграцию. Сначала мы разберемся с управлением исходным кодом. Пример программы находится в Git-репозитории на вашем компьютере (можно также подключить Jenkins к GitHub, например). Поэтому укажите правильный каталог в пункте «Git». Вы также можете работать с Subversion.

Следующим шагом будет выбор триггера сборки. Это определяет ситуации, в которых Jenkins должен начать сборку. Это возможно, например, с помощью специального скрипта другой программы после завершения очередной сборки или регулярно через определенные промежутки времени. Вы также можете запускать сборку вручную, когда будете готовы — как мы и сделаем в нашем примере.

Среда сборки, которую Jenkins позволяет вам настроить далее, содержит больше опций, связанных со сборкой: Следует ли прервать сборку, например, если процесс зависнет? Или вы хотите выводить временную метку в консоль? Ни одна из опций не является обязательной.

В конце концов, все дело в сборке: Здесь вы определяете, с чем должна быть собрана ваша программа. Поскольку в стандартный набор плагинов уже интегрированы соединения с Ant и Gradle, вы можете выбрать одну из этих программ. Однако можно также использовать простые команды командной строки. Выберите опцию для пакетных команд и позвольте вашей программе скомпилироваться:

javac MyProgram.java
java MyProgram

После этого Jenkins дает вам возможность выполнять действия после сборки. Важным фактором здесь является тестирование. Используйте опцию «Публиковать отчет о результатах тестирования JUnit», чтобы связать Jenkins и JUnit для интеграции результатов из фреймворка тестирования Java. С помощью дополнительных плагинов вы также можете подключить Jenkins к другим тестовым средам. Вы даже можете запускать автоматические тесты с помощью Jenkins. Также есть возможность отправлять себе и другим сообщения о состоянии сборки по электронной почте. Последний шаг прост: сохраните информацию, и вы создали свою первую работу.

Совет

Если вы хотите установить плагины, вам необходимо перезапустить сервер Jenkins. Это можно сделать, выйдя из системы и добавив safeRestart к URL в адресной строке браузера (например, localhost:8080/safeRestart). Если теперь вы снова войдете в систему, вы сможете подтвердить, что хотите перезапустить.

Каждый проект имеет свою собственную подстраницу в Jenkins. Здесь вы можете запустить сборку, изменить настройки и посмотреть статус. На странице «статус» Jenkins также показывает историю сборок. Была ли последняя сборка успешной или нет? Синие точки показывают, что она была успешной, красные точки обозначают ошибку — и вам следует немедленно ее исправить. В этот момент вы также можете увидеть, когда создается сборка. Щелчок на номере сборки переводит вас на страницу подробностей, где вы также можете просмотреть вывод консоли.

Приборная панель Jenkins показывает все проекты, над которыми вы работаете. Здесь программа также выделяет статус проекта цветом. Вы также получите информацию о стабильности сборки в виде отчета о погоде. Это статистика того, насколько стабильны сборки проекта в среднем. Если более 80 процентов ваших сборок проходят успешно, вы увидите солнце. Ниже этого значения символическая погода становится все хуже и хуже.

В целях защиты вашей конфиденциальности видео не будет загружаться, пока вы не кликните на него.

Примечание

Jenkins предоставляет вам множество других способов настроить программу под ваши условия работы и упростить процесс непрерывной интеграции. Вы найдете подходящее решение для большинства ситуаций, в частности, если будете использовать различные плагины.

Оцените статью
cdelat.ru
Добавить комментарий