Delen via


breidt definitie

Een pijplijn uitbreiden met behulp van een sjabloon.

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

Definities die naar deze definitie verwijzen: pijplijn

Eigenschappen

template tekenreeks.
De sjabloon waarnaar wordt verwezen door de pijplijn om uit te breiden.

parameters sjabloonparameters.
parameters die worden gebruikt in de uitbreiding.

Voorbeelden

Sjablonen en hun parameters worden omgezet in constanten voordat de pijplijn wordt uitgevoerd. Sjabloonparameters bieden typeveiligheid voor invoerparameters. In dit voorbeeld definieert de sjabloon start.yml de parameter buildSteps, die vervolgens wordt gebruikt in azure-pipelines.yml. Als een buildStep wordt doorgegeven met een scriptstap, wordt deze geweigerd en mislukt de pijplijnbuild.

# 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"

Zie ook