Cruisecontrol.net faltando checkins
-
03-07-2019 - |
Pergunta
eu tenha configurado uma CCNET e, no geral, está funcionando bem. Ele controla o servidor SVN e verifica o código se vê quaisquer alterações. Exceto, isto é, quando há um check-in durante a construção. Atualmente, a construção e funcionamento de teste leva cerca de 3 -. 4 minutos, se verifica qualquer um no código durante o controle de construção crusie não reconhece o check-in e espera até que haja um check-in após a construção foi executado
Por que isso pode ser?
Esta é a porção svn do arquivo ccnet.config:
<sourcecontrol type="svn">
<executable>svn.exe</executable>
<trunkUrl>http://*******/svn/repos/psl/AcademyPro/ASP%20.Net/trunk/</trunkUrl>
<workingDirectory>C:\CrusieControlProjects\AcademyPro\</workingDirectory>
<username>******</username>
<password>******</password>
<autoGetSource>true</autoGetSource>
</sourcecontrol>
editado para Clarity O problema não tem a ver com checkins atômicas. Um check-in pode completar, CCNET constrói o aplicativo e inicia testes de corrida. Neste ponto, alguém faz outro checkin. Uma vez que a execução do teste foi concluída eu esperaria CCNET para manchar o check-in que foi feito durante a execução do teste.
Este não acontecer, o check-in é perdida e uma compilação que estou esperando é perdido.
É este o comportamento esperado, ou sou eu sem entender o que @ Jeff Mattfield estava dizendo?
Solução 4
O tempo no servidor de subversão foi cerca de 2 horas fora do horário no servidor cruisecontrol. Eu reparei isso e checkins agora parecem estar a correr muito mais suave.
Outras dicas
A submissão do Subversion é atômica. Ele não está disponível para check-out até que tenha concluído sem erros. Atualizando ou check-out de um repositório durante um paralelo commit resultados no estado do repositório antes que cometer.
Em outras palavras, CC.NET recebe o repositório contido após a última submissão com sucesso.
Eu nunca tive esse problema e eu tenho trabalhado com SVN + CCNet por um par de anos agora.
- Você pode postar toda a configuração do projeto CCNet? Isso pode ter algo a ver com gatilhos, por exemplo.
- Qual versão do CCNet você está usando?
- Você diz CCNet só detecta as mudanças que ocorreram depois a construção. OK, mas quando você olha para o relatório de compilação do projeto ( " As modificações desde a última construção "), ele mostra apenas aqueles que ocorreu após a compilação anterior ou todos eles (incluindo os que ocorreram durante a compilação anterior)?
Verifique se ccservice.exe.config / ccnet.exe.config tem depuração set nível de log:
<configuration>
<configSections>
...
</log4net>
<root>
<level value="DEBUG"/>
<root>
</log4net>
...
</configuration>
</configSections>
Em seguida, verifique a saída de subversão na ccnet.log para a revisão subversão.
2009-06-05 10:34:41,816 [15336:DEBUG] [cc-config svn.exe] <logentry
2009-06-05 10:34:41,816 [15336:DEBUG] [cc-config svn.exe] revision="1057">
Certifique-se de que a revisão é a última revisão com commits sob o svn trunkUrl. (Http: //*******/svn/repos/psl/AcademyPro/ASP%20.Net/trunk/) caminho
Caso contrário, verifique o log e estado-arquivo por mais pistas.