Запланированный триггер в Azure Pipeline, многоэтапный для конкретного этапа

У меня есть многоступенчатый конвейер в Azure DevOps, и я хотел бы запускать один из этапов каждую ночь, но другие этапы будут запускаться изменениями в репозитории GitHub. Мне интересно, можно ли использовать запланированный триггер только для одного этапа, если да, то как? как я обнаружил в Google, кажется, что это только для всего конвейера. Как можно запустить только один этап в определенный день и время?

Вот как выглядит конвейер:

name: Pipeline

trigger:
  branches:
    include:
      - master
      - refs/tags/v*

variables:

resources:
  repositories:

stages:
 - stage: Build
   jobs:
   - job: Build
     steps:

     pool:
       vmImage: 'ubuntu-latest'

 - stage: Deploy_Dev
   variables:

   jobs:
   - steps:

###Nightly triggered

 - stage: Deploy_Test
   variables:

   jobs:
   - steps:

person Matrix    schedule 06.01.2020    source источник


Ответы (1)


Мне интересно, можно ли использовать запланированный триггер только для одного этапа, если да, то как? как я обнаружил в Google, кажется, что это только для всего конвейера. Как можно запустить только один этап в определенный день и время?

Боюсь, что нет такого нестандартного способа добиться этого. Как известно, это только для всего трубопровода.

В качестве обходного пути для этого вопроса вы можете установить определенные в пользовательском интерфейсе запланированные триггеры для этого конвейера:

введите здесь описание изображения

Затем добавьте настраиваемое условие для задания на Deploy_Test стадии:

 - stage: Deploy_Test
   jobs:      
   - job:
     condition: and(always(), eq(variables['Build.Reason'], 'Schedule'))
     steps:

В этом случае этап выполняется только тогда, когда сборка запускается запланированным триггером. Если сборка запускается изменениями в репозитории GitHub, этап stage Deploy_Test будет пропущен:

введите здесь описание изображения

Примечание. Ограничение этого обходного пути заключается в том, что когда ваш конвейер запускается запланированным триггером, этапы build и Deploy_Dev также выполняются.

Надеюсь это поможет.

person Leo Liu-MSFT    schedule 07.01.2020