簡體   English   中英

Azure Devops 從其他管道的多個階段觸發管道

[英]Azure Devops Trigger a Pipeline from Multiple Stages of Other Pipeline

我正在嘗試在開發管道期間觸發的 Azure DevOps 中集成 QA 管道。 開發管道有 4 個環境可供構建部署到,其中每個環境都是開發管道中的一個階段

目前,我可以使用 4 個單獨的 QA 管道在每個管道中使用與此類似的語法來觸發每個環境的 QA 構建:

resources:
  pipelines:
  - pipeline: Dev_Env_1
    source: Dev
    trigger:
     stages:
       - Env_1

我的目標是只有一個 QA 管道,在完成每個階段時由開發管道多次觸發。 感覺像這樣的 yml 文件中的語法應該可以工作:

resources:
  pipelines:
  - pipeline: Dev_Env_1
    source: Dev
    trigger:
     stages:
       - Env_1

  - pipeline: Dev_Env_2
    source: Dev
    trigger:
     stages:
       - Env_2

但是,這僅在 Env_1 完成后觸發,此時我想觸發構建以完成 Dev 管道中的 Env_1 和 Env_2 階段。

有沒有辦法在不徹底改變任何一條管道當前工作方式的情況下做到這一點?

以下步驟可以幫助您實現您的要求。

例如,

開發管道

#Dev Pipeline
trigger:
- none
pool:
  vmImage: 'windows-latest'

stages:
  - stage: Env_1
    displayName: Env_1
    jobs:
      - job:
        steps:
        - task: CmdLine@2
          inputs:
            script: |
              echo Stage1
  - stage: Env_2
    displayName: Env_2
    jobs:
      - job:
        steps:
        - task: CmdLine@2
          inputs:
            script: |
              echo Stage2
  - stage: Env_3
    displayName: Env_3
    jobs:
      - job:
        steps:
        - task: CmdLine@2
          inputs:
            script: |
              echo Stage3
  - stage: Env_4
    displayName: Env_4
    jobs:
      - job:
        steps:
        - task: CmdLine@2
          inputs:
            script: |
              echo Stage4

1、創建一個傳入的webhook服務連接,以及一個由Dev Pipeline階段完成和成功觸發的傳入服務webhook。

在此處輸入圖像描述

在此處輸入圖像描述

在此處輸入圖像描述

在此處輸入圖像描述

在此處輸入圖像描述

傳入服務掛鈎 URI: https://dev.azure.com/<ADO Organization>/_apis/public/distributedtask/webhooks/<WebHook Name>?api-version=6.0-preview

官方文件:

https://docs.microsoft.com/en-us/azure/devops/release-notes/2020/pipelines/sprint-172-update#generic-webhook-based-triggers-for-yaml-pipelines

之后,編寫 QA 管道,如下所示:

質量檢查管道

# QA pipeline

trigger:
- none

resources:
 webhooks:
   - webhook: bowmantest
     connection: BowmanIncommingWebHook


pool:
  vmImage: 'windows-latest'


steps:
- task: CmdLine@2
  inputs:
    script: |
      echo QA pipeline

一切正常:

在此處輸入圖像描述

在此處輸入圖像描述

在此處輸入圖像描述

在此處輸入圖像描述

暫無
暫無

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

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