Мы используем Hudson (1.398) и плагин Perforce (1.1.14) для непрерывной интеграции.Сборка инициируется каждый раз, когда происходит повторная проверка с триггером Perforce, который вызывает:
wget "http://username:password@hudsonserver:8080/job/hudson_projname_test/buildWithParameters?token=SECRETTOKEN&CHANGENUM=315311&SUBMITTER=username"
Косоль Гудзона выглядит следующим образом:
Started by remote host 169.169.69.69
Using master perforce client: projname_a0_username_hudson
[hudson] $ /eda/perforce_2010.1/x86_64/bin/p4 workspace -o projname_a0_username_hudson
Last sync'd change: 315267
[hudson] $ /eda/perforce_2010.1/x86_64/bin/p4 counter change
[hudson] $ /eda/perforce_2010.1/x86_64/bin/p4 -s changes //projname_a0_username_hudson/...@315268,@315311
Sync'ing workspace to changelist 315267.
[hudson] $ /eda/perforce_2010.1/x86_64/bin/p4 sync //projname_a0_username_hudson/...@315267
Sync complete, took 3956 ms
[hudson] $ /bin/sh -xe /tmp/hudson30156.sh
+ p4 sync @315311
+ runsim
Проблема в том, что Хадсон, похоже, небыть синхронизированным с последним списком изменений, но вместо этого с рядом с последним списком изменений, поэтому я должен "вручную" синхронизировать список изменений, который был передан через параметр.Но b / c этого Hudson использует неправильный список изменений, когда уведомляет отправителя о том, что он, возможно, нарушил сборку.
Кто-нибудь еще заметил такое поведение с Hudson / Perforce, и если да, то как вы это исправили?