Executando o Cruise Control .NET como um Serviço

Venho configurando e testando o CCNet há um tempo, agora usando o Virtual PC para hospedá-lo. Tudo correu bem e foi decidido transferir a configuração para um local do servidor - o que correu tão bem quanto o esperado. Alguns ajustes e pontapés e eu estava funcionando como antes.

O problema é que agora precisamos executar o CCNet como um serviço que está se mostrando problemático.

Eu configurei um usuário no nível do domínio com os mesmos direitos de acesso que eu (afinal, o aplicativo do console está sendo executado por mim há cerca de três meses) e configurei o serviço para ser executado sob esse usuário.

Comecei o serviço e ele desligou! [Não vou aborrecê-lo com os detalhes de forçar o serviço a parar e fechar os soquetes que foram mantidos abertos]. Quando finalmente consegui executar o console novamente, executei um 'Executar como' e inseri os detalhes do usuário 'cruisecontrol', clique em OK e vi que havia um problema ao acessar o SVN via https. Eu classifiquei isso executando o IE como 'cruisecontrol', navegando até o repositório e aceitando / instalando o certificado. Em seguida, quando executei o aplicativo de console como 'cruisecontrol', ele trava após as seguintes linhas:

2009-01-15 16:55:50,994 [Pepsi Webservices:DEBUG] Running Subversion with arguments : log --xml --limit 1 <a href="https://ash-dev-005.[path" rel="nofollow noreferrer">https://ash-dev-005.[path</a> to trunk]

2009-01-15 16:55:51,478 [Pepsi Webservices:DEBUG] Authentication realm: <a href="https://ash-dev-005.[path" rel="nofollow noreferrer">https://ash-dev-005.[path</a> to repository] Subversion Repositories

Após o tempo limite, eu posso fechar o console, executá-lo normalmente (ou seja, como eu) e ele funciona bem. Tentei fazer login no servidor como o usuário 'cruisecontrol' e tentei executar o console, mas com o mesmo resultado.

Agora, aqui está o seguinte: Hoje de manhã, entrei no servidor como o usuário 'cruisecontrol' e abri uma janela de comando. Naveguei para o tronco do meu projeto e digitei 'svn update' e fui solicitada uma senha.

Isso não é surpreendente, mas a linha acima desse prompt era a linha 'Região de autenticação: ...' acima! Olhando para o arquivo de log, com certeza logo após o processo ser encerrado pelo CCNet, é solicitada uma senha. O CCNet / SVN está aguardando a entrada da senha e atingindo o tempo limite? Se sim, por que não está usando o arquivo de configuração?

Digitei a senha e a atualização prosseguiu sem problemas (para que o usuário do cruisecontrol tenha permissões para acessar o repositório pelo servidor). Eu digitei o comando novamente e não foi solicitado uma segunda vez, então tentei abrir uma nova janela de comando e execute novamente o comando - ainda não solicitou uma senha, então efetuei logon e logon novamente (como cruisecontrol) e tentei novamente, mas ainda não foi solicitado .

A boa notícia é que, quando executo o aplicativo do console como usuário do cruisecontrol (conectado como cruisecontrol ou apenas usando Executar como) tudo parece estar bem.

Então, qual é a minha pergunta? Bem, por que o CCNet não está usando a senha no arquivo de configuração? Como a inserção da senha no prompt de comando resolveu o problema (e ele persistirá)?

Todas as sugestões / idéias apreciadas.

questionAnswers(4)

yourAnswerToTheQuestion