Frage

Ich versuche CruiseControl- 2.7.3 zu verwenden, (das Original), zu baut ein Java-Projekt, das in einer SVN-Repository ist.

Meine Kreuzfahrt-Konfiguration wird mit der SVN-Plugin für die Änderung Satz. Wenn eine Änderung detektiert wird, wird ein Build mit Ant geplant. Die Ant-Build-Datei verwendet dann den svnant Ant-Task eine komplette Kasse des Projektes zu tun. Eine Zeit lang hatten wir diesen Satz einfach Kasse „HEAD“, aber wir haben Fälle gehabt, wo der Bau nicht für ein Check-in oder zwei Feuer, weil die checkin nach der Änderung Satz Prüfung aufgetreten ist, aber vor dem ant Aufruf svn checkout. Als Ergebnis werden wir versuchen, die Ant-Build-Datei zu verwenden, um die Versionsnummer zu ändern, die die Änderung Prüfung abruft.

Die CruiseControl- Konfiguration Referenzseite behauptet, dass eine Eigenschaft, svnrevision ist gesetzt und an die Bauherren übergeben, ebenso wie die Eigenschaft label der labelincrementers . Es scheint nicht eingestellt werden, wenn ich die Kraft build Taste drücken.

Gibt es etwas, was ich tun müssen, um diese gehen?

War es hilfreich?

Lösung

auf dem Code der Suche nach der SVN Quellcodeverwaltung scheint es, dass svnrevision sollte zusammen mit dem Baumeister und damit zusammen auf Ihren Ant-Aufruf übergeben werden. Haben Sie versucht, die Eigenschaft von Ihrem Ant-Skript?

Als Antwort auf die Frage im Kommentar:

Das ist, weil in der Kraft Build Fall gibt es keine Änderung war, so gibt es keine Änderung Revisionsnummer. In diesem Fall wird der svnlabelincrementer die neueste Revisionsnummer übergeben, was Sie vor Ort haben, die auch die letzte sein wird.

Andere Tipps

Der CruiseControl- ant Aufruf hat nichts mit dem (SVN) Etikett zu tun, die als solche contructed wird. Das SVN-Label wird verwendet, um den Build-Namen zu annotieren, während die build.log wirklich nur die Ausgabe von Ameise, wie es durch CruiseControl- geben wird.

Wenn Sie möchten, dass die Revisionsnummer an die Ant-Build-Ausgabe geschrieben haben, gibt es grundsätzlich zwei Möglichkeiten:

Eine Möglichkeit ist ant interact mit SVN in irgendeiner Weise zu haben. Svn in Ameise ist nur über eine contrib ant Aufgabe von tigris, so ist es nicht trivial in Ihre ant-Datei zu setzen. Aber mit dieser in Ihrem Build, könnten Sie tun, um eine svn info und erhalten die Revisionsnummer als ant Eigenschaften zur Verfügung.

Eine andere Möglichkeit ist es, die svnlabelincrementer zu verwenden, um die Revisionsnummer der Bezeichnung zuweisen, und übergeben, die auf das Ant-Skript das buildproperties , die von CruiseControl- zu dem Build-Skripte übergeben werden. Als Jay in den Kommentaren erwähnte, enthält das Etikett nur die letzte erfolgreiche Build-Revision, die nicht das, was er will. Ein Update wurde auf diesem Blog vorgeschlagen, aber das tut Arbeit in der ant-Build-Datei scheint besser geeignet.

Können Sie die Einstellung verwenden Handelssperrzeit? Nach einem Commit kann CruiseControl- für gewisse Zeit warten (etwa 30 Sekunden), bevor ein Build Auftakt.

Es wird abfeuern nicht einzelne baut für jede begehen. Vielmehr verpflichtet etwa zur gleichen Zeit wird ein einziges Build beginnen.

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