TeamCity: falha no comando 'git fetch'. stderr: Soquete fechado

4

Estamos trabalhando há anos com o TeamCity e há várias semanas com o git como sistema de controle de versão. Eu configurei a integração com o TeamCity e isso tem funcionado bem. Nós temos quatro projetos diferentes que usam o git

Recentemente, alguns dos projetos pararam de funcionar de forma intermitente.

A compilação falha ao iniciar. Mensagens como esta são mostradas em vermelho. (com agentes variados):

Failed to start build #1094 on Teamcityagent8_Continuous5 (and 1 more)

O log da versão diz muito pouco:

[16:12:46]Checking for changes
[16:12:49]Failed to start build
[16:12:49]Failed to collect changes, error: Error collecting changes for VCS repository 'http://foo-app-sprint:7990/scm/BAR/qux.git#master'
'git fetch' command failed.
stderr: Socket Closed
[16:12:49]Cannot calculate build metric 'percent of class coverage' - no value

Estranhamente, existem outros projetos que têm uma configuração muito semelhante e que funcionam bem. Eles usam os mesmos agentes de construção.

Usamos o Atlassian Stash como servidor Git. Eu olhei todos os logs lá, e nada acontece quando eu forço uma corrida na cidade do time. Então, parece que o TeamCity nem chega ao servidor Git.

Se eu testar a conexão do VCS no TeamCity, isso funciona.

Eu testei a reinicialização do Stash. Isso não ajudou.

Estamos trabalhando com as filiais de recursos . Mas eu testei desligando e isso não ajudou.

Hoje, as versões realmente funcionaram algumas vezes, mas o problema retorna.

Estamos usando o TeamCity Enterprise 7.1.4 (build 24331) e o Atlassian Stash v2.1.2. Os agentes de construção e o Stash são executados em servidores Windows.

Alguma ideia do que está errado e como resolvê-lo?

Eu publiquei esta pergunta no fórum de desenvolvedores , mas não obtive respostas.

    
por Klas Mellbourn 22.04.2013 / 14:11

2 respostas

4

Eu tive um problema semelhante com o TeamCity.

Erro: o comando 'git fetch' falhou. . . Causado por commiting ausente.

A busca na minha máquina de desenvolvimento funcionou bem. Além disso, o commit ausente estava presente usando a linha de comando.

$ git show b18264d

Corrigi este erro por:

  1. Clonando um repositório simples do meu repositório local do git

$ git clone --bare MyGitRepo MyGitRepo.git

  1. Substituindo o repositório do git no servidor pelo clone puro de # 1
  2. Parando o serviço do TeamCity
  3. Excluindo C: \ ProgramData \ JetBrains \ TeamCity \ system \ caches \ git
  4. Reiniciando o serviço TeamCity
por 30.03.2015 / 17:06
3

A última parte da resposta do @Fuyu Persimmon é o que consertou para mim.

Você só precisa excluir o cache do git no servidor de compilação (caminho padrão .BuildServer/system/caches/git [fonte] ) e inicie novamente a compilação.

    
por 04.12.2015 / 11:22