2016-09-10 3 views
0

Wenn ein jenkins Job ausgeführt wird, dann werden seine Upstream Projekte Jobs (abhängige Projekte Jobs) automatisch erstellt oder wir müssen Upstream Projekte Job separat ausführen, dann diesen Job?Wenn ein jenkins-Job ausgeführt wird, werden die Jobs für Upstream-Projekte automatisch erstellt, oder wir müssen den Job für Upstream-Projekte getrennt von diesem Job ausführen.

Wenn ein Job ausgeführt wird, werden die Downstream-Projekte automatisch ausgeführt oder nicht?

Ich habe 4 Jobs

Job-2, Job-3 hängt von Job-1.

Job-4 hängt von Job-1, Job-2, Job-3 ab.

Hinweis: Job-1, Job-2, Job-3-Java-Projekte und Job-4-Web-Projekt.

Ich brauche JOB-4 als Krieg dann, welcher Job soll ich laufen und wie ich konfigurieren Jobs vor, nach

+0

Bitte geben Sie mehr Kontext: Was haben Sie schon versucht? Wenn Sie Jenkins-Pipelines verwenden, geben Sie auch einen Code an. – Pom12

Antwort

0

Der Build fließt von stromaufwärts nach stromabwärts. Wenn Sie ein Projekt erstellen, werden alle nachgeordneten Builds ausgelöst, jedoch keine Upstream-Builds. Also sagen wir, dass ein nachgelagertes Projekt von einem vorgelagerten Projekt abhängt.

Wenn Sie einen Build in Jenkins konfigurieren, wird dies sehr offensichtlich sein. Wenn Sie "job1" definieren, können Sie im Abschnitt "Post-Build-Aktionen" diese an weiterleiten. Erstellen Sie andere Projekte, und wählen Sie job2 aus. Jenkins wird automatisch feststellen, dass job1 stromaufwärts und job2 stromabwärts liegt.

Auch wenn job4 von allen drei anderen Projekten abhängig ist, sollten Sie es so einrichten, dass immer nur ein Projekt erstellt wird. Für Sie, Job1 -> Job2 -> Job3 -> Job4. Dies würde bedeuten, dass jedes Projekt höchstens ein vorgelagertes Projekt und ein nachgelagertes Projekt hat.

Wenn Sie Job2 und Job3 wirklich zur gleichen Zeit ausführen möchten, aber sicherstellen wollen, dass Job4 nur einmal aufgerufen wird, und erst nachdem beide anderen Jobs beendet sind, sollten Sie sich die Build Flow Plugin ansehen genau das.

+0

danke. Job1 -> Job2 -> Job3 -> Job4 Auftrag funktioniert, wenn ich Job1 ausführe, alle anderen Jobs laufen nacheinander in dieser Reihenfolge automatisch ab. Wenn ich Job4 starte, laufen alle Upstream-Jobs automatisch. –

+0

Nein. Upstream und Downstream-Jobs sind ein gut definiertes Konzept in Jenkins. Ein Job ist entweder vor, nach oder ohne. Niemals beides. Wenn Sie Job 4 so konfiguriert haben, dass er Job 1 auslöst, würden Sie eine Schleife starten. Normalerweise werden Jobs in einer bestimmten Reihenfolge angeordnet, da ein Job vom Output eines anderen abhängt. Wenn Job4 von Job 1 abhängt und Job 1 von Job 4 abhängt, haben Sie Probleme. – IanAWP

Verwandte Themen