Partager via


étend la définition

Étendre un pipeline à l’aide d’un modèle.

extends:
  template: string # The template referenced by the pipeline to extend.
  parameters: # Parameters used in the extend.

Définitions qui font référence à cette définition : pipeline

Propriétés

chaîne template.
Le modèle référencé par le pipeline à étendre.

parameters paramètres de modèle.
Paramètres utilisés dans l’extension.

Exemples

Les modèles et leurs paramètres sont transformés en constantes avant l’exécution du pipeline. Les paramètres de modèle fournissent une sécurité de type aux paramètres d’entrée. Dans cet exemple, le modèle start.yml définit le paramètre buildSteps, qui est ensuite utilisé dans azure-pipelines.yml. Si une buildStep est passée avec une étape de script, elle est rejetée et la build du pipeline échoue.

# File: start.yml
parameters:
- name: buildSteps # the name of the parameter is buildSteps
  type: stepList # data type is StepList
  default: [] # default value of buildSteps
stages:
- stage: secure_buildstage
  pool:
    vmImage: windows-latest
  jobs:
  - job: secure_buildjob
    steps:
    - script: echo This happens before code 
      displayName: 'Base: Pre-build'
    - script: echo Building
      displayName: 'Base: Build'

    - ${{ each step in parameters.buildSteps }}:
      - ${{ each pair in step }}:
          ${{ if ne(pair.value, 'CmdLine@2') }}:
            ${{ pair.key }}: ${{ pair.value }}       
          ${{ if eq(pair.value, 'CmdLine@2') }}: 
            # Step is rejected by raising a YAML syntax error: Unexpected value 'CmdLine@2'
            '${{ pair.value }}': error         

    - script: echo This happens after code
      displayName: 'Base: Signing'
# File: azure-pipelines.yml
trigger:
- main

extends:
  template: start.yml
  parameters:
    buildSteps:  
      - bash: echo Test #Passes
        displayName: succeed
      - bash: echo "Test"
        displayName: succeed
      # Step is rejected by raising a YAML syntax error: Unexpected value 'CmdLine@2'
      - task: CmdLine@2
        inputs:
          script: echo "Script Test"
      # Step is rejected by raising a YAML syntax error: Unexpected value 'CmdLine@2'
      - script: echo "Script Test"

Voir aussi