Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Apache Gump - это система непрерывной интеграции с открытым исходным кодом , цель которой - каждую ночь создавать и тестировать все проекты Java с открытым исходным кодом. Его цель - убедиться, что все проекты совместимы как на уровне API, так и с точки зрения соответствия функциональности спецификациям. Он размещен и запускается каждую ночь на официальной виртуальной машине Sun JVM .gump.apache.org

История [ править ]

Гамп был создан Сэмом Руби на основе его опыта в сообществе Perl . Первоначально он был написан на Java

Текущая живая версия, Gump 3, была полностью переписана на Python .

Использование [ править ]

Чтобы присоединиться к Gump, проект должен предоставить два файла XML. Один описывает, как получить доступ к действующему репозиторию CVS или Subversion ; другой - что построить из репозитория и произведенные артефакты. Каждый проект может зависеть от других проектов; эти зависимости объявлены, чтобы Гамп знал правильный порядок построения вещей.

Гамп может создавать сценарии оболочки , проекты Ant и Maven 1 , соответствующим образом настраивая путь к классам . В Ant и Maven 1 встроены специальные перехватчики, которые дают Гампу полный контроль над путями к классам, используемыми для сборки и тестирования приложений. Это позволяет Gump создавать проекты на основе последних версий, даже если собственные файлы сборки проекта имеют жестко закодированные зависимости от статических библиотек в их собственном CVS или репозитории Subversion.

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

Ограничения [ править ]

  • Невозможно заставить разработчиков действовать в соответствии с тем, что вы нарушили электронную почту сборки , кроме неформального давления со стороны коллег.
  • Пока не будет добавлена ​​поддержка Maven , многие проекты Java не могут быть построены. Все последующие проекты могут основываться только на статических версиях предыдущих выпусков, что исключает возможность сборки и тестирования ночного кода, что является одной из ключевых особенностей проекта.
  • Может быть сложно диагностировать, почему что-то не удалось, поскольку разработчики проектов, созданных gump, не имеют доступа к машине, а только к ночным отчетам о состоянии.
  • Поскольку это открытый сервис для всех проектов с открытым исходным кодом, в проекте было приложено меньше усилий, чтобы упростить создание новой установки gump, что затрудняет частное использование. В частности, не существует автоматического способа предоставить серверу Gump статические файлы JAR, от которых зависят многие проекты.
  • Если базовый проект, такой как Ant , Xerces или JUnit, не удается собрать, то большая часть Gump блокируется до тех пор, пока не будет исправлено исправление. В зависимости от характера сбоя это может быть быстрая процедура или может занять больше времени. [1]

Ссылки [ править ]

  1. ^ ПАРТИЯ: все одеты, некуда идти

Внешние ссылки [ править ]

  • Официальный веб-сайт