Azure Pipeline pour déclencher un Pipeline en utilisant YAML

Azure Pipeline pour déclencher un Pipeline en utilisant YAML

Pour le déclenchement d’un pipeline à partir d’un autre, la documentation officielle d’Azure suggère la solution ci-dessous, c’est-à-dire utiliser les déclencheurs de pipeline.

resources:
  pipelines:
  - pipeline: RELEASE_PIPELINE # any arbitrary name
    source: PIPELINE_NAME.    # name of the previous pipeline shown on azure UI portal
    trigger:
      branches:
        include:
        - dummy_branch        # name of branch on which pipeline need to trigger

Mais en réalité, ce qui se passe, c’est que cela déclenche deux pipelines. Prenons un exemple : supposons que nous ayons deux pipelines A et B et que nous voulions déclencher B quand A se termine. Dans ce scénario, B s’exécute 2 fois : une fois lors du commit (en parallèle avec A) et une seconde fois après la fin de A.

Pour éviter ce problème de double exécution du pipeline, suivez la solution ci-dessous :

trigger: none # add this trigger value to none
resources:
  pipelines:
  - pipeline: RELEASE_PIPELINE # any arbitrary name
    source: PIPELINE_NAME.    # name of the pipeline shown on azure UI portal
    trigger:
      branches:
        include:
          - dummy_branch        # name of branch on which pipeline need to trigger

En ajoutant trigger:none, le second pipeline ne se déclenchera pas au commit initial et ne se déclenchera que lorsque le premier aura terminé son travail.

J’espère que cela vous aidera.