Очередь в КруизКонтроль
Я использую CruiseControl для управления своими сборками. Тем не менее, я столкнулся с небольшой проблемой при постановке в очередь нескольких сборок. Очередь одной дополнительной сборки работает нормально, но при попытке поставить в очередь более одной дополнительной сборки, сборка завершится неудачно.
Есть ли способ увеличить размер очереди в CruiseControl?
Когда разработчик хочет что-то построить на сервере сборки, он отправляет некоторую информацию через pythonscript другому pythonscript на сервере. Этот сценарий обновляет config.xml необходимой информацией и принудительно обновляет конфигурацию с помощью http://localhost:8000/invoke?operation=reloadConfigFile&objectname=CruiseControl+Manager%3Aid%3Dunique
, Затем сборка форсируется http://localhost:8000/invoke?operation=build&objectname=CruiseControl+Project%3Aname%3D%22"+productName
команда.
Это правильный способ добавить проекты в очередь сборки?
Скрипты сборок, вызываемые из CruiseControl, нуждаются в идентификаторе версии для ClearCase, который должен обновляться для каждой сборки. Таким образом, конфигурация для проектов в config.xml также должна будет измениться.
2 ответа
Я нашел проблему. Когда разработчик хочет что-то построить на сервере, верхний продукт загружается на сервер сборки через ClearCase. Этот топ-продукт, в свою очередь, имеет свой собственный конфигурационный файл, в котором указаны все его субпродукты. Проблема довольно проста: первый файл конфигурации перезаписывается для каждого проекта, в результате чего все проекты, кроме первого и последнего, становятся выгруженными. Имел больше общего с ClearCase, чем на самом деле CruiseControl:P
Обычно все ваши проекты сконфигурированы в вашем config.xml(который вы оставляете в основном нетронутым).
Как вы указали в комментариях, вы должны обновить определенный идентификатор для buildscripts.
Возможно, вам следует обновить файл свойств или что-то подобное для каждого проекта, который содержит этот идентификатор. Этот файл может быть отредактирован скриптом python, так что постоянное обновление config.xml больше не потребуется.
Я предполагаю, что обновление / перезагрузка cruisecontrol приводит к сбоям в работе.