Arbeiten mit Auslösern - Amazon CodeCatalyst

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Arbeiten mit Auslösern

Mit einem Workflow-Auslöser oder einfach einem Auslöser können Sie eine Workflow-Ausführung automatisch starten, wenn bestimmte Ereignisse auftreten, z. B. ein Code-Push. Möglicherweise möchten Sie Auslöser konfigurieren, damit Ihre Softwareentwickler Workflow-Ausführungen manuell über die CodeCatalyst Konsole starten können.

Sie können drei Arten von Auslösern verwenden:

  • Push – Ein Code-Push-Auslöser bewirkt, dass eine Workflow-Ausführung gestartet wird, wenn ein Commit übertragen wird.

  • Pull-Anforderung – Ein Pull-Anforderungsauslöser führt dazu, dass eine Workflow-Ausführung gestartet wird, wenn eine Pull-Anforderung entweder erstellt, überarbeitet oder geschlossen wird.

  • Zeitplan – Ein Zeitplanauslöser bewirkt, dass eine Workflow-Ausführung nach einem von Ihnen definierten Zeitplan gestartet wird. Erwägen Sie, einen Zeitplanauslöser zu verwenden, um jede Nacht Builds Ihrer Software auszuführen, damit Ihre Softwareentwickler am nächsten Tag arbeiten können.

Sie können Push-, Pull-Anforderungs- und Zeitplanauslöser allein oder in Kombination im selben Workflow verwenden.

Tipp

Um einen Auslöser in Aktion zu sehen, starten Sie ein Projekt mit einer Vorlage. Die meisten Vorlagen enthalten einen Workflow mit einem Auslöser. Suchen Sie in der Workflow-Definitionsdatei des Blueprints nach der Trigger Eigenschaft . Weitere Informationen über Pläne finden Sie unter Ein Projekt mit einem Blueprint erstellen.

Eine gemeinsame Auslöserkonfiguration

In diesem Abschnitt wird beschrieben, wie Sie Auslöser für eine gängige Software-Release- und Verzweigungsstrategie einrichten.

Software-Release- und Verzweigungsstrategie:

  • Sie haben Anwendungscode in einem Quell-Repository.

  • Ihre main Verzweigung enthält finalisierten Code, der immer bereit für die Veröffentlichung ist.

  • Ihre Softwareentwickler nehmen ihre Änderungen an Feature-Zweigen außerhalb des main Zweigs vor.

  • Ihre Softwareentwickler erstellen eine Pull-Anfrage, in der sie aufgefordert werden, ihren Feature-Zweig zusammenzuführenmain, wenn ihr Feature bereit ist.

    Sie möchten, dass diese Pull-Anforderung automatisch einen Workflow startet, der die Anwendung mithilfe der Dateien auf dem Feature-Zweig des Softwareentwicklers erstellt und testet – aber nicht bereitstellt.

  • Ihre Softwareentwickler überprüfen den Build und die Tests, um sicherzustellen, dass jede Menge gut aussieht. Anschließend führen sie die Pull-Anforderung in der main Verzweigung zusammen.

    Sie möchten, dass die Zusammenführung automatisch einen Workflow startet, der Ihren Anwendungscode erstellt und bereitstellt.

Vorgeschlagene Workflow-/Auslöserkonfiguration:

Aufgrund der zuvor beschriebenen Softwareverzweigungsstrategie sollten Sie zwei Workflows verwenden:

  • Workflow 1 erstellt und testet Ihre Anwendung, wenn eine Pull-Anforderung erstellt oder überarbeitet wird.

  • Workflow 2 erstellt und stellt Ihre Anwendung bereit, wenn eine Pull-Anforderung zusammengeführt wird.

Workflow 1 würde wie folgt aussehen:

Triggers: - Type: PULLREQUEST Branches: - main Events: - OPEN - REVISION Actions: BuildAction: instructions-for-building-the-app TestAction: instructions-for-test-the-app

Der vorherige Auslösercode startet automatisch eine Workflow-Ausführung, wenn ein Softwareentwickler eine Pull-Anforderung erstellt (oder eine ändert), in der er aufgefordert wird, seinen Feature-Zweig mit dem main Zweig zusammenzuführen. CodeCatalyst startet eine Workflow-Ausführung mit dem Code in der Quellverzweigung (d. h. der Feature-Verzweigung des Entwicklers). Der Workflow erstellt und stellt die Anwendung bereit.

Workflow 2 würde wie folgt aussehen:

Triggers: - Type: PUSH Branches: - main Actions: BuildAction: instructions-for-building-the-app DeployAction: instructions-for-deploying-the-app

Wenn im vorherigen Auslösercode eine Zusammenführung mit main erfolgt, wird der PUSH Auslöser aktiviert. CodeCatalyst startet eine Workflow-Ausführung mit dem Code in der main Verzweigung (der jetzt den Code aus der Pull-Anforderung enthält). Der Workflow erstellt und stellt die Anwendung bereit.

Anweisungen zum Hinzufügen von Auslösern zu einer Workflow-Definitionsdatei finden Sie unter Hinzufügen eines Push-, Pull- oder Zeitplanauslösers.

Weitere Beispiele für Auslöser und zusätzliche Erklärungen finden Sie unter Beispiele für Auslöser.

Überlegungen zu Auslösern bei der Verzweigung

In diesem Abschnitt werden einige der wichtigsten Überlegungen beim Einrichten von Auslösern beschrieben, die Verzweigungen enthalten.

  • Überlegungen 1: Wenn Sie sowohl bei Push- als auch bei Pull-Anforderungsauslösern einen Zweig angeben möchten, müssen Sie den Zielzweig (oder „an“) in der Auslöserkonfiguration angeben. Geben Sie niemals den Quellzweig (oder „von“) an.

    Im folgenden Beispiel main aktiviert ein Push von einer beliebigen Verzweigung zu den Workflow.

    Triggers: - Type: PUSH Branches: - main

    Im folgenden Beispiel main aktiviert eine Pull-Anforderung von einer beliebigen Verzweigung in den Workflow.

    Triggers: - Type: PULLREQUEST Branches: - main Events: - OPEN - REVISION
  • Überlegungen 2: Bei Push-Auslösern wird der Workflow nach der Aktivierung des Workflows mit der Workflow-Definitionsdatei und den Quelldateien im Zielzweig ausgeführt.

  • Überlegungen 3: Bei Pull-Anforderungsauslösern wird der Workflow nach der Aktivierung des Workflows mit der Workflow-Definitionsdatei und den Quelldateien im Quellzweig ausgeführt (obwohl Sie den Zielzweig in der Auslöserkonfiguration angegeben haben).

  • Überlegungen 4: Der genaue Auslöser in einer Verzweigung wird möglicherweise nicht in einer anderen Verzweigung ausgeführt.

    Betrachten Sie den folgenden Push-Auslöser:

    Triggers: - Type: PUSH Branches: - main

    Wenn die Workflow-Definitionsdatei, die diesen Auslöser enthält, in vorhanden ist main und in geklont wirdtest, beginnt der Workflow niemals automatisch mit der Verwendung der Dateien in test (obwohl Sie den Workflow manuell starten können, wenn Sie die Dateien in verwendentest). Lesen Sie die Überlegungen 1 und 2, um zu verstehen, warum der Workflow niemals automatisch mit den Dateien in ausgeführt wirdtest.

    Berücksichtigen Sie auch den folgenden Auslöser für Pull-Anfragen:

    Triggers: - Type: PULLREQUEST Branches: - main Events: - OPEN - REVISION

    Wenn die Workflow-Definitionsdatei, die diesen Auslöser enthält, in vorhanden istmain, wird der Workflow niemals mit den Dateien in ausgeführtmain. (Wenn Sie jedoch eine test Verzweigung außerhalb von erstellenmain, wird der Workflow mit den Dateien in ausgeführttest.) Lesen Sie die Überlegungen 1 und 3, um zu verstehen, warum.

Hinzufügen eines Push-, Pull- oder Zeitplanauslösers

Verwenden Sie die folgenden Anweisungen, um Ihrem Workflow einen Push-, Pull- oder Zeitplanauslöser hinzuzufügen.

Visual
So fügen Sie einen Auslöser hinzu (visueller Editor)
  1. Öffnen Sie die - CodeCatalyst Konsole unter https://codecatalyst.aws/.

  2. Wählen Sie Ihr Projekt.

  3. Wählen Sie im Navigationsbereich CI/CD und dann Workflows aus.

  4. Wählen Sie den Namen Ihres Workflows aus. Sie können nach dem Namen des Quell-Repositorys oder der Verzweigung filtern, in dem der Workflow definiert ist, oder nach Workflow-Namen filtern.

  5. Wählen Sie Bearbeiten aus.

  6. Wählen Sie Visual aus.

  7. Wählen Sie im Workflow-Diagramm das Feld Quelle und Auslöser aus.

  8. Wählen Sie im Konfigurationsbereich Add trigger aus.

  9. Geben Sie im Dialogfeld Auslöser hinzufügen wie folgt Informationen in die Felder ein.

    Auslösertyp

    Geben Sie den Typ des Auslösers an. Sie können einen der folgenden Werte verwenden:

    • Push (visueller Editor) oder PUSH (YAML-Editor)

      Ein Push-Auslöser startet eine Workflow-Ausführung, wenn eine Änderung in Ihr Quell-Repository übertragen wird. Die Workflow-Ausführung verwendet die Dateien in der Verzweigung, an die Sie übertragen (d. h. die Zielverzweigung).

    • Pull-Anforderung (visueller Editor) oder PULLREQUEST (YAML-Editor)

      Ein Pull-Anforderungsauslöser startet eine Workflow-Ausführung, wenn eine Pull-Anforderung in Ihrem Quell-Repository geöffnet, aktualisiert oder geschlossen wird. Die Workflow-Ausführung verwendet die Dateien in der Verzweigung, aus der Sie abrufen (d. h. der Quellzweig).

    • Zeitplan (visueller Editor) oder SCHEDULE (YAML-Editor)

      Ein Zeitplanauslöser startet Workflow-Ausführungen nach einem Zeitplan, der durch einen von Ihnen angegebenen Cron-Ausdruck definiert wird. Für jede Verzweigung in Ihrem Quell-Repository wird mithilfe der Dateien der Verzweigung eine separate Workflow-Ausführung gestartet. (Um die Verzweigungen einzuschränken, für die der Auslöser aktiviert wird, verwenden Sie das Feld Verzweigungen (visueller Editor) oder die Branches Eigenschaft (YAML-Editor).)

      Befolgen Sie beim Konfigurieren eines Zeitplanauslösers die folgenden Richtlinien:

      • Verwenden Sie nur einen Zeitplanauslöser pro Workflow.

      • Wenn Sie mehrere Workflows in Ihrem CodeCatalyst Bereich definiert haben, empfehlen wir Ihnen, nicht mehr als 10 davon gleichzeitig zu starten.

      • Stellen Sie sicher, dass Sie den Cron-Ausdruck des Auslösers mit ausreichender Zeit zwischen Ausführungen konfigurieren. Weitere Informationen finden Sie unter Expression.

    Beispiele finden Sie unter Beispiele für Auslöser.

    Ereignisse für Pull-Anforderung

    Dieses Feld wird nur angezeigt, wenn Sie den Auslösertyp Pull request ausgewählt haben.

    Geben Sie den Typ der Pull-Anforderungsereignisse an, die eine Workflow-Ausführung starten. Die folgenden Werte sind gültig:

    • Pull-Anforderung wird erstellt (visueller Editor) oder OPEN (YAML-Editor)

      Die Workflow-Ausführung wird gestartet, wenn eine Pull-Anforderung erstellt wird.

    • Pull-Anforderung wird geschlossen (visueller Editor) oder CLOSED (YAML-Editor)

      Die Workflow-Ausführung wird gestartet, wenn eine Pull-Anforderung geschlossen wird. Das Verhalten des CLOSED Ereignisses ist schwierig und wird am besten anhand eines Beispiels verstanden. Weitere Informationen finden Sie unter Beispiel: Ein Auslöser mit einem Pull-, Verzweig- und einem „CLOSED“-Ereignis.

    • Eine neue Revision wird vorgenommen, um die Anforderung abzurufen (visueller Editor) oder REVISION (YAML-Editor)

      Die Workflow-Ausführung wird gestartet, wenn eine Revision einer Pull-Anforderung erstellt wird. Die erste Revision wird erstellt, wenn die Pull-Anforderung erstellt wird. Danach wird jedes Mal eine neue Revision erstellt, wenn jemand einen neuen Commit an die in der Pull-Anforderung angegebene Quellverzweigung überträgt. Wenn Sie das REVISION Ereignis in Ihren Pull-Anforderungsauslöser aufnehmen, können Sie das OPEN Ereignis weglassen, da eine Obermenge von REVISION istOPEN.

    Sie können mehrere Ereignisse in demselben Pull-Anforderungsauslöser angeben.

    Beispiele finden Sie unter Beispiele für Auslöser.

    Plan

    Dieses Feld wird nur angezeigt, wenn Sie den Auslösertyp Zeitplan ausgewählt haben.

    Geben Sie den Cron-Ausdruck an, der beschreibt, wann Ihr geplanter Workflow ausgeführt werden soll.

    Cron-Ausdrücke in CodeCatalyst verwenden die folgende sechsfeldige Syntax, wobei jedes Feld durch ein Leerzeichen getrennt ist:

    Minuten Stunden days-of-month im Monat days-of-week Jahr

    Beispiele für Cron-Ausdrücke

    Minuten Stunden Tage des Monats Monat Wochentage Jahr Bedeutung

    0

    0

    ?

    *

    MO-FR

    *

    Führt jeden Montag bis Freitag einen Workflow um Mitternacht (UTC+0) aus.

    0

    2

    *

    *

    ?

    *

    Führt jeden Tag einen Workflow um 2:00 Uhr (UTC+0) aus.

    15

    22

    *

    *

    ?

    *

    Führt jeden Tag einen Workflow um 22:15 Uhr (UTC+0) aus.

    0/30

    22-2

    ?

    *

    SAT-SUN

    *

    Führt jeden 30-minütigen Workflow von Samstag bis Sonntag zwischen 22:00 Uhr am Starttag und 2:00 Uhr am darauffolgenden Tag (UTC+0) aus.

    45

    13

    L

    *

    ?

    2023-2027

    Führt einen Workflow um 13:45 Uhr (UTC+0) am letzten Tag des Monats zwischen den Jahren 2023 und 2027 aus.

    Befolgen Sie beim Angeben von Cron-Ausdrücken in CodeCatalystdie folgenden Richtlinien:

    • Geben Sie einen einzelnen Cron-Ausdruck pro SCHEDULE Auslöser an.

    • Fügen Sie den Cron-Ausdruck in doppelte Anführungszeichen (") im YAML-Editor ein.

    • Geben Sie die Zeit in UTC (Coordinated Universal Time) an. Andere Zeitzonen werden nicht unterstützt.

    • Konfigurieren Sie mindestens 30 Minuten zwischen Ausführungen. Ein schnellerer Takt wird nicht unterstützt.

    • Geben Sie das days-of-week Feld days-of-month oder an, aber nicht beides. Wenn Sie einen Wert oder ein Sternchen (*) in einem der Felder angeben, müssen Sie ein Fragezeichen (?) im anderen verwenden. Das Sternchen steht für „alle“ und das Fragezeichen für „alle“.

    Weitere Beispiele für Cron-Ausdrücke und Informationen zu Platzhaltern wie ?, *und Lfinden Sie in der Referenz zu Cron-Ausdrücken im Amazon- EventBridge Benutzerhandbuch. Cron-Ausdrücke in EventBridge und CodeCatalyst funktionieren genauso.

    Beispiele für Zeitplanauslöser finden Sie unter Beispiele für Auslöser.

    Verzweigungen und Verzweigungsmuster

    (Optional)

    Geben Sie die Verzweigungen in Ihrem Quell-Repository an, die der Auslöser überwacht, um zu wissen, wann eine Workflow-Ausführung gestartet werden soll. Sie können Regex-Muster verwenden, um Ihre Verzweigungsnamen zu definieren. Verwenden Sie beispielsweise , main.* um alle Verzweigungen abzugleichen, die mit beginnenmain.

    Die anzugebenden Verzweigungen unterscheiden sich je nach Auslösertyp:

    • Geben Sie für einen Push-Auslöser die Verzweigungen an, die Sie an übertragen, d. h. die Zielverzweigungen. Eine Workflow-Ausführung wird pro übereinstimmender Verzweigung gestartet, wobei die Dateien in der übereinstimmenden Verzweigung verwendet werden.

      Beispiele: main.*mainline

    • Geben Sie für einen Pull-Anforderungsauslöser die Verzweigungen an, die Sie an übertragen, d. h. die Zielverzweigungen. Eine Workflow-Ausführung wird pro übereinstimmender Verzweigung gestartet, wobei die Workflow-Definitionsdatei und die Quelldateien in der Quellverzweigung (nicht die übereinstimmende Verzweigung) verwendet werden.

      Beispiele: main.*, mainline, v1\-.* (abgleicht Verzweigungen, die mit beginnenv1-)

    • Geben Sie für einen Zeitplanauslöser die Verzweigungen an, die die Dateien enthalten, die Ihre geplante Ausführung verwenden soll. Eine Workflow-Ausführung wird pro übereinstimmender Verzweigung gestartet, wobei die Workflow-Definitionsdatei und die Quelldateien in der übereinstimmenden Verzweigung verwendet werden.

      Beispiele: main.*version\-1\.0

    Anmerkung

    Wenn Sie keine Verzweigungen angeben, überwacht der Auslöser alle Verzweigungen in Ihrem Quell-Repository und startet eine Workflow-Ausführung mit der Workflow-Definitionsdatei und den Quelldateien in:

    Weitere Informationen zu Verzweigungen und Auslösern finden Sie unter Überlegungen zu Auslösern bei der Verzweigung.

    Weitere Beispiele finden Sie unter Beispiele für Auslöser.

    Geänderte Dateien

    Dieses Feld wird nur angezeigt, wenn Sie den Auslösertyp Push -oder Pull-Anforderung ausgewählt haben.

    Geben Sie die Dateien oder Ordner in Ihrem Quell-Repository an, die der Auslöser überwacht, um zu wissen, wann eine Workflow-Ausführung gestartet werden soll. Sie können reguläre Ausdrücke verwenden, um Dateinamen oder Pfade abzugleichen.

    Beispiele finden Sie unter Beispiele für Auslöser.

  10. (Optional) Wählen Sie Validieren, um den YAML-Code des Workflows vor dem Commit zu validieren.

  11. Wählen Sie Commit aus, geben Sie eine Commit-Nachricht ein und wählen Sie erneut Commit aus.

YAML
So fügen Sie einen Auslöser hinzu (YAML-Editor)
  1. Öffnen Sie die - CodeCatalyst Konsole unter https://codecatalyst.aws/.

  2. Wählen Sie Ihr Projekt.

  3. Wählen Sie im Navigationsbereich CI/CD und dann Workflows aus.

  4. Wählen Sie den Namen Ihres Workflows aus. Sie können nach dem Quell-Repository oder dem Verzweigungsnamen filtern, in dem der Workflow definiert ist, oder nach Workflow-Namen filtern.

  5. Wählen Sie Bearbeiten aus.

  6. Wählen Sie YAML aus.

  7. Fügen Sie einen Triggers Abschnitt und die zugrunde liegenden Eigenschaften hinzu, indem Sie das folgende Beispiel als Leitfaden verwenden. Weitere Informationen finden Sie unter Triggers im Referenz zur Workflow-Definition.

    Ein Code-Push-Auslöser könnte wie folgt aussehen:

    Triggers: - Type: PUSH Branches: - main

    Ein Pull-Anforderungsauslöser könnte wie folgt aussehen:

    Triggers: - Type: PULLREQUEST Branches: - main.* Events: - OPEN - REVISION - CLOSED

    Ein Zeitplanauslöser könnte wie folgt aussehen:

    Triggers: - Type: SCHEDULE Branches: - main.* # Run the workflow at 1:15 am (UTC+0) every Friday until the end of 2023 Expression: "15 1 ? * FRI 2022-2023"

    Weitere Beispiele für Cron-Ausdrücke, die Sie in der -ExpressionEigenschaft verwenden können, finden Sie unter Expression.

    Weitere Beispiele für Push-, Pull-Anforderungs- und Zeitplanauslöser finden Sie unter Beispiele für Auslöser.

  8. (Optional) Wählen Sie Validieren, um den YAML-Code des Workflows vor dem Commit zu validieren.

  9. Wählen Sie Commit aus, geben Sie eine Commit-Nachricht ein und wählen Sie erneut Commit aus.

Beispiele für Auslöser

Die folgenden Beispiele zeigen, wie Sie verschiedene Arten von Auslösern in der Workflow-Definitionsdatei hinzufügen.

Beispiel: Ein einfacher Code-Push-Auslöser

Das folgende Beispiel zeigt einen Auslöser, der eine Workflow-Ausführung startet, wenn Code an eine Verzweigung in Ihrem Quell-Repository übertragen wird.

Wenn dieser Auslöser aktiviert ist, CodeCatalyst startet eine Workflow-Ausführung mit den Dateien in der Verzweigung, an die Sie übertragen (d. h. der Zielverzweigung).

Wenn Sie beispielsweise einen Commit an übertragenmain, CodeCatalyst startet eine Workflow-Ausführung mit der workfow-Definitionsdatei und anderen Quelldateien auf main.

Wenn Sie beispielsweise einen Commit an übertragenfeature-branch-123, CodeCatalyst startet eine Workflow-Ausführung mit der Workfow-Definitionsdatei und anderen Quelldateien auf feature-branch-123.

Triggers: - Type: PUSH
Anmerkung

Wenn Sie möchten, dass eine Workflow-Ausführung nur gestartet wird, wenn Sie zu pushenmain, finden Sie weitere Informationen unter Beispiel: Ein einfacher „Push to Main“-Auslöser.

Beispiel: Ein einfacher „Push to Main“-Auslöser

Das folgende Beispiel zeigt einen Auslöser, der eine Workflow-Ausführung startet, wenn Code an den main Zweig – und nur den main Zweig – in Ihrem Quell-Repository übertragen wird.

Triggers: - Type: PUSH Branches: - main

Beispiel: Ein einfacher Pull-Anforderungsauslöser

Das folgende Beispiel zeigt einen Auslöser, der eine Workflow-Ausführung startet, wenn eine Pull-Anforderung in Ihrem Quell-Repository erstellt oder überarbeitet wird.

Wenn dieser Auslöser aktiviert ist, CodeCatalyst startet eine Workflow-Ausführung mit der Workflow-Definitionsdatei und anderen Quelldateien in der Verzweigung, aus der Sie abrufen (d. h. der Quellverzweigung).

Wenn Sie beispielsweise eine Pull-Anforderung mit einer Quellverzweigung namens feature-123 und einer Zielverzweigung namens erstellenmain, CodeCatalyst startet eine Workflow-Ausführung mit der Workfow-Definitionsdatei und anderen Quelldateien auf feature-123.

Triggers: - Type: PULLREQUEST Events: - OPEN - REVISION

Beispiel: Ein einfacher Zeitplanauslöser

Das folgende Beispiel zeigt einen Auslöser, der eine Workflow-Ausführung jeden Montag bis Freitag um Mitternacht (UTC+0) startet.

Wenn dieser Auslöser aktiviert ist, CodeCatalyst startet eine einzelne Workflow-Ausführung für jede Verzweigung in Ihrem Quell-Repository, die eine Workflow-Definitionsdatei mit diesem Auslöser enthält.

Wenn Sie beispielsweise drei Verzweigungen in Ihrem Quell-Repository haben, main, release-v1feature-123, und jede dieser Verzweigungen enthält eine Workflow-Definitionsdatei mit dem folgenden Auslöser, CodeCatalyst startet drei Workflow-Ausführungen: eine mit den Dateien in release-v1, maineine mit den Dateien in und eine andere mit den Dateien in feature-123.

Triggers: - Type: SCHEDULE Expression: "0 0 ? * MON-FRI *"

Weitere Beispiele für Cron-Ausdrücke, die Sie in der -ExpressionEigenschaft verwenden können, finden Sie unter Expression.

Beispiel: Ein Auslöser mit einem Zeitplan und Verzweigungen

Das folgende Beispiel zeigt einen Auslöser, der jeden Tag um 18:15 Uhr (UTC+0) eine Workflow-Ausführung startet.

Wenn dieser Auslöser aktiviert ist, CodeCatalyst startet eine Workflow-Ausführung mit den Dateien in der main Verzweigung und startet zusätzliche Ausführungen für jede Verzweigung, die mit beginntrelease-.

Wenn Sie beispielsweise Verzweigungen mit den Namen main, release-v1bugfix-1, und bugfix-2 in Ihrem Quell-Repository haben, CodeCatalyst startet zwei Workflow-Ausführungen: eine mit den Dateien in mainund eine andere mit den Dateien in release-v1. Workflow-Ausführungen für die bugfix-1 Verzweigungen bugfix-1 und werden nicht gestartet.

Triggers: - Type: SCHEDULE Expression: "15 18 * * ? *" Branches: - main - release\-.*

Weitere Beispiele für Cron-Ausdrücke, die Sie in der -ExpressionEigenschaft verwenden können, finden Sie unter Expression.

Beispiel: Ein Auslöser mit einem Zeitplan, einem Push und Verzweigungen

Das folgende Beispiel zeigt einen Auslöser, der jeden Tag eine Workflow-Ausführung um Mitternacht (UTC+0) startet und immer dann, wenn Code an die main Verzweigung übertragen wird.

In diesem Beispiel:

  • Eine Workflow-Ausführung beginnt jeden Tag um Mitternacht. Die Workflow-Ausführung verwendet die Workflow-Definitionsdatei und andere Quelldateien in der main Verzweigung.

  • Eine Workflow-Ausführung beginnt auch, wenn Sie einen Commit an die main Verzweigung übertragen. Die Workflow-Ausführung verwendet die Workflow-Definitionsdatei und andere Quelldateien in der Zielverzweigung (main).

Triggers: - Type: SCHEDULE Expression: "0 0 * * ? *" Branches: - main - Type: PUSH Branches: - main

Weitere Beispiele für Cron-Ausdrücke, die Sie in der -ExpressionEigenschaft verwenden können, finden Sie unter Expression.

Beispiel: Ein Auslöser mit einem Pull und Verzweigungen

Das folgende Beispiel zeigt einen Auslöser, der eine Workflow-Ausführung startet, wenn jemand eine Pull-Anforderung mit einem Zielzweig namens öffnet oder ändertmain. Obwohl die in der Triggers Konfiguration angegebene Verzweigung istmain, verwendet die Workflow-Ausführung die Workflow-Definitionsdatei und andere Quelldateien in der Quellverzweigung (die Verzweigung, aus der Sie abrufen).

Triggers: - Type: PULLREQUEST Branches: - main Events: - OPEN - REVISION

Beispiel: Ein Auslöser mit einem Pull-, Verzweig- und einem „CLOSED“-Ereignis

Das folgende Beispiel zeigt einen Auslöser, der eine Workflow-Ausführung startet, wenn eine Pull-Anforderung für eine Verzweigung geschlossen wird, die mit beginntmain.

In diesem Beispiel:

  • Wenn Sie eine Pull-Anforderung mit einem Zielzweig schließen, der mit beginntmain, beginnt eine Workflow-Ausführung automatisch mit der Workflow-Definitionsdatei und anderen Quelldateien im (jetzt geschlossenen) Quellzweig.

  • Wenn Sie Ihr Quell-Repository so konfiguriert haben, dass Verzweigungen automatisch gelöscht werden, nachdem eine Pull-Anforderung zusammengeführt wurde, haben diese Verzweigungen nie die Möglichkeit, in den -CLOSEDStatus überzugehen. Das bedeutet, dass zusammengeführte Verzweigungen den Pull-CLOSEDAnforderungsauslöser nicht aktivieren. Die einzige Möglichkeit, den CLOSED Auslöser in diesem Szenario zu aktivieren, besteht darin, die Pull-Anforderung zu schließen, ohne sie zusammenzuführen.

Triggers: - Type: PULLREQUEST Branches: - main.* Events: - CLOSED

Beispiel: Ein Auslöser mit Push, Verzweigungen und Dateien

Das folgende Beispiel zeigt einen Auslöser, der eine Workflow-Ausführung startet, wenn eine Änderung an der filename.txt Datei oder einer Datei im src Verzeichnis auf der main Verzweigung vorgenommen wird.

Wenn dieser Auslöser aktiviert ist, CodeCatalyst startet eine Workflow-Ausführung mit der Workflow-Definitionsdatei und anderen Quelldateien in der main Verzweigung.

Triggers: - Type: PUSH Branches: - main FilesChanged: - filename.txt - src\/.*