Ich habe einen Job namens "Entwicklung" und ein anderes Projekt namens "Code-Analyse". Im Moment haben wir zwei verschiedene Jobs und verschiedene Arbeitsbereiche, aber denselben Code. Gibt es eine Möglichkeit, den gleichen Arbeitsbereich für mehrere Jobs zu verwenden?
Ich habe die in Jenkins verfügbaren Plugins überprüft, aber keine passende gefunden.
Angenommen, Ihr "Entwicklungs" -Jenkins-Arbeitsbereich ist /var/workspace/job1
. Klicken Sie auf der Konfigurationsseite für den Auftrag "Code-Analyse" unter der Registerkarte General
auf Advanced...
und wählen Sie die Option Use custom workspace
und geben den gleichen Arbeitsbereich /var/workspace/job1
ab Ihrem "Entwicklungs" -Job.
Es gibt ein Jenkins-Plugin, mit dem Sie einen gemeinsamen Arbeitsplatz erstellen und diese für jeden Job einrichten können, der die Dateien aus dem angegebenen Repository benötigt.
Anwendungsfall:
Ähnlich wie bei Ihren Anforderungen erstellen Sie zunächst zwei Jobs aus demselben Git-Repository, gehen dann zu "Jenkins verwalten" und erstellen einen freigegebenen Arbeitsbereich . Und zeigen Sie darauf, bei jedem Auftrag, den Sie aus diesen Dateien lesen müssen.
Jenkins Plugin
https://wiki.jenkins-ci.org/display/JENKINS/Shared+workspace+plugin#
PS: Sie sollten sich mit "Bekannte Probleme" befassen, da dies für Ihre Anforderungen von entscheidender Bedeutung sein könnte.
manchmal, bei einem frisch kopierten Auftrag, wird der URL-Parameter für den gemeinsam genutzten Speicherplatz nicht in der Konfiguration gespeichert. Speichern Sie den Auftrag zweimal, um sicherzugehen.
^^ Das hier ist immer noch ungelöst, ich habe es versucht und es passiert immer noch. Nach einigen Speichervorgängen (nur um sicherzugehen) läuft der Job einwandfrei.
wenn Sie Use custom workspace
nicht finden konnten, können Sie es unter Ihrem Projekt configure>General>Advanced>Use custom workspace
finden.