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?

Foi útil?

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.

  1. Você pode postar toda a configuração do projeto CCNet? Isso pode ter algo a ver com gatilhos, por exemplo.
  2. Qual versão do CCNet você está usando?
  3. 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.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top