Question

Je commence tout juste à configurer un serveur d'intégration continue à l'aide de CruiseControl.Net. Pour que les choses restent simples au début, j'ai utilisé la tâche Visual Studio pour effectuer la construction, en la pointant sur le fichier de solution du projet. Cependant, lorsque le processus de construction se produit, CC.Net récupère avec succès la dernière version source de Subversion et semble exécuter la commande devenv. Le processus de construction échoue alors, mais rien n’explique pourquoi. Voici le résultat:

  

ÉCHEC DE LA CONSTRUCTION
  Projet: MyProject
  Date de construction: 2009-09-09 16:31:13
  Durée: 00:00:49
  Demande d'intégration: le tableau de bord a déclenché une construction (ForceBuild)

     

Modifications depuis la dernière construction (0)

     

Tests exécutés: 0, Échecs: 0, Non exécutés: 0,   Temps: 0 secondes Aucun test exécuté   le projet n'a pas de tests

Il n'y a rien d'autre affiché sur la page. Mes journaux XML ne montrent aucun résultat de construction non plus.

Ceci est mon fichier de configuration:

<!--<ccnetconfig><configurationVersion>1.4</configurationVersion></ccnetconfig>-->
<cruisecontrol>
  <project name="MyProject">
    <workingDirectory>C:\Users\Builder\Desktop\builder-pc\MyProject</workingDirectory>
    <sourcecontrol type="svn">
      <trunkUrl>svn://builder-pc/MyProject/trunk</trunkUrl>
      <workingDirectory>C:\Users\Builder\Desktop\builder-pc\MyProject</workingDirectory>
      <executable>C:\Program Files\Subversion\bin\svn.exe</executable>
      <autoGetSource>True</autoGetSource>
      <tagOnSuccess>True</tagOnSuccess>
    </sourcecontrol>
    <tasks>
      <devenv>
        <solutionfile>C:\Users\Builder\Desktop\builder-pc\MyProject\trunk\MyProject.sln</solutionfile>
        <configuration>release</configuration>
        <buildtype>Rebuild</buildtype>
        <executable>C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe</executable>
        <buildTimeoutSeconds>600</buildTimeoutSeconds>
      </devenv>
    </tasks>
  </project>
</cruisecontrol>

J'ai délibérément supprimé des éléments tels que le nom d'utilisateur et le mot de passe SVN.

La création de la solution à l’aide de l’invite de commande VS fonctionne, mais avec des avertissements. Ceci utilise les mêmes swtiches que CC.Net utiliserait.

Quelqu'un peut-il aider? Est-ce un échec parce qu'il n'y a pas de tests unitaires à exécuter ou à cause des avertissements? Ou est-il préférable de passer à MSBuild ou à NAnt au lieu d’utiliser la tâche Visual Studio?

Était-ce utile?

La solution

Si le journal de construction ne contient aucune information utile, essayez de consulter le journal du serveur pour plus d'informations sur l'incident.

Autres conseils

Je pense que la raison pour laquelle vous ne voyez aucune sortie dans les fichiers journaux xml est parce que vous n'avez pas de section <publishers> appropriée dans votre <project>.

Essayez:

<publishers>

  <xmllogger />

</publishers>

Essayez d’exécuter la construction avec MSBuild au lieu de devenv.exe. Si le journal est fusionné dans le fichier xml mais ne s'affiche pas correctement dans le tableau de bord Web, assurez-vous que les transformations xsl sont activées. En outre, comme l'a mentionné Scrappydog, ajoutez l'éditeur xmllogger (bien qu'il soit ajouté par défaut si aucun éditeur n'est défini, vous pouvez le vérifier dans la page "Configuration du projet" du tableau de bord.

Vous devez utiliser devnev.com (notez que l'extension de fichier est .com et non .exe) dans le même chemin (par exemple, C: \ Program Files \ Microsoft Visual). Studio 9.0 \ Common7 \ IDE) au lieu de devnev.exe.

Le bloc <executable> est facultatif et provient de le CruiseControl. La documentation NET utilisera la dernière version de devnev.com, pas devnev.exe.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top