選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

使用程式碼推送或提取請求事件類型新增觸發

焦點模式
使用程式碼推送或提取請求事件類型新增觸發 - AWS CodePipeline

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

您可以設定管道觸發條件的篩選條件,以啟動不同 Git 事件的管道執行,例如標籤或分支推送、特定檔案路徑的變更、開啟特定分支的提取請求等。您可以使用 AWS CodePipeline 主控台或 中的 create-pipelineupdate-pipeline命令 AWS CLI 來設定觸發篩選條件。

注意

動作組態BranchName欄位定義單一分支,而具有篩選條件的觸發條件可用於您指定的任何分支。對於使用觸發來透過推送或提取請求篩選分支的管道,管道不會在動作組態中使用預設BranchName欄位分支。不過,手動啟動管道時,動作組態中 BranchName 欄位的分支是預設值。如需範例,請參閱「5:在預設動作組態 BranchName 用於手動啟動時設定的觸發」。

您可以為下列觸發類型指定篩選條件:

  • 推送

    推送觸發會在將變更推送至來源儲存庫時啟動管道。執行將使用您推送的分支 (即目的地分支) 中的遞交。您可以在分支、檔案路徑或 Git 標籤上篩選推送觸發。

  • 提取請求

    提取請求觸發會在來源儲存庫中開啟、更新或關閉提取請求時啟動管道。執行將使用您中提取的來源分支 (即來源分支) 中的遞交。您可以在分支和檔案路徑上篩選提取請求觸發。

    提取請求支援的事件類型如下。會忽略所有其他提取請求事件。

    • 已開啟

    • Updated

    • 關閉 (合併)

    注意

    某些提取請求事件行為可能因提供者而有所不同。如需詳細資訊,請參閱 依供應商提取觸發的請求事件

管道定義可讓您在相同的推送觸發組態中結合不同的篩選條件。如需管道定義的詳細資訊,請參閱 新增推送和提取請求事件類型的篩選條件 (CLI)。如需欄位定義的清單,請參閱本指南中管道結構參考中的觸發

新增推送和提取請求事件類型的篩選條件 (主控台)

您可以使用 主控台為推送事件新增篩選條件,並包含或排除分支或檔案路徑。

新增篩選條件 (主控台)
  1. 登入 AWS Management Console 並開啟 CodePipeline 主控台,網址為 https://http://console.aws.amazon.com/codesuite/codepipeline/home

    與 AWS 您的帳戶相關聯的所有管道名稱和狀態都會顯示。

  2. Name (名稱) 中,選擇您想編輯的管道名稱。否則,請在管道建立精靈上使用這些步驟。

  3. 在管道詳細資訊頁面上,選擇 Edit (編輯)

  4. 編輯頁面上,選擇您要編輯的來源動作。選擇編輯觸發條件。選擇指定篩選條件

  5. 事件類型中,從下列選項中選擇推送

    • 選擇推送以在變更推送至來源儲存庫時啟動管道。選擇此選項可讓欄位指定分支和檔案路徑或 Git 標籤的篩選條件。

    • 選擇提取請求,以在來源儲存庫中開啟、更新或關閉提取請求時啟動管道。選擇此選項可讓欄位指定目的地分支和檔案路徑的篩選條件。

  6. 推送下,在篩選條件類型中,選擇下列其中一個選項。

    • 選擇分支以指定觸發器監控的來源儲存庫中的分支,以便知道何時啟動工作流程執行。在包含中,以 glob 格式輸入您要為觸發組態指定的分支名稱模式,以在指定的分支變更時啟動管道。在排除中,以 glob 格式輸入分支名稱的 regex 模式,您要為觸發組態指定此模式,以忽略和不要在指定分支的變更時啟動管道。如需更多資訊,請參閱使用語法中的 glob 模式

      注意

      如果包含和排除兩者的模式相同,則預設為排除模式。

      您可以使用 glob 模式來定義分支名稱。例如,使用 main* 來比對以 開頭的所有分支main。如需更多資訊,請參閱使用語法中的 glob 模式

      針對推送觸發,指定您要推送分支,也就是目的地分支。對於提取請求觸發,指定您要開啟提取請求的目標分支。

    • (選用) 在檔案路徑下,為您的觸發指定檔案路徑。視需要在包含排除中輸入名稱。

      您可以使用 glob 模式來定義檔案路徑名稱。例如,使用 prod*來比對以 開頭的所有檔案路徑prod。如需更多資訊,請參閱使用語法中的 glob 模式

    • 選擇標籤以設定管道觸發組態,以 Git 標籤開頭。在包含中,以 glob 格式輸入您要為觸發組態指定的標籤名稱模式,以在發行指定的標籤時啟動管道。在排除中,以 glob 格式輸入標籤名稱的 regex 模式,您要為觸發組態指定此模式,以忽略指定標籤或標籤的發行時,不要啟動管道。如果包含和排除兩者的標籤模式相同,則預設為排除標籤模式。

  7. 推送下,在篩選條件類型中,選擇下列其中一個選項。

    • 選擇分支以指定觸發器監控的來源儲存庫中的分支,以便知道何時啟動工作流程執行。在包含中,以 glob 格式輸入您要為觸發組態指定的分支名稱模式,以在指定的分支變更時啟動管道。在排除中,以 glob 格式輸入分支名稱的 regex 模式,您要為觸發組態指定此模式,以忽略和不要在指定分支的變更時啟動管道。如需更多資訊,請參閱使用語法中的 glob 模式

      注意

      如果包含和排除兩者的模式相同,則預設為排除模式。

      您可以使用 glob 模式來定義分支名稱。例如,使用 main* 來比對以 開頭的所有分支main。如需更多資訊,請參閱使用語法中的 glob 模式

      對於推送觸發,指定您要推送分支,也就是目的地分支。對於提取請求觸發,指定您要開啟提取請求的目標分支。

    • (選用) 在檔案路徑下,為您的觸發指定檔案路徑。視需要在包含排除中輸入名稱。

      您可以使用 glob 模式來定義檔案路徑名稱。例如,使用 prod*來比對以 開頭的所有檔案路徑prod。如需更多資訊,請參閱使用語法中的 glob 模式

    • 選擇提取請求以設定管道觸發組態,以從您指定的提取請求事件開始。

新增推送和提取請求事件類型的篩選條件 (CLI)

您可以更新管道 JSON 以新增觸發條件的篩選條件。

若要使用 AWS CLI 建立或更新管道,請使用 create-pipelineupdate-pipeline命令。

下列範例 JSON 結構提供 下欄位定義的參考create-pipeline

如需欄位定義的清單,請參閱本指南中管道結構參考中的觸發

{ "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" } } ] } ] } }

新增推送和提取請求事件類型的篩選條件 (AWS CloudFormation 範本)

您可以在 中更新管道資源 AWS CloudFormation ,以新增觸發條件篩選。

下列範例範本程式碼片段提供觸發條件欄位定義的 YAML 參考。如需欄位定義的清單,請參閱本指南中管道結構參考中的觸發

如需連線來源和觸發篩選條件組態的完整範本範例,請參閱《 AWS CloudFormation 使用者指南》中的具有兩個階段的管道和觸發組態

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
隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。