Question

J'ai mis en place un CCNET et dans l’ensemble, il fonctionne bien. Il interroge le serveur SVN et extrait le code s'il constate des modifications. Sauf que c'est quand il y a un checkin pendant la construction. Actuellement, la construction et l’exécution du test prennent environ 3 à 4 minutes, si quelqu'un vérifie le code lors de la construction, le contrôle crusie ne reconnaît pas l’archivage et attend qu’il y ait un archivage une fois la génération exécutée.

Pourquoi cela pourrait-il être?

Voici la partie svn du fichier ccnet.config:

<sourcecontrol type="svn">
    <executable>svn.exe</executable>
    <trunkUrl>http://*******/svn/repos/psl/AcademyPro/ASP%20.Net/trunk/</trunkUrl>
    <workingDirectory>C:\CrusieControlProjects\AcademyPro\</workingDirectory>
    <username>******</username>
    <password>******</password>
    <autoGetSource>true</autoGetSource>
</sourcecontrol>

Édité pour des raisons de clarté Le problème ne concerne pas les contrôles atomiques. Un enregistrement peut se terminer, CCNET crée l'application et commence à exécuter des tests. À ce stade, quelqu'un d'autre effectue un autre enregistrement. Une fois le test terminé, j’espérerais que CCNET détecte l’enregistrement effectué au cours de l’exécution du test.

Cela ne se produit pas, l'enregistrement est oublié et une version que je m'attendais est manquée.

S'agit-il du comportement attendu, ou est-ce que je ne comprends pas ce que disait @Jeff Mattfield?

Était-ce utile?

La solution 4

L'heure sur le serveur Subversion était d'environ 2 heures sur le serveur Cruisecontrol. J'ai corrigé cela et les checkins semblent maintenant fonctionner beaucoup plus facilement.

Autres conseils

Un commit Subversion est atomique. Il n'est pas disponible pour la caisse tant qu'il n'a pas été complété sans erreur. La mise à jour ou l'extraction à partir d'un référentiel lors d'une validation parallèle entraîne l'état du référentiel avant cette validation.

En d'autres termes, CC.NET récupère le contenu du référentiel après la dernière validation réussie.

Je n'ai jamais eu ce problème et je travaille avec SVN + CCNet depuis quelques années maintenant.

  1. Pouvez-vous publier la configuration complète du projet CCNet? Cela pourrait avoir quelque chose à voir avec les déclencheurs, par exemple.
  2. Quelle version de CCNet utilisez-vous?
  3. Vous dites que CCNet détecte uniquement les modifications survenues après la construction. OK, mais lorsque vous consultez le rapport de construction du projet (" Modifications depuis la dernière construction "), ne montre-t-il que ceux qui se sont produits après la construction précédente ou tous (y compris ceux qui se sont produits) pendant la version précédente)? ??

Vérifiez que ccservice.exe.config / ccnet.exe.config a le niveau de journal de débogage défini:

<configuration>
  <configSections>
  ...
    </log4net>
      <root>
        <level value="DEBUG"/>
      <root>
    </log4net>
  ...
  </configuration>
</configSections>

Vérifiez ensuite la sortie de la sous-version dans le fichier ccnet.log pour la révision de la sous-version.

2009-06-05 10:34:41,816 [15336:DEBUG] [cc-config svn.exe] <logentry
2009-06-05 10:34:41,816 [15336:DEBUG] [cc-config svn.exe]    revision="1057">

Assurez-vous que la révision est la dernière révision avec les commits sous le chemin svn trunkUrl (http: //*******/svn/repos/psl/AcademyPro/ASP%20.Net/trunk/).

Sinon, recherchez dans le journal et le fichier d'état des indices supplémentaires.

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