CruiseControl.net esporádicamente no logra extraer de Git

Tengo un server CruiseControl.net que sigue informando comstackciones rotas con el post "Failing Tasks: Git: CheckForModifications"

La exception dada en el logging es:

ThoughtWorks.CruiseControl.Core.CruiseControlException: operación de control de origen fallida: ssh_exchange_identification: connection cerrada por host remoto fatal: el extremo remoto colgó inesperadamente Proceso de command: C: \ Program Files \ Git \ cmd \ git.cmd fetch origin

Lo que es realmente extraño es que este error no ocurre todo el time. Forzar una compilation hace que CC se arrastre correctamente y continúe trabajando durante un time (hasta que esto ocurra nuevamente).

Alguna otra información que podría ser relevante:

  • Esto sucede con más de una fuente para Git (he probado GitHub y Beanstalk)
  • Esto sucede en varios serveres, alojados localmente y en la nube de AWS
  • La authentication está utilizando una key SSH sin frase de contraseña

No puedo garantizar que esto sea lo mismo que su problema, pero he visto un problema similar de vez en cuando cuando CC intenta extraer de SVN a través de HTTPS. Lo resolví enrutando ese tráfico alnetworkingedor del proxy corporativo, que a veces acababa con la connection si tardaba más de unos pocos segundos en responder.

¡El time de intervalo de CheckForModifications es probablemente largo y la connection ssh se cierra y al volver a abrir ocasionalmente falla!

Podría intentar agregar lo siguiente a su file .ssh / .gitconfig , de esa forma todas las conexiones ssh enviarán un 'keep alive' cada 30 segundos y mantendrán las conexiones siempre activas.

KeepAlive = yes ServerAliveInterval = 30