Введение в распространенные плагины Jenkins
Введение в распространенные плагины Jenkins

1. Введение

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

Так что будьте готовы использовать несколько статей. Давайте представим различные плагины в Jenkins. и базовое использование.

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

Позже мы дадим специальное введение в использование плагинов (некоторые плагины не имеют китайских инструкций по их использованию, поэтому это действительно сбивает с толку).

Ладно, больше нет слов. Введите основной текст для введения.

2. Общие плагины

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

Существуют также некоторые плагины, которые мы устанавливаем в соответствии с потребностями компании и личными потребностями во время фактического использования.

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

После некоторых названий пробелов после них стоит Plugin, а после некоторых названий плагинов после них не стоит Plugin. Сделайте свое собственное суждение. Каталог, настроенный ниже, определяется в соответствии с полным именем плагина.

2.1 Рекомендуемые плагины Jenkins

Jenkins поставляется с некоторыми плагинами, которые рекомендуется установить, например Git, Folders, BuildTimeout, Credentials Binding,

Метка времени, Очистка рабочей области, Ant, Gradle, Конвейер, Исходный код ветки GitHub.

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

Folders Plugin

Последняя версия на данный момент: 6.773.vd2dcc704ee7e. (Частота обновлений относительно высокая)

Адрес плагина: https://plugins.jenkins.io/cloudbees-folder/

Что он делает: этот плагин позволяет пользователям создавать «папки» для организации задач. Пользователи могут определять собственные таксономии (например, по типу проекта, типу организации). Папки являются вложенными, и внутри папок можно определять представления.

После установки этого плагина, когда мы создаем новую задачу (новый элемент), в новом типе задачи появится дополнительная опция типа папки.

OWASP Markup Formatter Plugin

Текущая версия: 2.7

Адрес плагина: https://plugins.jenkins.io/antisamy-markup-formatter/

Функция: этот плагин позволяет форматировать описания заданий, сборок, представлений и т. д. в Jenkins, используя безопасное подмножество HTML. Плагин очищает источники HTML с помощью OWASP Java HTML Sanitizer и базовой стратегии, которая позволяет пользователям отправлять ограниченное количество HTML-тегов в тексте.

Простое описание таково: если текст, введенный пользователем в процессе сборки, представляет собой HTML, этот плагин может ограничить количество HTML-тегов во входном тексте. Избегайте проблем компиляции, вызванных этим стандартом.

Build Timeout

Текущая версия: 1.24

Адрес плагина: https://plugins.jenkins.io/build-timeout/

Что он делает: Этот плагин позволяет автоматически завершить сборку, если она занимает слишком много времени. Этот плагин не работает с конвейерами, у которых есть свои собственные этапы тайм-аута рабочего процесса.

мы можемBuild StepsДобавить Run with timeout Запустите тайм-аут сборки, настройте период тайм-аута и выполните задачи после тайм-аута и т. д.

DingTalk можно вызвать для отправки уведомления о тайм-ауте.

Credentials Binding Plugin

Текущая версия: 523.vd859a_4b_122e6.

Адрес плагина: https://plugins.jenkins.io/credentials-binding/

Что он делает: этот плагин позволяет привязывать учетные данные к переменным среды для использования на других этапах сборки. Этот плагин предоставляет простой способ упаковать секретные файлы и пароли для всех заданий и получить к ним доступ во время сборки, используя одну переменную среды.

Можно сказать, что контроль учетных данных, который мы добавили в управление системой и т. д., основан на конфигурации этого плагина. Этот плагин считается плагином низкого уровня.

Timestamper

Текущая версия: 1.20

Адрес плагина: https://plugins.jenkins.io/timestamper/

Функция: этот плагин позволяет устанавливать временную метку журнала задач и добавлять временную метку к выводам консоли задания Jenkins.

Проверьте среду сборки:Add timestamps to the Console Output Это позволяет нам настроить временную метку для каждой записи в журнале вывода консоли. Если формат даты, отображаемый меткой времени, не соответствует требованиям, мы можем настроить его в управлении системой. Найти временную метку в системе (конфигурация системы) Затем определите наш собственный эффект отображения метки времени или мы можем определить эффект отображения в Pipeline.

Workspace Cleanup Plugin

Текущая версия: 0.43

Адрес плагина: https://plugins.jenkins.io/ws-cleanup/

Функция: Этот плагин используется для очистки рабочего пространства.

В процессе сборки Дженкинс создаст для нас рабочую область, в которой будут храниться различные документы, созданные нами в процессе сборки (особенно код, полученный Git). Этот плагин позволяет нам наводить порядок на рабочем месте перед каждым строительством. (PS: Результаты построения после каждого построения не будут сохраняться в рабочей области, а очистка не приведет к удалению результатов предыдущих построений).

Проверьте среду сборки:Delete workspace before build starts Вы можете чистить его каждый раз, когда строите.

Ant Plugin

Текущая версия: 481.v7b_09e538fcca.

Адрес плагина: https://plugins.jenkins.io/ant/

Функция: этот плагин используется для добавления поддержки Apache Ant в Jenkins.

Если мы хотим использовать поддержку Ant в процессе компиляции и построения нашего проекта, тогда этот плагин будет основным плагином. С его помощью Дженкинс может поддерживать Ant. Gradle ниже похож на него.

Gradle Plugin

Текущая версия: 2.0.

Адрес плагина: https://plugins.jenkins.io/gradle/

Функция: этот плагин используется для добавления поддержки Gradle в Jenkins.

Когда мы компилируем проект Android, мы автоматически компилируем и собираем его через Gradle. Это то же самое, что Ant и Maven. Если вы хотите скомпилировать проект Android. Тогда этот плагин просто необходим.

Pipeline

Текущая версия: 590.v6a_d052e5a_a_b_5.

Адрес плагина: https://plugins.jenkins.io/workflow-aggregator/

Функция: этот плагин предоставляет Jenkins функциональность Pipeline. Этот плагин и другие плагины, от которых он зависит, составляют функцию конвейера Jenkins 2.0 в целом.

Например:

Pipeline Graph Analysis Plugin : поставлять REST Функции доступа и управления API-конвейером.

Pipeline: API:Определить конвейерAPIплагин。

Pipeline: Basic Steps:Добавить этап конвейера“build”вызвать создание других рабочих мест。

Pipeline: Declarative:Упрямый декларативный конвейер。

Подождите, соответствующий плагин. Здесь оно не будет распространяться.

GitHub Branch Source Plugin

Текущая версия: 1695.v88de84e9f6b_9.

Адрес плагина: https://plugins.jenkins.io/github-branch-source/

Что он делает: этот плагин позволяет создавать новые проекты на основе структуры репозитория одного или нескольких пользователей или организаций GitHub.

Чтобы использовать этот плагин, при создании элемента мы выбираем создание проекта с несколькими конфигурациями (проект с несколькими конфигурациями) или проекта с несколькими конвейерами (многоветвевой конвейер).

Git

Текущая версия: 4.12.1.

Адрес плагина: https://plugins.jenkins.io/git/

Функция: этот плагин предназначен для Jenkins.Project и обеспечивает базовые операции git. он может опросить、извлекать、Проверить、ветвь、список、слить、Отметьте и нажмите репозиторий.

Фактически, если мы установим этот плагин, мы сможем вытащить код проекта Git.

Это самый простой основной плагин. Следующие клиент Git, плагин сервера Git, плагин GitHub и плагин GitLab — это плагины для различных специальных сценариев, которые инкапсулированы для удовлетворения конкретных функциональных требований и сокращения рабочих операций.

SSH Build Agents plugin

Текущая версия: 2.854.v7fd446b_337c9.

Адрес плагина: https://plugins.jenkins.io/ssh-slaves/

Функция: Этот плагин предназначен для Jenkins, альтернативного метода запуска проектов через SSH.

Matrix Authorization Strategy Plugin

Текущая версия: 3.1.5

Адрес плагина: https://plugins.jenkins.io/matrix-auth/

Функция: этот плагин реализует детальный контроль доступа в Jenkins.

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

Этот плагин предназначен для администраторов. Недоступно обычным пользователям.

PAM Authentication plugin

Текущая версия: 1.10.

Адрес плагина: https://plugins.jenkins.io/pam-auth/

Функция: этот плагин реализует поддержку подключаемого модуля аутентификации Unix (PAM) в Jenkins.

Полное слово PAM: Подключаемый модуль аутентификации.

LDAP Plugin

Текущая версия: 2.12.

Адрес плагина: https://plugins.jenkins.io/ldap/

Функция: Этот плагин предоставляет еще один метод аутентификации пользователей с использованием LDAP. Его можно использовать с Active Directory LDAP, OpenLDAP.

Если нам это не нужно, мы можем отключить плагин.

LDAP относится к облегченному протоколу доступа к каталогам. Полное слово: облегченный протокол доступа к каталогу.

Email Extension Plugin

Текущая версия: 2.92.

Адрес плагина: https://plugins.jenkins.io/email-ext/

Что он делает: этот плагин позволяет настраивать различные аспекты уведомлений по электронной почте. Вы можете настроить время отправки электронного письма, кому оно будет отправлено и его содержание.

Различные функции уведомлений по электронной почте, которые мы реализуем в Jenkins, обычно поддерживаются этим плагином.

Mailer Plugin

Текущая версия: 438.v02c7f0a_12fa_4.

Адрес плагина: https://plugins.jenkins.io/mailer/

Что он делает: Этот плагин позволяет вам настраивать уведомления по электронной почте о результатах сборки.

Mailer Плагин — это плагин, который предоставляет базовые уведомления по электронной почте, но функции, реализуемые этим плагином, относительно немногочисленны и просты. Например, мы хотим настроить содержимое заголовка электронного письма и т. д. Затем вы можете использовать электронную почту Extension Плагин плагина. Почтовая программа Плагин — это системный плагин Jenkins.

Localization: Chinese (Simplified)

Текущая версия: 1.0.24.

Адрес плагина: https://plugins.jenkins.io/localization-zh-cn/

Функция: этот плагин предназначен для Jenkins. поставлять Упрощенный пакет китайского языка。

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

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

2.2 Используйте для работы рекомендуемые плагины

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

Эти плагины — дело вкуса.

Environment Injector Plugin

Текущая версия: 2.881.v37c62073ff97.

Адрес плагина: https://plugins.jenkins.io/envinject/

Функция: вы можете перечислить переменные среды в процессе построения после компиляции, включая переменные среды параметризованной конструкции.

В то же время вы также можете устанавливать собственные переменные среды для задач. Например, пароли можно безопасно внедрить в процесс строительства.

Build Environment Plugin

Текущая версия: 1.7

Адрес плагина: https://plugins.jenkins.io/build-environment

Функция: этот плагин отображает информацию о среде сборки и сравнивает параметры между двумя средами сборки. Он может отображать все глобальные переменные во всем процессе строительства. По сравнению с плагином Environment Injector Plugin, который может отображать больше функций.

Если мы используем сценарии Groovy, мы не знаем, какие там глобальные свойства. Или мы используем множество плагинов в процессе построения, но я не знаю, предоставляют ли эти плагины какие-то глобальные параметры. Вы можете использовать этот интерфейс для тестирования и очистки.

В то же время он также может записывать данные параметров. Результаты каждой сборки показаны ниже.

GitLab Plugin

Текущая версия: 1.5.36.

Адрес плагина: https://plugins.jenkins.io/gitlab-plugin/

Что он делает: этот плагин позволяет GitLab запускать сборки в Jenkins при фиксации кода или при открытии/обновлении мерж-реквеста. Он также может отправлять статус сборки обратно в GitLab.

Если наш проект управляется через GitLab. Затем вы можете использовать этот плагин для достижения этой цели, и он будет автоматически создан после отправки git.

В то же время вы также можете настроить сертификаты, связанные с GitLab.

Upload to pgyer

Текущая версия: 2.1.

Адрес плагина: https://plugins.jenkins.io/upload-pgyer/

Функция: мы можем загружать наши скомпилированные приложения для Android или iOS на платформу Dandelion. После загрузки интерфейса соответствующие ссылки для скачивания будут автоматически возвращены.

Groovy Postbuild

Текущая версия: 2.5

Адрес плагина: https://plugins.jenkins.io/groovy-postbuild/

Функция: этот плагин будет выполнять отличный скрипт в JVM Jenkins. Мы можем выполнять некоторые транзакции с помощью сценариев Groovy и изменять результаты сборки.

Например, в этой статье https://zinyan.com/?p=383 я реализовал отправку сообщений DingTalk через groovy-скрипты, что является триггером процесса http-запроса.

Если мы используем плагин Pipeline,Никакой дополнительной установки не требуетсяGroovy Postbuildпотому что есть одинPipeline: Groovy

build user vars plugin

Текущая версия: 1.9

Адрес плагина: https://plugins.jenkins.io/build-user-vars-plugin/

Функция: этот плагин автоматически генерирует 6 переменных среды. Давайте использовать его позже в скриптах и ​​других местах.

Variable

Description

BUILD_USER

Полное имя (имя + фамилия) — это наше имя пользователя для входа.

BUILD_USER_FIRST_NAME

Имя Имя пользователя начинается с

BUILD_USER_LAST_NAME

Фамилия и имя пользователя заканчиваются

BUILD_USER_ID

Идентификатор пользователя Jenkins идентификатор пользователя

BUILD_USER_GROUPS

Группы пользователей Jenkins Группы пользователей

BUILD_USER_EMAIL

Адрес электронной почты Адрес электронной почты пользователя

Некоторые процессы сборки требуют знания того, кто их запускает. Тогда этот плагин можно будет легко создать.

DingTalk

Текущая версия: 2.4.10.

Адрес плагина: https://plugins.jenkins.io/dingding-notifications/

Функция: Этот плагин может отправлять процесс компиляции в нашу группу DingTalk через робота DingTalk.

После установки этого плагина необходимо перезапустить Jenkins, чтобы он вступил в силу при выполнении определенных задач.

NodeJs Plugin

Текущая версия: 1.5.1.

Адрес плагина: https://plugins.jenkins.io/nodejs/

Функция: этот плагин NodeJs. & npm Проект обеспечивает интеграцию Jenkins. NodeJs необходим во время компиляции и создания интерфейсной страницы.

Этот плагин необходим.

Build Name and Description Setter

Текущая версия: 2.2.0

Адрес плагина: https://plugins.jenkins.io/build-name-setter

Что он делает: этот плагин устанавливает отображаемое имя вашей сборки на что-то отличное от #1, #2, #3... чтобы вы могли использовать идентификатор, который имеет больше смысла в контексте. Когда вы установите этот плагин, ваша страница конфигурации задания получит дополнительные настройки, которые позволят вам указать имя сборки для каждой новой сборки. После настройки его также можно использовать в Pipeline. Помимо определения имени, вы также можете определить некоторую описательную информацию.

Job Configuration History

Текущая версия: 1183.v6e2785ff75e0.

Адрес плагина: https://plugins.jenkins.io/jobConfigHistory/

Назначение: этот плагин сохраняет копии всех заданий и конфигураций системы. После завершения настройки мы хотим отменить предыдущую конфигурацию. Тогда этот плагин является артефактом.

Если вы изменили определенную конфигурацию, но теперь хотите изменить ее обратно, не имеете резервной копии и забыли о ней, то вы можете использовать этот плагин.

Это создастJob Conflg History меню. Каждое вносимое нами изменение конфигурации будет отображаться. Мы можем вернуться к указанной конфигурации одним щелчком мыши.

Display Console Output

Текущая версия: 1.0.5

Адрес плагина: https://plugins.jenkins.io/display-console-output/

Функция: Этот плагин может отображать ранее созданный интерфейс вывода консоли прямо на странице проекта. Таким образом, после того, как мы нажмем «Создать», мы сможем легко просмотреть журнал результатов сборки. Рекомендуется установить.

Monitoring

Текущая версия: 1.91.0

Адрес плагина: https://plugins.jenkins.io/monitoring/

Функция: этот плагин контролирует производительность Jenkins через JavaMelody.

Active Choices

Текущая версия: 2.6.4.

Адрес плагина: https://plugins.jenkins.io/uno-choice

Назначение: этот плагин используется для параметризованных заданий Jenkins в произвольном стиле для создания сценариев, динамических и интерактивных параметров заданий. Параметры параметров действия можно обновлять динамически и отображать в виде полей со списком, флажков, переключателей или виджетов с богатым пользовательским интерфейсом HTML. По выбранным параметрам автоматически вызываются последующие параметры, от которых зависят соответствующие параметры.

Популярное объяснение: в проекте могут выполняться различные сценарии сборки или процессы сборки на основе выбора переменных. Улучшите возможность повторного использования.

Git parameter

Текущая версия: 0.9.18.

Адрес плагина: https://plugins.jenkins.io/git-parameter/

Что он делает: этот плагин позволяет вам указать ветку git, тег, номер запроса или версии в качестве параметра в вашей сборке. Это позволяет нам строить на основе параметризации Git.

Этот плагин автоматически использует плагины Git и Git Client.

Gitee

Текущая версия: 1.2.7.

Адрес плагина: https://plugins.jenkins.io/gitee/

Что он делает: этот плагин позволяет Gitee запускать сборки в Jenkins при фиксации кода или при открытии/обновлении мерж-реквеста. Он также может отправлять статус сборки обратно в Gitee. Это то же самое, что и плагин GitLab выше. Просто целевые платформы разные.

Jira

Текущая версия: 3.8

Адрес плагина: https://plugins.jenkins.io/jira/

Функция: этот плагин позволяет Jenkins записывать точки сообщения об ошибках. Если вы регистрируете список ошибок через JIRA. Тогда этот плагин стоит попробовать.

Плагин автоматически свяжет все совпадающие названия задач с Jira.

3. Резюме

Вышеуказанные плагины можно найти на официальном рынке плагинов по адресу https://plugins.jenkins.io/ по названию.

Передайте каждый адрес плагина,можно скачать через браузер.hpiдокумент(Jenkins формат файла плагина).

Есть два способа установки плагинов:

  1. проходитьJenkinsУправление системой в фоновом режимеплагинуправлениеAvailable plugins Найдите и установите.
  2. проходитьв управлении плагинамиAdvanced SettingпанельDeploy PluginФункция,загрузитьhpiдокументнажмите послеDeployкнопка для загрузки и установки локально。

На этом все знакомства заканчиваются. Надеюсь, это поможет развеять некоторые ваши сомнения.

boy illustration
Cloud Native использует Docker для развертывания личной навигационной страницы на домашней странице.
boy illustration
Разработка приложения HarmonyOS | HarmonyOS Next-анализ всего процесса от разработки приложения до запуска
boy illustration
Поделитесь хорошим местом для загрузки оригинального iso-файла server2025 от Microsoft.
boy illustration
Feiniu fnos использует Docker для развертывания онлайн-офисного пакета для совместной работы с открытым исходным кодом onlyoffice
boy illustration
Комплексная оценка мощного и простого в использовании программного обеспечения для офлайн-заметок: преимущества, недостатки, сравнение
boy illustration
[Новогоднее специальное предложение] Скидка 50% на удивительную цену TPNS через мобильную распродажу горячих продуктов всего за 9,8 юаней, новые и старые клиенты приходят быстро!
boy illustration
CentOS Linux солнце Устройство eth0, похоже, не присутствует
boy illustration
Список замены CentOS, какой из них лучше выбрать?
boy illustration
Автоматический выключатель, изоляция, повторная попытка, понижение версии, тайм-аут, ограничение тока — все основные стратегии управления трафиком архитектуры высокой доступности полностью освоены.
boy illustration
Дополнительные правила вознаграждения для послов промоакций в ноябре 2022 г.
boy illustration
[Система искусственного интеллекта] Области искусственного интеллекта, сценарии и отраслевые приложения
boy illustration
Принцип и метод построения рабочей характеристики приемника (ROC)
boy illustration
Патч для CVE-2024-38077, 2008R2 и 2012R2 применяет патч очень медленно и в конечном итоге не может выполнить откат решения.
boy illustration
Дополнительные правила вознаграждения для послов промоакций в феврале 2023 г.
boy illustration
Встряхните людей! Ищем представителей класса Double Eleven в техническом кругу через Интернет! Участвуйте в конкурсе эссе и выигрывайте призы каждую неделю
boy illustration
Углубленный анализ переполнения памяти CUDA: OutOfMemoryError: CUDA не хватает памяти. Попыталась выделить 3,21 Ги Б (GPU 0; всего 8,00 Ги Б).
boy illustration
[Решено] ошибка установки conda. Среда решения: не удалось выполнить первоначальное зависание. Повторная попытка с помощью файла (графическое руководство).
boy illustration
Прочитайте нейросетевую модель Трансформера в одной статье
boy illustration
.ART Теплые зимние предложения уже открыты
boy illustration
Сравнительная таблица описания кодов ошибок Amap
boy illustration
Уведомление о последних правилах Points Mall в декабре 2022 года.
boy illustration
Даже новички могут быстро приступить к работе с легким сервером приложений.
boy illustration
Взгляд на RSAC 2024|Защита конфиденциальности в эпоху больших моделей
boy illustration
Вы используете ИИ каждый день и до сих пор не знаете, как ИИ дает обратную связь? Одна статья для понимания реализации в коде Python общих функций потерь генеративных моделей + анализ принципов расчета.
boy illustration
Используйте (внутренний) почтовый ящик для образовательных учреждений, чтобы использовать Microsoft Family Bucket (1T дискового пространства на одном диске и версию Office 365 для образовательных учреждений)
boy illustration
Руководство по началу работы с оперативным проектом (7) Практическое сочетание оперативного письма — оперативного письма на основе интеллектуальной системы вопросов и ответов службы поддержки клиентов
boy illustration
[docker] Версия сервера «Чтение 3» — создайте свою собственную программу чтения веб-текста
boy illustration
Обзор Cloud-init и этапы создания в рамках PVE
boy illustration
Корпоративные пользователи используют пакет регистрационных ресурсов для регистрации ICP для веб-сайта и активации оплаты WeChat H5 (с кодом платежного узла версии API V3)
boy illustration
Подробное объяснение таких показателей производительности с высоким уровнем параллелизма, как QPS, TPS, RT и пропускная способность.