Website-Suche

Ein Python-Skript von Jenkins ausführen


Dieses Tutorial zeigt Ihnen, wie Sie ein Python-Skript aus einer Jenkins-Pipeline ausführen können. Wir werden die Jenkins-Pipeline-Syntax verwenden, um dies zu erreichen.

Bevor wir beginnen, stellen Sie sicher, dass Sie die folgenden Voraussetzungen haben:

  1. Eine Jenkins-Instanz
  2. Ein Python-Skript, das Sie ausführen möchten
  3. Der auf dem Jenkins-Controller oder Agent installierte Python-Interpreter

Jenkins Python-Skript im Pipeline ausführen

Wir können ein Python-Skript innerhalb einer Jenkins-Pipeline mit dem sh-Befehl in Jenkins ausführen. Lassen Sie uns sehen, wie wir das machen können.

Beginnen Sie mit der Erstellung einer neuen Jenkins-Pipeline. Gehen Sie dazu zum Jenkins-Dashboard, klicken Sie auf den Link „Neues Element“ und wählen Sie dann die Option „Pipeline“ aus.

Geben Sie der Pipeline einen Namen und klicken Sie auf die Schaltfläche „OK“.

Als nächstes müssen wir die Jenkins-Pipeline definieren. Es gibt zwei Möglichkeiten, dies zu tun:

  1. Deklarative Pipeline-Syntax
  2. Scripted-Pipeline-Syntax

In diesem Tutorial werden wir die deklarative Pipeline-Syntax verwenden.

Um die Pipeline zu definieren, müssen wir eine Reihe von Phasen angeben, wobei jede Phase einen bestimmten Schritt in der Pipeline darstellt.

In diesem Fall werden wir eine einzelne Stufe erstellen, die unser Python-Skript ausführt. Ein Beispiel-Pipeline ist wie im folgenden Beispiel dargestellt:

pipeline {
    agent {
        label 'python'
    }
    stages {
        stage('Run Python Script') {
            steps {
                sh 'python3 script.py'
            }
        }
    }
}

Lassen Sie uns jede Sektion dieses Jenkinsfiles im Detail durchgehen:

  1. Der Pipeline-Block ermöglicht es uns, den Beginn unserer Pipeline zu definieren.
  2. Als nächstes verwenden wir den Agenten-Block, um den Agenten anzugeben, der unser Pipeline ausführen soll. In diesem Fall verwenden wir die Label-Direktive, um anzugeben, dass wir einen Jenkins-Agenten mit dem Label „python“ verwenden möchten. Dadurch wird sichergestellt, dass die Pipeline auf einem Rechner mit dem installierten Python-Interpreter ausgeführt wird.
  3. Der Stufenblock definiert eine Reihe von Stufen in unserer Pipeline. In diesem Fall haben wir nur eine Stufe namens „Python-Skript ausführen.“
  4. Im nächsten Abschnitt blockiert der Schritt, um die Schritte zu definieren, die innerhalb der Phase ausgeführt werden. Wir verwenden die sh-Direktive, um in diesem Fall einen Shell-Befehl auszuführen. Der Befehl, den wir ausführen, ist python3 script.py, der unser Python-Skript ausführt.

Nachdem wir die Pipeline definiert haben, können wir sie speichern und ausführen, indem wir auf die Schaltfläche „Jetzt erstellen“ im Jenkins-Dashboard klicken.

Wenn die Pipeline erfolgreich ausgeführt wird, sollten wir die Ausgabe des Python-Skripts in der Jenkins-Konsole sehen.

Wir können auch die Konsolenausgabe verwenden, um Fehler zu diagnostizieren und sie zu beheben, damit der Job erfolgreich ausgeführt werden kann.

Fazit

In diesem Artikel haben Sie gelernt, wie man die sh-Direktive in einem Jenkins-Pipeline verwendet, um ein Python-Skript auszuführen.