View a markdown version of this page

Trigger mit Code-Push- oder Pull-Request-Ereignistypen hinzufügen - AWS CodePipeline

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.

Trigger mit Code-Push- oder Pull-Request-Ereignistypen hinzufügen

Du kannst Filter für Pipeline-Trigger so konfigurieren, dass Pipeline-Ausführungen für verschiedene Git-Ereignisse wie Tag- oder Branch-Push, Änderungen in bestimmten Dateipfaden, ein in einem bestimmten Branch geöffneter Pull-Request usw. gestartet werden. Du kannst die AWS CodePipeline Konsole oder die update-pipeline Befehle create-pipeline und in der verwenden, um Triggerfilter AWS CLI zu konfigurieren.

Anmerkung

Das BranchName Feld für die Aktionskonfiguration definiert einen einzelnen Zweig, während Trigger mit Filtern für jeden Zweig oder jede von Ihnen angegebene Verzweigung verwendet werden können. Bei einer Pipeline, bei der Trigger verwendet werden, um Branches nach Push- oder Pull-Requests zu filtern, verwendet die Pipeline nicht das BranchName Standardfeld Branch in der Aktionskonfiguration. Die Verzweigung im BranchName Feld in der Aktionskonfiguration ist jedoch die Standardeinstellung, wenn die Pipeline manuell gestartet wird. Ein Beispiel finden Sie unter 5: Der Trigger wurde konfiguriert, während die Standardaktionskonfiguration für einen manuellen Start verwendet BranchName wird.

Sie können Filter für die folgenden Triggertypen angeben:

  • Push

    Ein Push-Trigger startet eine Pipeline, wenn eine Änderung an dein Quell-Repository übertragen wird. Bei der Ausführung wird das Commit aus dem Branch verwendet, zu dem Sie den Push senden (das ist der Ziel-Branch). Du kannst Push-Trigger nach Branches, Dateipfaden oder Git-Tags filtern.

  • Pull-Anfrage

    Ein Pull-Request-Trigger startet eine Pipeline, wenn ein Pull Request in deinem Quell-Repository geöffnet, aktualisiert oder geschlossen wird. Bei der Ausführung wird der Commit aus dem Quell-Branch verwendet, aus dem du die Daten abrufst (also aus dem Quell-Branch). Du kannst Pull-Request-Trigger für Branches und Dateipfade filtern.

    Die folgenden Ereignistypen für Pull Requests werden unterstützt. Alle anderen Pull-Request-Ereignisse werden ignoriert.

    • Opened (Geöffnet)

    • Aktualisiert

    • Geschlossen (zusammengeführt)

    Anmerkung

    Das Verhalten bestimmter Pull-Request-Ereignisse kann je nach Anbieter unterschiedlich sein. Details hierzu finden Sie unter Pull-Request-Ereignisse für Trigger nach Anbieter.

Die Pipeline-Definition ermöglicht es Ihnen, verschiedene Filter innerhalb derselben Push-Trigger-Konfiguration zu kombinieren. Einzelheiten zur Pipeline-Definition finden Sie unterFügen Sie Filter für Push- und Pull-Request-Ereignistypen (CLI) hinzu. Eine Liste der Felddefinitionen finden Sie unter Trigger in der Pipeline-Strukturreferenz in diesem Handbuch.

Fügen Sie Filter für Push- und Pull-Request-Ereignistypen hinzu (Konsole)

Sie können die Konsole verwenden, um Filter für Push-Ereignisse hinzuzufügen und Branches oder Dateipfade ein- oder auszuschließen.

Filter hinzufügen (Konsole)
  1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die CodePipeline Konsole unter http://console.aws.amazon.com/codesuite/codepipeline/home.

    Die Namen und der Status aller mit Ihrem AWS Konto verknüpften Pipelines werden angezeigt.

  2. Wählen Sie im Feld Name den Namen der Pipeline aus, die Sie bearbeiten möchten. Verwenden Sie andernfalls diese Schritte im Assistenten zur Pipeline-Erstellung.

  3. Wählen Sie auf der Pipelinedetails-Seite Edit aus.

  4. Wählen Sie auf der Seite „Bearbeiten“ die Quellaktion aus, die Sie bearbeiten möchten. Wählen Sie Trigger bearbeiten aus. Wählen Sie Filter angeben.

  5. Wählen Sie unter Ereignistyp die Option Push aus den folgenden Optionen aus.

    • Wähle Push, um die Pipeline zu starten, wenn eine Änderung an dein Quell-Repository übertragen wird. Wenn Sie diese Option wählen, können die Felder Filter für Zweige und Dateipfade oder Git-Tags angeben.

    • Wähle Pull Request, um die Pipeline zu starten, wenn ein Pull Request in deinem Quell-Repository geöffnet, aktualisiert oder geschlossen wird. Wenn Sie diese Option wählen, können die Felder Filter für Ziel-Branches und Dateipfade angeben.

  6. Wählen Sie unter Push unter Filtertyp eine der folgenden Optionen aus.

    • Wählen Sie Branch, um die Branches in Ihrem Quell-Repository anzugeben, die der Trigger überwacht, um zu wissen, wann eine Workflow-Ausführung gestartet werden muss. Geben Sie im Feld Include Muster für Branch-Namen im Glob-Format ein, die Sie für die Trigger-Konfiguration angeben möchten, damit Ihre Pipeline bei Änderungen in den angegebenen Branches gestartet wird. Geben Sie im Feld Exclude die Regex-Muster für Zweignamen im Glob-Format ein, die Sie angeben möchten, damit die Triggerkonfiguration sie ignoriert und Ihre Pipeline nicht bei Änderungen in den angegebenen Verzweigungen startet. Weitere Informationen finden Sie unter Arbeiten mit Glob-Mustern in der Syntax.

      Anmerkung

      Wenn sowohl Include als auch Exclude dasselbe Muster haben, wird das Muster standardmäßig ausgeschlossen.

      Sie können Glob-Muster verwenden, um Ihre Filialnamen zu definieren. Verwenden Sie zum Beispiel, main* um alle Zweige abzugleichen, die mit main beginnen. Weitere Informationen finden Sie unter Arbeiten mit Glob-Mustern in der Syntax.

      Geben Sie für einen Push-Trigger die Zweige an, zu denen Sie den Push ausführen, d. h. die Ziel-Branches. Geben Sie für einen Pull-Request-Trigger die Ziel-Branches an, für die Sie einen Pull Request öffnen.

    • (Optional) Geben Sie unter Dateipfade die Dateipfade für Ihren Trigger an. Geben Sie die entsprechenden Namen in die Felder „Einschließen“ und „Ausschließen“ ein.

      Sie können Glob-Muster verwenden, um Ihre Dateipfadnamen zu definieren. Verwenden Sie zum Beispiel, prod* um alle Dateipfade abzugleichen, die mit prod beginnen. Weitere Informationen finden Sie unter Arbeiten mit Glob-Mustern in der Syntax.

    • Wählen Sie Tags, um die Pipeline-Trigger-Konfiguration so zu konfigurieren, dass sie mit Git-Tags beginnt. Geben Sie im Feld Include Muster für Tag-Namen im Glob-Format ein, die Sie für die Trigger-Konfiguration angeben möchten, damit Ihre Pipeline bei der Veröffentlichung des oder der angegebenen Tags gestartet wird. Geben Sie im Feld Exclude die Regex-Muster für Tag-Namen im Glob-Format ein, die Sie angeben möchten, damit die Triggerkonfiguration sie ignoriert und Ihre Pipeline nicht bei der Veröffentlichung des oder der angegebenen Tags startet. Wenn sowohl Include als auch Exclude dasselbe Tag-Muster haben, wird das Tag-Muster standardmäßig ausgeschlossen.

  7. Wählen Sie unter Push unter Filtertyp eine der folgenden Optionen aus.

    • Wählen Sie Branch, um die Branches in Ihrem Quell-Repository anzugeben, die der Trigger überwacht, um zu wissen, wann eine Workflow-Ausführung gestartet werden muss. Geben Sie im Feld Include Muster für Branch-Namen im Glob-Format ein, die Sie für die Trigger-Konfiguration angeben möchten, damit Ihre Pipeline bei Änderungen in den angegebenen Branches gestartet wird. Geben Sie im Feld Exclude die Regex-Muster für Zweignamen im Glob-Format ein, die Sie angeben möchten, damit die Triggerkonfiguration sie ignoriert und Ihre Pipeline nicht bei Änderungen in den angegebenen Verzweigungen startet. Weitere Informationen finden Sie unter Arbeiten mit Glob-Mustern in der Syntax.

      Anmerkung

      Wenn sowohl Include als auch Exclude dasselbe Muster haben, wird das Muster standardmäßig ausgeschlossen.

      Sie können Glob-Muster verwenden, um Ihre Filialnamen zu definieren. Verwenden Sie zum Beispiel, main* um alle Zweige abzugleichen, die mit main beginnen. Weitere Informationen finden Sie unter Arbeiten mit Glob-Mustern in der Syntax.

      Geben Sie für einen Push-Trigger die Zweige an, zu denen Sie den Push ausführen, d. h. die Ziel-Branches. Geben Sie für einen Pull-Request-Trigger die Ziel-Branches an, für die Sie einen Pull Request öffnen.

    • (Optional) Geben Sie unter Dateipfade die Dateipfade für Ihren Trigger an. Geben Sie die entsprechenden Namen in die Felder „Einschließen“ und „Ausschließen“ ein.

      Sie können Glob-Muster verwenden, um Ihre Dateipfadnamen zu definieren. Verwenden Sie zum Beispiel, prod* um alle Dateipfade abzugleichen, die mit prod beginnen. Weitere Informationen finden Sie unter Arbeiten mit Glob-Mustern in der Syntax.

    • Wählen Sie Pull Request, um die Pipeline-Trigger-Konfiguration so zu konfigurieren, dass sie mit von Ihnen angegebenen Pull-Request-Ereignissen beginnt.

Fügen Sie Filter für Push- und Pull-Request-Ereignistypen (CLI) hinzu

Sie können das Pipeline-JSON aktualisieren, um Filter für Trigger hinzuzufügen.

Verwenden Sie den update-pipeline Befehl or, AWS CLI um die Pipeline zu erstellen create-pipeline oder zu aktualisieren.

Das folgende Beispiel für eine JSON-Struktur bietet eine Referenz für die Felddefinitionen untercreate-pipeline.

Eine Liste der Felddefinitionen finden Sie unter Trigger in der Pipeline-Strukturreferenz in diesem Handbuch.

{ "pipeline": { "name": "MyServicePipeline", "triggers": [ { "provider": "Connection", "gitConfiguration": { "sourceActionName": "ApplicationSource", "push": [ { "filePaths": { "includes": [ "projectA/**", "common/**/*.js" ], "excludes": [ "**/README.md", "**/LICENSE", "**/CONTRIBUTING.md" ] }, "branches": { "includes": [ "feature/**", "release/**" ], "excludes": [ "mainline" ] }, "tags": { "includes": [ "release-v0", "release-v1" ], "excludes": [ "release-v2" ] } } ], "pullRequest": [ { "events": [ "CLOSED" ], "branches": { "includes": [ "feature/**", "release/**" ], "excludes": [ "mainline" ] }, "filePaths": { "includes": [ "projectA/**", "common/**/*.js" ], "excludes": [ "**/README.md", "**/LICENSE", "**/CONTRIBUTING.md" ] } } ] } } ], "stages": [ { "name": "Source", "actions": [ { "name": "ApplicationSource", "configuration": { "BranchName": "mainline", "ConnectionArn": "arn:aws:codestar-connections:eu-central-1:111122223333:connection/fe9ff2e8-ee25-40c9-829e-65f8EXAMPLE", "FullRepositoryId": "monorepo-example", "OutputArtifactFormat": "CODE_ZIP" } } ] } ] } }

Fügen Sie Filter für Push- und Pull-Request-Ereignistypen hinzu (CloudFormation Vorlagen)

Sie können die Pipeline-Ressource aktualisieren CloudFormation , um eine Triggerfilterung hinzuzufügen.

Das folgende Beispiel-Vorlagen-Snippet enthält eine YAML-Referenz für Trigger-Felddefinitionen. Eine Liste der Felddefinitionen finden Sie unter Trigger in der Pipeline-Strukturreferenz in diesem Handbuch.

Ein vollständiges Vorlagenbeispiel für eine Verbindungsquell- und Triggerfilterkonfiguration finden Sie im CloudFormation Benutzerhandbuch unter Pipeline mit zwei Stufen und Triggerkonfiguration.

pipeline: name: MyServicePipeline executionMode: PARALLEL triggers: - provider: CodeConnection gitConfiguration: sourceActionName: ApplicationSource push: - filePaths: includes: - projectA/** - common/**/*.js excludes: - '**/README.md' - '**/LICENSE' - '**/CONTRIBUTING.md' branches: includes: - feature/** - release/** excludes: - mainline - tags: includes: - release-v0 - release-v1 excludes: - release-v2 pullRequest: - events: - CLOSED branches: includes: - feature/** - release/** excludes: - mainline filePaths: includes: - projectA/** - common/**/*.js excludes: - '**/README.md' - '**/LICENSE' - '**/CONTRIBUTING.md' stages: - name: Source actions: - name: ApplicationSource configuration: BranchName: mainline ConnectionArn: arn:aws:codestar-connections:eu-central-1:111122223333:connection/fe9ff2e8-ee25-40c9-829e-65f85EXAMPLE FullRepositoryId: monorepo-example OutputArtifactFormat: CODE_ZIP