Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Расширение конвейера с помощью шаблона.
extends:
template: string # The template referenced by the pipeline to extend.
parameters: # Parameters used in the extend.
Определения, ссылающиеся на это определение: конвейер
Свойства
строка template
.
Шаблон, на который ссылается конвейер для расширения.
parameters
параметры шаблона.
параметры, используемые в расширении.
Примеры
Шаблоны и их параметры превратятся в константы перед запуском конвейера.
Параметры шаблона обеспечивают безопасность типов для входных параметров.
В этом примере шаблон start.yml
определяет параметр buildSteps
, который затем используется в azure-pipelines.yml
. Если сборкаStep передается с шагом скрипта, то она отклоняется и сборка конвейера завершается сбоем.
# 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"
См. также
- Типы шаблонов &
- Безопасность с помощью шаблонов