簡體   English   中英

如何基於多個工作流觸發GitHub Action工作流

[英]How to trigger GitHub Action workflow based on several workflows

假設我有三個工作流程: build_backendbuild_frontenddeploy 前兩個應該並行觸發,但第三個應該只在這兩個工作流都完成時觸發。

目前, deploy工作流會觸發兩次——我懷疑這是針對已完成的兩個工作流中的每一個。

# .github/workflows/build-xxx.yml
name: Build and Test - Backend

on:
  push:
    branches:
      - master
  pull_request:
    branches:
      - master

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v2
# ...    
# .github/workflows/deploy.yml
name: Deploy

on:
  workflow_run:
    workflows:
      - "Build and Test - Backend"
      - "Build and Test - Frontend"
    types:
      - completed
    branch: master

jobs:
  deploy:
# ...

我還沒有在文檔中找到解決方案:

GitHub 操作不支持整個工作流的特定觸發器定義。

但是,您可以在工作級別使用needs 關鍵字 因此,如果您可以將所有這些工作流程整合到一個工作流程文件中。 看起來這對你有用,因為這些工作流都有相同的(分支)觸發器,而 buildxxx 每個都只是一個單一的工作。

還有一個 GitHub 路線圖項目描述,他們正在努力添加工作流部分。 如果您願意,這將使您將來能夠將這些部分分開,但這似乎還不可行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM