Frage

Ich bin erst am Anfang eines Continuous Integration Server CruiseControl.Net einzurichten. Um die Dinge einfach zu beginnen, habe ich das Visual Studio-Task, um den Build auszuführen, ist es an der Projektlösung Datei verweist. Wenn jedoch der Build-Prozess auftritt, wird CC.Net erfolgreich die neueste Source-Version von Subversion und scheint den devenv Befehl auszuführen. Der Build-Prozess fehlschlägt, dann, aber es gibt keine Erklärung, warum. Hier ist die Ausgabe:

  

BUILD FAILED
  Projekt: MyProject
  Datum Baujahr: 2009-09-09 16.31.13
  Laufzeit: 00.00.49
  Integration Anfrage: Armaturenbrett ausgelöst einen Build (forcebuild)

     

Änderungen seit dem letzten Build (0)

     

Tests laufen: 0, Fehler: 0, nicht laufen: 0,   : 0 Sekunden keine Tests starten Diese   Projekt keine Tests haben

Es gibt nichts anderes auf der Seite angezeigt. Meine XML-Protokolle zeigen keine Build-Ergebnisse auch nicht.

Das ist meine Konfigurationsdatei:

<!--<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>

ich Dinge wie die SVN Benutzernamen und Passwort absichtlich entfernt haben.

Der Aufbau der Lösung der VS-Eingabeaufforderung funktioniert mit, wenn auch mit Warnungen. Dies wird unter Verwendung des gleichen swtiches der CC.Net verwenden würden.

Kann mir jemand helfen? Versagt es, weil es keine Unit-Tests laufen sollen, oder wegen der Warnungen? Oder ist es am besten zu MSBuild oder NAnt zu wechseln, anstatt das Visual Studio-Task zu verwenden?

War es hilfreich?

Lösung

Wenn es keine nützlichen Informationen im Buildprotokoll ist, versuchen Sie auf dem Server-Log für Informationen über den Fehler suchen.

Andere Tipps

Ich denke, der Grund, warum Sie keine Ausgabe im XML-Protokolldateien sehen, ist, weil Sie keinen passenden <publishers> Abschnitt in Ihrem <project> haben.

Versuchen:

<publishers>

  <xmllogger />

</publishers>

Versuchen Sie, den Build mit MSBuild statt devenv.exe ausgeführt wird. Wenn das Protokoll in die xml verschmolzen wird, ist aber nicht richtig im Web-Dashboard angezeigt, stellen Sie sicher, dass entsprechende xsl verwandelt aktiviert sind. Auch als Scrappydog erwähnt, fügen Sie den xmllogger Verlag (obwohl es sollte standardmäßig hinzugefügt werden, wenn Sie nicht alle Verlage überhaupt definiert haben, können Sie dies überprüfen, in der ‚Projektkonfiguration‘ Seite auf der Armaturenbrett.

Sie sollten verwenden devnev.com (beachten Sie die Dateierweiterung .com , nicht .exe) im gleichen Pfad (zB C: \ Programme \ Microsoft Visual Studio 9.0 \ Common7 \ IDE), statt devnev.exe.

Der <executable> Block optional ist, und von der CruiseControl.NET Dokumentation , wird es die neueste Version von devnev.com verwenden, nicht devnev.exe.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top