本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
GitHub Webhook 事件
您可以使用 Webhook 篩選群組來指定哪些 GitHub Webhook 事件會觸發組建。例如,您可以指定只有特定分支的變更才會觸發組建。
您可以建立一或多個 Webhook 篩選群組來指定哪些 Webhook 事件會觸發組建。如果任何篩選條件群組評估為 true,就會觸發組建,當群組中的所有篩選條件評估為 true 時,就會發生組建。當您建立篩選群組時,您可以指定這些項目:
- 事件
-
對於 GitHub,您可以選擇下列一或多個事件:
PUSH、PULL_REQUEST_CREATED、PULL_REQUEST_UPDATED、PULL_REQUEST_REOPENED、、PULL_REQUEST_MERGEDPULL_REQUEST_CLOSED、RELEASED、PRERELEASED和WORKFLOW_JOB_QUEUED。Webhook 事件類型位在 Webhook 承載的X-GitHub-Event標頭中。在X-GitHub-Event標頭中,您可能會看到pull_request或push。若為提取請求事件,類型位在 Webhook 事件承載的action欄位中。下表顯示X-GitHub-Event標頭值和 Webhook 提取請求承載action欄位值如何映射到可用的事件類型。X-GitHub-Event標頭值Webhook 事件承載 action值事件類型 pull_requestopenedPULL_REQUEST_CREATEDpull_requestreopenedPULL_REQUEST_REOPENEDpull_requestsynchronizePULL_REQUEST_UPDATEDpull_requestclosed,而merged欄位為truePULL_REQUEST_MERGEDpull_requestclosed,而merged欄位為falsePULL_REQUEST_CLOSEDpushN/A PUSHrelease已發佈 RELEASEDrelease預先發行 PRERELEASEDworkflow_jobqueued WORKFLOW_JOB_QUEUED注意
PULL_REQUEST_REOPENED事件類型僅能搭配 GitHub 和 GitHub Enterprise Server 使用。RELEASED和PRERELEASED事件類型只能與 GitHub 搭配使用。如需WORKFLOW_JOB_QUEUED的詳細資訊,請參閱教學課程:設定 CodeBuild 託管的 GitHub 動作執行器。 - 一或多個選用篩選條件
-
使用規則表達式來指定篩選條件。若要讓事件觸發組建,與其相關聯的群組中的每個篩選條件都必須評估為 true。
ACTOR_ACCOUNT_ID(ACTOR_ID主控台中的 )-
當 GitHub 或 GitHub Enterprise Server 帳戶 ID 符合規則表達式模式時,Webhook 事件會觸發組建。此值位於 Webhook 承載之
sender物件的id屬性中。 HEAD_REF-
當前端參考符合規則表達式模式 (例如,
refs/heads/branch-name或 ) 時,Webhook 事件會觸發組建refs/tags/tag-name。若為推送事件,參考名稱位在 Webhook 承載的ref屬性中。若為提取請求事件,分支名稱位在 Webhook 承載之head物件的ref屬性中。 BASE_REF-
當基本參考符合規則表達式模式 (例如,) 時,Webhook 事件會觸發組建
refs/heads/branch-name。BASE_REF篩選條件僅可搭配提取請求事件使用。分支名稱位在 Webhook 承載之base物件的ref屬性中。 FILE_PATH-
當變更檔案的路徑符合規則表達式模式時,Webhook 會觸發組建。
FILE_PATH篩選條件可以用於 GitHub 推送和提取請求事件和 GitHub Enterprise Server 推送事件。它不能與 GitHub Enterprise Server 提取請求事件一起使用。 COMMIT_MESSAGE-
當頭部遞交訊息符合規則表達式模式時,Webhook 會觸發組建。
COMMIT_MESSAGE篩選條件可以用於 GitHub 推送和提取請求事件和 GitHub Enterprise Server 推送事件。它不能與 GitHub Enterprise Server 提取請求事件一起使用。 TAG_NAME-
當版本的標籤名稱符合規則表達式模式時,Webhook 會觸發組建。
TAG_NAME篩選條件可與 GitHub 發行和預先發行的請求事件搭配使用。 RELEASE_NAME-
當版本名稱符合規則表達式模式時,Webhook 會觸發組建。
RELEASE_NAME篩選條件可與 GitHub 發行和預先發行的請求事件搭配使用。 REPOSITORY_NAME-
當儲存庫名稱符合規則表達式模式時,Webhook 會觸發組建。
REPOSITORY_NAME篩選條件只能與 GitHub 全域或組織 Webhook 搭配使用。 ORGANIZATION_NAME-
當組織名稱符合規則表達式模式時,Webhook 會觸發組建。
ORGANIZATION_NAME篩選條件只能與 GitHub 全域 Webhook 搭配使用。 WORKFLOW_NAME-
當工作流程名稱符合規則表達式模式時,Webhook 會觸發組建。
WORKFLOW_NAME篩選條件可與 GitHub 動作工作流程任務佇列請求事件搭配使用。
注意
您可以在您 GitHub 儲存庫的 Webhook 設定中找到 Webhook 承載。