Jump to content

Дженкинс (программное обеспечение)

Дженкинс
Оригинальный автор(ы) Косуке Кавагути [1]
Первоначальный выпуск 2 февраля 2011 г. ( 2011-02-02 ) [2]
Стабильная версия
2.468 [3]  Отредактируйте это в Викиданных / 16 июля 2024 г .; 17 дней назад ( 16 июля 2024 г. )
Репозиторий
Написано в Ява
Платформа Ява 11 , Ява 17
Тип Непрерывная доставка
Лицензия МОЯ лицензия [4] [5]
Веб-сайт www .дженкинс .что  Edit this on Wikidata

Jenkins с открытым исходным кодом автоматизации сервер . Он помогает автоматизировать части разработки программного обеспечения, связанные со сборкой , тестированием и развертыванием , облегчая непрерывную интеграцию и непрерывную доставку . Это серверная система, работающая в контейнерах сервлетов, таких как Apache Tomcat . Он поддерживает контроля версий инструменты , включая AccuRev , CVS , Subversion , Git , Mercurial , Perforce , ClearCase и RTC , и может выполнять проекты на основе Apache Ant , Apache Maven и sbt , а также произвольные сценарии оболочки Windows и пакетные команды .

Проект Jenkins изначально назывался Hudson и был переименован в 2011 году после спора с Oracle , которая отделила проект и заявила права на название проекта. Ответвление Oracle, Hudson , некоторое время продолжало разрабатываться, прежде чем было передано в дар Eclipse Foundation . Oracle Hudson больше не поддерживается [6] [7] и был объявлен устаревшим в феврале 2017 года. [8]

Примерно в 2007 году Hudson стал известен как лучшая альтернатива Cruise Control и другим серверам сборки с открытым исходным кодом. [1] [9] На конференции JavaOne в мае 2008 года это программное обеспечение получило награду Duke's Choice Award в категории «Решения для разработчиков». [10]

В ноябре 2010 года, после приобретения Sun Microsystems компанией Oracle , в сообществе Hudson возникла проблема, связанная с используемой инфраструктурой, которая выросла и стала включать вопросы по управлению и контролю со стороны Oracle. [11] Переговоры между основными участниками проекта и Oracle состоялись, и, хотя существовало множество областей соглашения, ключевым камнем преткновения было зарегистрированное торговое название «Hudson» после того, как Oracle заявила о своих правах на это имя и подала заявку на регистрацию товарного знака в декабре 2010 года. В результате 11 января 2011 года было объявлено о голосовании за изменение названия проекта с «Гудзон» на «Дженкинс». Предложение было одобрено подавляющим большинством голосов сообщества 29 января 2011 года, в результате чего был создан проект Jenkins. [12]

1 февраля 2011 года Oracle заявила, что намерена продолжить разработку Hudson, и считает Jenkins форком, а не переименованием. Таким образом, Дженкинс и Хадсон продолжили работу как два независимых проекта. [13] каждый утверждал, что другой был вилкой. По состоянию на июнь 2019 года в организации Дженкинса на GitHub было 667 участников проекта и около 2200 общедоступных репозиториев. [14] по сравнению с 28 участниками проекта Hudson и 20 общедоступными репозиториями с последним обновлением в 2016 году. [15]

В 2011 году создатель Косуке Кавагути получил премию O'Reilly Open Source Award за свою работу над проектом Hudson/Jenkins. [16]

20 апреля 2016 г. была выпущена версия 2 с Pipeline . включенным по умолчанию плагином [17] Плагин позволяет писать инструкции сборки с использованием предметно-ориентированного языка на основе Apache Groovy .

Дженкинс заменил Хадсона с 8 февраля 2017 года в Eclipse. [8]

В марте 2018 года Jenkins X был публично представлен программный проект для Kubernetes . [18] с поддержкой различных поставщиков облачных услуг, включая AWS EKS и других. [19]

Сборки могут быть инициированы различными способами, например:

  • вебхук, который срабатывает при принудительной фиксации в системе контроля версий
  • планирование с помощью cron -подобного механизма
  • запрос определенного URL-адреса сборки .
  • после завершения других сборок в очереди
  • вызывается другими сборками

плагины Для Jenkins были выпущены , которые расширяют его возможности для проектов, написанных на языках, отличных от Java . Доступны плагины для интеграции Jenkins с большинством систем контроля версий и базами данных ошибок. Многие инструменты сборки поддерживаются через соответствующие плагины. Плагины также могут изменить внешний вид Jenkins или добавить новые функции. Существует набор плагинов, предназначенных для модульного тестирования, которые генерируют отчеты о тестировании в различных форматах (например, JUnit в комплекте с Jenkins, MSTest , NUnit и т. д.). [20] ) и автоматическое тестирование , поддерживающее автоматические тесты. Сборки могут создавать отчеты о тестировании в различных форматах, поддерживаемых плагинами ( поддержка JUnit в настоящее время включена в комплект), а Jenkins может отображать отчеты, генерировать тенденции и отображать их в графическом интерфейсе.

Почтовая программа

[ редактировать ]

Позволяет настраивать уведомления по электронной почте о результатах сборки. [21] Дженкинс будет отправлять электронные письма указанным получателям всякий раз, когда происходит определенное важное событие, например:

  1. Неудачная сборка.
  2. Нестабильная сборка.
  3. Успешная сборка после неудачной сборки указывает на то, что кризис закончился.
  4. Нестабильная сборка после успешной, что указывает на регресс.

Реквизиты для входа

[ редактировать ]

Позволяет хранить учетные данные в Jenkins. Предоставляет стандартизированный API для других плагинов для хранения и получения различных типов учетных данных. [22]

Мониторинг внешних заданий

[ редактировать ]

Добавляет возможность отслеживать результат внешне выполняемых заданий. [23]

SSH-агенты

[ редактировать ]

Этот плагин позволяет управлять агентами (ранее известными как подчиненные). [24] работает на машинах *nix через SSH. [25] Он добавляет новый тип метода запуска агента. Этот метод запуска будет

  1. Откройте SSH-соединение с указанным хостом под указанным именем пользователя,
  2. Проверьте версию Java по умолчанию для этого пользователя,
  3. [еще не реализовано] Если версия по умолчанию несовместима с версией Jenkins Agent.jar , попробуйте найти подходящую версию Java.
  4. Как только у него будет подходящая версия Java, скопируйте последнюю версию Agent.jar через SFTP (возврат к scp, если SFTP недоступен),
  5. Запустите процесс агента.

Этот плагин добавляет поддержку Javadoc в Jenkins. Раньше эта функциональность была частью ядра, но начиная с Jenkins 1.431 она была разделена на отдельные плагины. [26]

Плагин позволяет выбрать «Опубликовать Javadoc» в качестве действия после сборки, указав каталог, в котором должен быть собран Javadoc, и ожидается ли сохранение для каждой успешной сборки. [27]

Онлайн объяснение

[ редактировать ]

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

Безопасность

[ редактировать ]

Безопасность Jenkins зависит от двух факторов: контроля доступа и защиты от внешних угроз. Контроль доступа можно настроить двумя способами: аутентификация и авторизация пользователя. защита от внешних угроз, таких как атаки CSRF и вредоносные сборки. Также поддерживается [28]

Награды и признание

[ редактировать ]
  • Премия InfoWorld Bossie (Лучшее программное обеспечение с открытым исходным кодом) в 2011 году. [29]
  • Получил премию Geek Choice Award в 2014 году. [29]

См. также

[ редактировать ]
  1. ^ Jump up to: а б Дайер, Дэн. «Почему вы до сих пор не используете Hudson?» . Проверено 21 мая 2008 г.
  2. ^ Jenkins 1.396 выпущен. Архивировано 8 декабря 2018 г. на Wayback Machine . Опубликован первый выпуск Jenkins , Косуке Кавагути.
  3. ^ «Релиз 2.468» . 16 июля 2024 г. Проверено 23 июля 2024 г.
  4. ^ "ЛИЦЕНЗИЯ.txt" . jenkinsci/jenkins (хранилище исходного кода) . GitHub (опубликовано 11 сентября 2011 г.). 12 февраля 2008 г. Архивировано из оригинала 18 октября 2016 г. Проверено 18 октября 2016 г.
  5. ^ Кавагути, Косукэ; и др. «Использовать Hudson: Лицензия» . Архивировано из оригинала 7 февраля 2009 года . Проверено 30 января 2011 г.
  6. ^ «О Дженкинсе» . Eclipse Wiki: Дженкинс . Проверено 6 августа 2017 г.
  7. ^ «О Дженкинсе» . Wayback Machine: Eclipse Wiki, впервые доступно 6 августа 2017 г. Архивировано из оригинала 4 сентября 2018 года . Проверено 3 сентября 2018 г.
  8. ^ Jump up to: а б «О Дженкинсе» . История Eclipse Wiki .
  9. ^ Фредрик, Джеффри. «В чем разница между Hudson и CruiseControl для проектов Java?» . Переполнение стека . Проверено 17 января 2011 г.
  10. ^ Дюбоск, Женевьева (2008). «Конференция JavaOne 2008: победители премии Duke's Choice Awards 2008» . Конференция Java One, 2008 г. java.sun.com . Проверено 21 мая 2008 г.
  11. ^ Родригес, Савио (3 декабря 2010 г.). «Ошибки Oracle с открытым исходным кодом продолжаются и в проекте Hudson» . Инфомир . Проверено 31 мая 2018 г.
  12. ^ Проффитт, Брайан (2 февраля 2011 г.). «Разработчики Hudson голосуют за смену названия; Oracle объявляет форк» . ITWorld . Проверено 31 мая 2018 г.
  13. ^ Крил, Пол (4 мая 2011 г.). «Oracle передает Hudson Eclipse, но форк Jenkins кажется постоянным» . Инфомир . Проверено 31 мая 2018 г.
  14. ^ «Организация Дженкинса на GitHub» . Гитхаб . Проверено 31 мая 2018 г.
  15. ^ «Организация Hudson на Github» . Гитхаб . Проверено 31 мая 2018 г.
  16. ^ Моррис, Ричард (17 июля 2012 г.). «Косуке Кавагути: Компьютерщик недели» . Проверено 31 мая 2018 г.
  17. ^ «Что нового в Дженкинсе 2.0» . 24 августа 2016 г.
  18. ^ «Представляем Jenkins X: решение CI/CD для современных облачных приложений на Kubernetes» . Представляем Jenkins X: решение CI/CD для современных облачных приложений на Kubernetes .
  19. ^ «Непрерывная доставка с помощью Amazon EKS и Jenkins X» . Веб-сервисы Amazon . 7 ноября 2018 года. Архивировано из оригинала 6 мая 2019 года . Проверено 23 ноября 2018 г.
  20. ^ «Плагины» . wiki.jenkins-ci.org.
  21. ^ «Почтовая программа — Дженкинс — Дженкинс Wiki» . wiki.jenkins.io . Проверено 26 ноября 2017 г.
  22. ^ «Плагин учетных данных — Jenkins — Jenkins Wiki» . wiki.jenkins-ci.org . Проверено 26 ноября 2017 г.
  23. ^ «Мониторинг внешних заданий — Jenkins — Jenkins Wiki» . wiki.jenkins.io . Проверено 26 ноября 2017 г.
  24. ^ «Исходный код Дженкинса» . Гитхаб . Проверено 19 мая 2018 г.
  25. ^ «Агент сборки SSH — плагин Jenkins» . плагины.jenkins.io . Проверено 12 июня 2020 г.
  26. ^ «Плагин Javadoc — Jenkins — Jenkins Wiki» . wiki.jenkins.io . Проверено 26 ноября 2017 г.
  27. ^ «Создание и публикация электронного документа в Jenkins с помощью плагина Javadoc | Erlanger» .
  28. ^ «Защита Дженкинса» . Дженкинс.io . Проверено 13 сентября 2016 г.
  29. ^ Jump up to: а б «Награды — Дженкинс — Jenkins Wiki» . wiki.jenkins-ci.org . Проверено 13 сентября 2016 г.
[ редактировать ]


Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: fb9ba1871f7d429cf36fb156849576c5__1719122700
URL1:https://arc.ask3.ru/arc/aa/fb/c5/fb9ba1871f7d429cf36fb156849576c5.html
Заголовок, (Title) документа по адресу, URL1:
Jenkins (software) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)