Wie kann ich einen Server über Jenkins starten, ohne den Server-Trace in der Jenkins-Konsole auszugeben?

0

Ich habe ein Windows-Batch-Skript geschrieben, um einen Apache-Tomcat-Server über Jenkins zu starten. Wenn der Server gestartet wird, wird die Server-Trace in der Jenkins-Konsole angezeigt. Aber plötzlich schließt sich das Fenster des Servers und sagt Durchgesickerte Dateideskriptoren in Jenkins Konsole. Warum passiert das? Gibt es eine Möglichkeit, das Batch-Skript auszuführen, ohne die Server-Ablaufverfolgung in der Jenkins-Konsole auszugeben?

Mathew
quelle

Antworten:

1
  1. Um die Server-Ablaufverfolgung stummzuschalten, können Sie die Ausgabe von Ihrem bat nach NUL umleiten. Beispiel: Ihr.bat & gt; NUL 2 & gt; & amp; 1 Weitere Informationen zum Umleiten der Ausgabe unter Windows finden Sie hier: http://www.robvanderwoude.com/battech_redirection.php

  2. Ihr zweites Problem mit Jenkins scheint ein erwartetes Verhalten zu sein. Weitere Erklärungen finden Sie im offiziellen Jenkins-Wiki: https://wiki.jenkins-ci.org/display/JENKINS/Spawning+processes+from+build Beachten Sie die Informationen in der blauen Box - das ist der Fehler, den Sie erhalten.

Ich gehe davon aus, dass Sie versuchen, Ihren Server entweder mit einer Build-Aktion (Windows-Stapelbefehl ausführen) oder einem Post-Build-Schritt zu starten. Dies macht es zu einem integralen Bestandteil Ihres Builds und verhindert somit den Abschluss. Zu diesem Zweck sollten Sie das Batch Tasks Plugin für Jenkins verwenden, da dies den Build nicht blockiert. Ihr Build wird erfolgreich abgeschlossen und die Task wird separat ausgeführt.

pKami
quelle