Est-ce que quelqu'un sait comment écouter de construire des événements à partir d'un processus de cctray déjà en cours d'exécution, en C #?
-
21-08-2019 - |
Question
Je l'ai fait une application C # et je suis en train de comprendre si je peux puiser dans des événements de construction de cctray (plateau de régulateur de vitesse)? Je ne veux pas réinventer la roue, je veux juste savoir quand mon builds échouent ou réussissent (sur une machine client) afin que mon application personnalisée C # peut exécuter un ensemble de routines.
La solution
Vous pouvez ajouter la bibliothèque à distance CruiseControl comme refrence et créer une instance de CruiseManagerFactory et cette ligne vous obtiendrez le statut de tous les projets. ServerUri est une chaîne dans le format de tcp: // ServerName: Port / CruiseManager.rem
ProjectStatus[] currentStatuses = managerFactory.GetCruiseManager(ServerUri).GetProjectStatus();
Dans cet exemple, je suis évidemment nommé mon exemple de CruiseManagerFactory managerFactory. Le tableau de ProjectStatus a alors l'état actuel de tous les projets à l'adresse de ServerUri.
Autres conseils
Toute raison pour laquelle vous ne pouvez pas utiliser votre outil de construction pour le faire?
par exemple. Nant, vous pouvez spécifier la cible à exécuter lorsque la construction échoue ou réussit à l'aide les propriétés nant.onfailure et nant.onsuccess . Dans les objectifs de construction, vous pouvez appeler votre application C # par l'exécution des tâches.
CruiseControl a onSuccess et éditeurs onFailure ... mais étrangement ne peuvent pas les trouver dans CruiseControl .net.