Qualcuno sa come ascoltare costruire gli eventi da un processo cctray già in esecuzione, in C #?
-
21-08-2019 - |
Domanda
Ho fatto una domanda di C # e sto cercando di capire se posso attingere a eventi di generazione di cctray (vassoio cruise control)? Non voglio di re-inventare la ruota, voglio solo sapere quando la mia build morire o vivere (su una macchina client) in modo che il mio personalizzato C # applicazione può eseguire uno specifico insieme di routine.
Soluzione
Si potrebbe aggiungere la libreria remota CruiseControl come refrence e creare un'istanza di CruiseManagerFactory e questa linea si otterrà lo stato di tutti i progetti. ServerUri è una stringa nel formato di tcp: // ServerName: Port / CruiseManager.rem
ProjectStatus[] currentStatuses = managerFactory.GetCruiseManager(ServerUri).GetProjectStatus();
In questo esempio ho chiamato il mio, ovviamente, istanza di CruiseManagerFactory managerFactory. La matrice di ProjectStatus ha quindi lo stato corrente di tutti i progetti all'indirizzo di ServerUri.
Altri suggerimenti
Qual è il motivo per cui non è possibile utilizzare il tool di creazione di farlo?
per esempio. in Nant , è possibile specificare la destinazione da eseguire quando la generazione non riesce o riesce utilizzando la nant.onfailure ed proprietà nant.onsuccess . Negli obiettivi di build, si potrebbe chiamare l'applicazione C # tramite eseguire compiti.
CruiseControl ha onSuccess e onFailure editori ... ma stranamente non li può trovare in CruiseControl .net.