Als Automation Pipelines-Administrator oder -Entwickler können Sie Automation Pipelines-Cloud-Dienste mithilfe des Git-Auslösers in den Git-Lebenszyklus integrieren. Wenn Sie eine Codeänderung in GitHub, GitLab oder Bitbucket Enterprise vornehmen, kommuniziert das Ereignis mit Automation Pipelines über einen Webhook und löst eine Pipeline aus. Der Webhook ist mit GitLab, GitHub und der Bitbucket-Cloud sowie mit lokalen Unternehmensversionen kompatibel.

Wenn Sie den Webhook für Git in Automation Pipelines hinzufügen, erstellt er auch einen Webhook im GitHub-, GitLab- oder Bitbucket-Repository. Wenn Sie den Webhook später aktualisieren oder löschen, wird mit dieser Aktion auch der Webhook in GitHub, GitLab oder Bitbucket aktualisiert oder gelöscht.

Ihre Webhook-Definition muss einen Git-Endpoint auf dem Branch des Repositorys enthalten, das Sie überwachen. Zum Erstellen des Webhooks verwendet Automation Pipelines den Git-Endpoint. Wenn der Endpoint nicht vorhanden ist, können Sie ihn erstellen, wenn Sie den Webhook hinzufügen. In diesem Beispiel wird vorausgesetzt, dass Sie über einen vordefinierten Git-Endpoint in GitHub verfügen.

Hinweis: Um einen Webhook zu erstellen, muss Ihr Git-Endpoint ein privates Token für die Authentifizierung verwenden, er kann kein Kennwort verwenden.

Sie können mehrere Webhooks für verschiedene Zweige erstellen, indem Sie denselben Git-Endpoint verwenden und verschiedene Werte für den Namen des Zweigs auf der Konfigurationsseite des Webhooks bereitstellen. Zum Erstellen eines weiteren Webhooks für einen anderen Zweig im selben Git-Repository muss der Git-Endpoint nicht mehrmals für mehrere Zweige geklont werden. Stattdessen geben Sie den Namen des Zweigs im Webhook an, wodurch Sie den Git-Endpoint wiederverwenden können. Wenn der Zweig im Git-Webhook mit dem Zweig im Endpoint übereinstimmt, müssen Sie den Namen des Zweigs nicht auf der Seite des Git-Webhooks angeben.

In diesem Beispiel wird die Verwendung des Git-Auslösers mit einem GitHub-Repository gezeigt. Zu den Voraussetzungen gehören jedoch Vorbereitungen, die bei Verwendung eines anderen Git-Servertyps erforderlich sind.

Voraussetzungen

Prozedur

  1. Klicken Sie in Automation Pipelines auf Auslöser > Git.
  2. Klicken Sie auf die Registerkarte Webhooks für Git und dann auf Neuer Webhook für Git.
    1. Wählen Sie ein Projekt aus.
    2. Geben Sie einen Namen und eine Beschreibung für den Webhook ein.
    3. Wählen Sie einen Git-Endpoint aus, der für den zu überwachenden Branch konfiguriert ist.
      Wenn Sie Ihren Webhook erstellen, enthält die Webhook-Definition die aktuellen Endpoint-Details.
      • Wenn Sie den Git-Typ, den Git-Servertyp oder die URL des Git-Repositorys zu einem späteren Zeitpunkt im Endpoint ändern, kann der Webhook keine Pipeline mehr auslösen, da er unter Verwendung der ursprünglichen Endpoint-Details auf das Git-Repository zugreift. Sie müssen den Webhook löschen und ihn erneut mit dem Endpoint erstellen.
      • Wenn Sie den Authentifizierungstyp, den Benutzernamen oder das private Token zu einem späteren Zeitpunkt im Endpoint ändern, wird der Webhook weiterhin ausgeführt.
      • Bei Verwendung eines BitBucket-Repositorys muss die URL für das Repository in einem der folgenden Formate vorliegen: https://api.bitbucket.org/{user}/{repo name} oder http(s)://{bitbucket-enterprise-server}/rest/api/1.0/users/{username}/repos/{repo name}.
      Hinweis: Wenn Sie zuvor einen Webhook mit einem Git-Endpoint erstellt haben, der ein Kennwort für die Standardauthentifizierung nutzt, müssen Sie den Webhook löschen und mit einem Git-Endpoint neu definieren, der ein privates Token für die Authentifizierung verwendet.
      Weitere Informationen hierzu finden Sie unter Wie integriere ich Automation Pipelines in Git?.
    4. (Optional) Geben Sie den Branch ein, der vom Webhook überwacht werden soll.
      Wenn Sie keine Verzweigung eingeben, überwacht der Webhook den für den Git-Endpoint konfigurierten Branch. Wenn Sie einen Regex als Zweigstellennamen verwenden, lösen Änderungen an einem Zweig, der mit dem Regex übereinstimmt, die Pipeline aus.
    5. (Optional) Generieren Sie ein geheimes Token für den Webhook.
      Wenn Sie ein geheimes Token verwenden, generiert Automation Pipelines ein zufälliges Zeichenfolgen-Token für den Webhook. Wenn der Webhook dann Git-Ereignisdaten empfängt, sendet er die Daten mit dem geheimen Token. Automation Pipelines verwendet die Informationen, um zu ermitteln, ob die Aufrufe von der erwarteten Quelle stammen, z. B. von der konfigurierten GitHub-Instanz, dem Repository und dem Branch. Das geheime Token bietet eine zusätzliche Sicherheitsebene, die verwendet wird, um zu überprüfen, ob die Git-Ereignisdaten aus der richtigen Quelle stammen.
    6. (Optional) Geben Sie Dateieinschlüsse oder -ausschlüsse als Bedingungen für den Auslöser an.
      • Dateieinschlüsse. Wenn eine der Dateien in einem Commit mit den in den Einschlusspfaden oder dem Regex angegebenen Dateien übereinstimmt, werden mit dem Commit die Pipelines ausgelöst. Im Fall eines angegebenen Regex löst Automation Pipelines die Pipelines nur dann auf, wenn Dateinamen im Änderungssatz mit dem angegebenen Ausdruck übereinstimmen. Der Regex-Filter ist nützlich, wenn ein Auslöser für mehrere Pipelines in einem einzelnen Repository konfiguriert wird.
      • Dateiausschlüsse. Wenn alle Dateien in einem Commit mit den angegebenen Dateien in den Ausschlusspfaden oder dem Regex übereinstimmen, werden die Pipelines nicht ausgelöst.
      • Ausschlüsse priorisieren. Wenn diese Option aktiviert ist, wird durch die Priorisierung des Ausschlusses sichergestellt, dass Pipelines nicht ausgelöst werden, selbst wenn eine der Dateien in einem Commit mit den angegebenen Dateien in den Ausschlusspfaden oder im Regex übereinstimmt. Die Standardeinstellung ist „Aus“.
      Wenn die Bedingungen sowohl die Dateieinschlüsse als auch die Dateiausschlüsse umfassen, werden Pipelines nicht ausgelöst.

      Im folgenden Beispiel sind sowohl Dateieinschlüsse als auch Dateiausschlüsse Bedingungen für den Auslöser.

      Dateieinschlüsse und -ausschlüsse und ihre Werte werden auf der Registerkarte Webhooks für Git im Auslöser für Git angezeigt und können in Klartext oder als Regex vorliegen.

      • Bei Dateieinschlüssen löst ein Commit mit einer Änderung in runtime/src/main/a.java oder einer beliebigen Java-Datei Pipelines aus, die in der Ereigniskonfiguration konfiguriert sind.
      • Bei Dateiausschlüssen werden bei einem Commit mit Änderungen nur in beiden Dateien die in den Ereigniskonfigurationen konfigurierten Pipelines nicht ausgelöst.
    7. Wählen Sie für das Git-Ereignis eine Push- oder Pull-Anforderung aus.
    8. Geben Sie das API-Token ein.
      Das VMware Cloud Services-API-Token authentifiziert Sie für externe API-Verbindungen mit Automation Pipelines. So rufen Sie das API-Token ab:
      1. Melden Sie sich bei VMware Aria Automation an.
      2. Anmelden bei
      3. Klicken Sie auf den Dropdown-Pfeil neben Ihrem Namen.
      4. Klicken Sie auf Mein Konto.
      5. Klicken Sie auf API-Token.
      6. Klicken Sie auf Neues API-Token generieren.
        1. Geben Sie einen Namen für das Token ein.
        2. Klicken Sie unter „Organisationsrollen“ auf den Menüpunkt Alle Organisationsrollen, um ihn zu erweitern, und wählen Sie Organisationsbesitzer aus.
        3. Klicken Sie unter „Dienstrollen“ auf den Menüpunkt VMware Aria Automation > Pipelines, um ihn zu erweitern, und wählen Sie Pipelines-Administrator aus.
        4. Klicken Sie auf Generieren.

          Im Fenster Generiertes Token wird ein Token mit dem von Ihnen angegebenen Namen und dem Namen Ihrer Organisation angezeigt.

      7. Klicken Sie auf das Symbol KOPIEREN.

        Durch Klicken auf KOPIEREN wird sichergestellt, dass die exakte Zeichenfolge erfasst wird. Dies ist zuverlässiger als die Verwendung des Mauszeigers zum Kopieren der Zeichenfolge.

    9. Wählen Sie die Pipeline aus, die der Webhook auslösen soll.
      Wenn die Pipeline benutzerdefinierte hinzugefügte Eingabeparametern enthält, werden in der Liste der Eingabeparameter Parameter und Werte angezeigt. Sie können Werte für Eingabeparameter eingeben, die mit dem Auslöserereignis an die Pipeline übergeben werden. Alternativ können Sie auf die Eingabe von Werten verzichten oder die Standardwerte verwenden, sofern welche definiert sind.

      Informationen zum automatischen Einfügen von Eingabeparametern für Git-Auslöser finden Sie unter Voraussetzungen.

    10. Klicken Sie auf Erstellen.
      Der Webhook wird als neue Karte angezeigt.
  3. Klicken Sie auf die Webhook-Karte.
    Wenn das Webhook-Datenformular erneut angezeigt wird, wird im oberen Bereich des Formulars eine Webhook-URL hinzugefügt. Der Git-Webhook wird über die Webhook-URL mit dem GitHub-Repository verbunden.

    Die Git-Webhook-URL, die Sie kopieren und in Ihrem Git-Repository verwenden, wird auf der Registerkarte Webhooks für Git im Auslöser für Git angezeigt.

  4. Öffnen Sie in einem neuen Browserfenster das GitHub-Repository, das eine Verbindung über den Webhook herstellt.
    1. Um den Webhook anzuzeigen, den Sie in Automation Pipelines hinzugefügt haben, klicken Sie auf der Registerkarte Einstellungen auf Webhooks.
      Im unteren Bereich der Webhooks-Liste wird die gleiche Webhook-URL angezeigt.

      In Ihrem GitHub-Repository zeigt die Liste der Webhooks am Ende der Liste dieselbe Git-Webhook-URL an.

    2. Wenn Sie den Code ändern möchten, klicken Sie auf die Registerkarte Code und wählen Sie eine Datei im Branch aus. Nachdem Sie die Datei bearbeitet haben, übergeben Sie die Änderung.
    3. Um zu überprüfen, ob die Webhook-URL funktioniert, klicken Sie auf der Registerkarte Einstellungen erneut auf Webhooks.
      Im unteren Bereich der Webhooks-Liste wird neben der Webhook-URL ein grünes Häkchen angezeigt. Wenn der Webhook in GitHub gültig ist, wird ein grünes Häkchen angezeigt.
  5. Kehren Sie zu Automation Pipelines zurück, um die Aktivität auf dem Git-Webhook anzuzeigen. Klicken Sie auf Auslöser > Git > Aktivität.
    Stellen Sie unter „Ausführungsstatus“ sicher, dass die Pipeline-Ausführung gestartet wurde.

    Wenn ein Benutzer eine Datei übergibt, wird der Auslöser für Git aktiviert, und auf der Registerkarte Aktivität wird der Status für den Auslöser als GESTARTET angezeigt.

  6. Klicken Sie auf Ausführungen und verfolgen Sie Ihre Pipeline während der Ausführung.
    Um die Ausführung der Pipeline zu beobachten, können Sie „Aktualisieren“ drücken.

    Nach dem Auslösen der Pipeline zeigt die Pipeline-Ausführung den Status als WIRD AUSGEFÜHRT an.

Ergebnisse

Herzlichen Glückwunsch! Sie haben den Auslöser erfolgreich für Git verwendet.