Отчеты cctray создаются успешно, когда круиз-контроль не может достичь репозитория исходного кода - PullRequest
3 голосов
/ 16 ноября 2011

Когда репозиторий системы контроля версий недоступен, круиз-контроль продолжает проверять наличие изменений. Хотя последняя сборка была успешной, приборная панель сообщает об ошибке, но cctray сообщает об успехе.

Есть ли какой-нибудь способ, которым я могу уловить этот сценарий и согласиться с этими двумя?

Ответы [ 2 ]

1 голос
/ 23 августа 2014

Это на самом деле связано с проблемой в CruiseControl;не сам CCTray.

В случае сбоя управления источником (скажем, из-за тайм-аута или сбоя соединения) будет выполнено следующее:

  1. CruiseControl установит состояние проекта на Exception, поскольку проект находится в состоянии ошибки
  2. CruiseControl НЕ изменит состояние последней сборки , поскольку сборка не произошла
    • поэтому, если предыдущая сборка прошла успешно - проект сообщит Success для статуса последней сборки

CruiseControl только сообщает - изначально - статус последней сборки через API, который использует CCTray.Заставить его проверить статус проекта 1028 * сложнее и в итоге становится менее эффективным.Таким образом, CCTray сообщает о «статусе» как статус последней сборки , а не как их гибрид.

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

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

В идеале CCTray - и projectTrigger s, et.al - проверил бы и статус проекта и последний статус сборки и сообщил бы результат как комбинацию обоих.

1 голос
/ 05 декабря 2012

Да, этот сценарий может возникнуть, когда CCTray зависает на локальном ПК.Если проблема возникает на панели инструментов, это означает, что сервер IIS зависает там, где работает сервер CruiseControl.

Чтобы устранить эту проблему, нужно определить, где находится проблема.Если проблема на уровне CCTray, перезапустите CCTray.Если проблема находится на уровне панели мониторинга, перезапуск IIS должен устранить ее.

...