Что такое «Началось с изменения SCM» в Хадсоне?
Вопрос
Я пытался выяснить, кто спровоцировал неудачную сборку Хадсона.Но я нашел Started by an SCM change
вместо Started by 'UserId'
.Что это значит?
Решение
Это означает, что кто-то проверяется в изменении кода в вашу систему управления версией / Управление конфигурацией программного обеспечения (CVS, SVN, GIT и т. Д.), и HUDSON запустили встроенные на основе этого изменения.
Вы должны быть в состоянии увидеть, кто это был, нажав ссылку «Изменения» в левом меню.
Другие советы
«SCM» - это «Управление конфигурацией программного обеспечения», то есть ваша система управления версиями. HUDSON может быть настроен для опроса CVS, SVN и т. Д. Для изменений в исходном коде и вызвать сборку на основе этого изменения.
Я работал над скриптом, чтобы уволить электронное письмо со списком изменений разработчика, который начал сборку. Потратив пару часов в Интернете, пытаясь искать решение, я нашел обходной путь через файлы журнала HUDSON. Вероятно, не самый чистый способ сделать это, но это работает. Каждый раз, когда HUDSON уволить сборку, он записывает статус сборки в файл журнала. Журнал выглядит что-то вроде этого ..
Started by user <****>
Building remotely on Slave1
$ hg clone -r test_clone https://mercuial.com/build /some/workspace/test_clone
adding changesets
adding manifests
adding file changes
added 355 changesets with 298 changes to 43 files
updating to branch default
41 files updated, 0 files merged, 0 files removed, 0 files unresolved
...
...
Файл журнала находится в ~workspace/jobs/${RELEASE}/builds/${BUILD_NUMBER}/log
. Отказ Затем вы можете проанализировать файл журнала для пользователя. Что-то вроде этого должно работать.
UserId =head -1 ~workspace/jobs/${RELEASE}/builds/${BUILD_NUMBER}/log|cut -d" " -f4
Была такая же проблема в Дженкинсе, когда имя ветки проверки и указанное имя ветки были одинаковыми.Любое изменение заставляло Hudson автоматически создавать догоняющую сборку.
решено:измените имя локальной ветки на что-то другое (или, возможно, не используйте его)