2010-07-16 13 views
0

Je construis un shell asp.net au dessus de CCNet 1.5, où j'envoie des commandes comme build force à CCNet via l'API. L'espace de noms ThoughtWorks.CruiseControl.Remote a des méthodes pour obtenir des informations de CCNet sur la construction, comme le statut, le temps écoulé, etc.Puis-je obtenir la sortie MSBuild de CCNet api?

Je voudrais obtenir par programme la sortie de la tâche MSBuild de l'API CCNet, mais je n'ai pas vu des méthodes pour cela. Est-ce possible? Ou ai-je besoin de scanner les fichiers de sortie sur le disque ou quelque chose? Aucune suggestion?

Répondre

0

La solution a consisté à mettre en œuvre une coutume IMergeTask et enregistrer le journal base de données de construction. À la fin, il n'est pas possible d'obtenir le journal de construction à travers l'API.

2

Vous ne savez pas si vous pouvez obtenir le numéro de journal de construction, mais si vous pouvez récupérer le fichier journal XML à partir du tableau de bord?

http://buildsrv/ccnet/server/local/project/ /build/log20100716115659.xml/XmlBuildLog.xml

(CC.NET version 1.5.6804.1)

+0

Non, il ne semble pas que je peux obtenir le numéro de journal par l'api :( – Carvellis

1

Vous pouvez obtenir tout ce que grâce à l'API CCNet comme:

var remoteCruiseManagerFactory = new CruiseServerClientFactory(); 

var client = remoteCruiseManagerFactory.GenerateRemotingClient("tcp://build:21234/CruiseManager.rem"); 

var history = client.GetModificationHistoryDocument("MyProjectName"); 

client.LostOfMoreGoodStuff();