Abbiamo impostato CruiseControl.NET per l'integrazione continua di un certo numero di nostri progetti.Possiamo dire a CruiseControl.NET di ignorare gli errori di timeout del controllo sorgente?
Stiamo utilizzando un blocco <cb:define>
per assicurarsi che tutte le nostre operazioni di controllo del codice sorgente siano eseguite allo stesso modo e per mantenere la configurazione DRY.
Ogni tanto riscontriamo un problema che causa la generazione di mostrare "Eccezione". Il messaggio è il seguente:
ThoughtWorks.CruiseControl.Core.CruiseControlException: Source control operation has timed out.
at ThoughtWorks.CruiseControl.Core.Sourcecontrol.ProcessSourceControl.Execute(ProcessInfo processInfo)
at ThoughtWorks.CruiseControl.Core.Sourcecontrol.Svn.GetModifications(IIntegrationResult from, IIntegrationResult to)
at ThoughtWorks.CruiseControl.Core.Sourcecontrol.QuietPeriod.GetModifications(ISourceControl sourceControl, IIntegrationResult lastBuild, IIntegrationResult thisBuild)
at ThoughtWorks.CruiseControl.Core.IntegrationRunner.GetModifications(IIntegrationResult from, IIntegrationResult to)
at ThoughtWorks.CruiseControl.Core.IntegrationRunner.Integrate(IntegrationRequest request)
La sezione comune di configurazione è la seguente:
<sourcecontrol type="svn">
<trunkUrl>http://ourserver/svn/$(project-svn-path)/trunk/</trunkUrl>
<executable>C:\Program Files\CollabNet Subversion Server\csvn.exe</executable>
<username>user</username>
<password>password<password>
<revert>true</revert>
</sourcecontrol>
vorrei ignorare questo errore specifico, se possibile.
Quali modifiche devo apportare?
Sicuramente se si ignora un timeout del controllo dell'origine, non si costruisce in modo affidabile la revisione più recente e la build di "integrazione continua" non ha senso? –
@David M: Bene, questo di solito accade durante una finestra SLA quando il server SVN si ferma per manutenzione. Questa non è una circostanza eccezionale, quindi mi piacerebbe ignorare il problema se succede per meno di qualche ora. –
Abbiamo un server svn ospitato su Internet e una connessione Internet traballante. Ogni volta che la connessione si interrompe, abbiamo una build fallita, che non è utile a tutti. Quindi grazie per la domanda. –