Frage

Ich bin mit einem Server das gleiche Projekt bauen sowohl kontinuierlich als auch jede Nacht; jedoch möchte ich den Nightly Build nur zu bauen, wenn eine Änderung im Laufe des Tages vorhanden ist. Ich hoffe, dies mit der Einschränkung zu erreichen, die sowohl die denselben Arbeitsordner baut verwenden .

Die beiden Optionen Ich erwäge sind:

  1. Polling der kontinuierliche Aufbau und nur bauen die nächtliche bauen, wenn eine kontinuierliche Build aufgetreten ist -. Möglicherweise einige Token-System (kontinuierliche Build setzt Token, nächtliche Token löscht)

  2. eine vorkompilierte Aufgabe Ausführen des Quellcodes zur letzten Build Zeit

  3. zurückzukehren

Ich bin Neigung in Richtung der zweiten Option, da sie die Build-Skripte abkoppelt, aber es scheint eine viel schwierigere Aufgabe zu sein.

Vorschläge und Tipps, um dies zu tun würden geschätzt!

Added Informationen:

  

Das CI-Build ist eine schnelle Build von der   Lösung in einer Konfiguration und   vielleicht läuft einige schnelle Unit-Tests.

     

Die Nightly Build reinigt den Build   Umwelt, baut die Software, die Pakete in ein   Installationsprogramm läuft erweiterten Tests, Etiketten   die Quellcode-Repository, setzt   das Installationsprogramm auf einer Serverfreigabe für   manuelle Tester zu holen, und E-Mails   das Testteam, dass eine prüfbare build   ist gemacht worden.

     

ich nur wollen, dass die   baut jede Nacht auftreten, wenn es gab   all Check-In im Laufe des Tages, so dass Tester werden nicht mit Wiederholung E-Mail für im Wesentlichen der gleiche Build geplagt.

War es hilfreich?

Lösung 2

Ich bin glücklich mit meiner neuen Lösung ...

Ich verwende eine Multitrigger mit einem scheduleTrigger und prjectTrigger auf dem nächtlichen Build (besser nennen vollständige Erstellung) und WriteModification / ReadModification Paare die Änderungshistorie zu propagieren wie in diese Frage .

Andere Tipps

Ich könnte vorbei sein, diese Aufgabe zu vereinfachen, kann aber nicht Sie einfach Setup zwei Auslöser für das Projekt? Ein Intervall-Trigger für die kontinuierliche baut und ein Zeitplan-Trigger mit der IfModificationExists Bedingung für die nächtliche baut.

<triggers>
  <intervalTrigger seconds="60" name="Continuous" />
  <scheduleTrigger time="23:30" buildCondition="IfModificationExists" name="Scheduled">
      <weekDays>
        <weekDay>Monday</weekDay>
      </weekDays>
  </scheduleTrigger>
</triggers>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top