In diesem Tutorial erfahren wir, wie wir die Jenkins Stash -Schritte in einer Pipeline verwenden können, um Dateien von einem Jenkins -Controller zu einem anderen Host zu kopieren oder zu verschieben.
Bei der Arbeit in Jenkins können Sie auf ein Szenario stoßen, in dem ein Job bestimmte Dateien und Verzeichnisse erstellt. Da die erzeugten Dateien und sich auf dem Agenten, auf dem der Job ausgeführt wurde, befindet.
Was ist der Vorrat in Jenkins?
Mit dem Stash -Schritt in Jenkins können wir Dateien und Verzeichnisse für die verspätete Verwendung auf jedem Knoten oder Arbeitsbereich speichern, der mit dem Controller verbunden ist. Standardmäßig verwerfen Jenkins die versteckten Dateien, sobald die Pipeline abgeschlossen ist.
Es ist gut zu beachten. Wenn Sie Dateien zwischen Jobs oder Pipelines übertragen möchten, verwenden Sie stattdessen das Archiveartifacts -Modul.
Eine andere Sache, die Sie an den Stash -Schritt in Jenkins beachten sollten, ist, dass es für kleine Dateien am besten reserviert ist. Dies liegt daran. Für große Dateien erwägen Sie ein externes Plugin für das Arbeitsbereich Manager zu verwenden.
Jenkins Stash -Syntax
Das Folgende zeigt die Syntax des Jenkins -Stash -Schritts. Der Schritt akzeptiert die folgenden Parameter:
Beispieldemonstration
Wir werden einen Jenkins -Controller verwenden, der mit Debian 11 und Debian 10 Agents verbunden ist, um zu demonstrieren, wie wir den Stash -Schritt in Jenkins verwenden können.
Wir werden dann wie unten gezeigt eine JenkinsFile verwenden:
Pipeline
Agent keine
Stufen
Stage ('Start')
Agent Label 'Debian11'
Schritte
Sch "'
Probe berühren.Sch
Mkdir -p Dir
Berühren Sie Dir/sample_nested.Sch
Berühren Sie Dir/sample_nested2.Sch
'"
Stash (Name: 'Samplestash')
Stage ('Dateien überprüfen')
Agent Label 'Debian10'
Schritte
"Sampleestash" abbauen '
Sh 'Baum'
Die obige Beispielpipeline beginnt mit dem Erstellen von Beispieldateien für Demonstrationszwecke. Wir verwenden dann den Stash -Schritt, um einen Samprobium mit allen generierten Dateien zu erstellen. Schließlich lösten wir die Dateien auf dem Zielagenten mithilfe des Stash -Schritts ab.
Sobald wir die Pipeline ausgeführt haben, sollten wir wie gezeigt eine Ausgabe erhalten:
Aus der obigen Ausgabe sehen wir, dass die Dateien auf dem Debian11 -Knoten versteckt und nicht beeindruckt wurden und auf dem Debian 10 -Knoten nicht gestützt wurden.
Abschluss
In diesem Artikel haben Sie die Grundlagen der Arbeit mit Stash- und Unstash -Schritten in Jenkins gelernt.