Основываясь на моем тесте, кажется, что stagelist в start_stage.yml
не поддерживает добавление директивы each
для получения более глубокого содержимого (например, работа и шаги).
Когда вы используете stagelist, он может получить сцену и использовать ее для сравнения.
Например:
parameters:
- name: cdstages # the name of the parameter is buildSteps
type: stageList # data type is StepList
default: [] # default value of buildSteps
stages:
- ${{ each stage in parameters.cdstages }}:
- ${{ each pair in stage }}:
${{ if ne(pair.value, 'abc') }}:
${{ pair.key }}: ${{ pair.value }}
${{ if eq(pair.value, 'abc') }}:
'${{ pair.value }}': error
Этот шаблон Yaml может работать.
Но когда я добавляю директиву each
за сценой, чтобы получить работу. Задания недоступны.
parameters:
- name: cdstages
type: stageList
default: []
stages:
- ${{ each stage in parameters.cdstages }}:
- ${{ each job in stage.jobs }}:
- ${{ each pair in job }}:
${{ if ne(pair.value, 'abc') }}:
${{ pair.key }}: ${{ pair.value }}
${{ if eq(pair.value, 'abc') }}:
'${{ pair.value }}': error
В соответствии с вашими требованиями вам необходимо получить этап сборки и использовать его для сравнения.
Вы можете попробовать напрямую использовать тип steplist
.
Вот пример steplist , вы могли бы сослаться на него.
Надеюсь на это помогает.