Исключить типы файлов в триггерах CI в сборках конвейеров Azure Devops - PullRequest
0 голосов
/ 17 апреля 2019

У меня проблемы с настройкой сборки, когда фиксация только с изменениями файлов уценки не запускает сборку.

В сборке у меня включена непрерывная интеграция с фильтрами "include".

Чтобы исключить изменения в файлах уценки, я установил один "исключить" фильтры путей до **/*.md, которые, насколько я понимаю, шаблоны соответствия файлов должны рекурсивно соответствовать всем файлам, которые заканчиваются в .md. Однако, когда я нажимаю только изменение в файле уценки, сборка все еще запускается.

Я рассмотрел вопрос о добавлении фильтра путей «include» с /, но сборки по-прежнему запускаются без него.

Как указать, чтобы не указывать сборку при изменении только определенного типа файлов?

1 Ответ

3 голосов
/ 17 апреля 2019

На данный момент подстановочные знаки не поддерживаются для этих фильтров пути к файлу.

Вы будете вынуждены придерживаться другого соглашения об обходе триггера для этих файлов.

Установка.md файлы в явной структуре (например, / docs), которые можно исключить с помощью «шаблона», приведенного в примерах, которые вы связали exclude: docs/.

Иллюстрация:

Учитывая:

(repo)
\src
   |\d1
   |   \md
   |
    \d2
       \md

Следующее не срабатывает при изменениях в каталоге /md.

trigger:
  branches:
    include:
      - master
  paths:
    include:
      - /src/**/md/

Следующее всегда срабатывает при изменениях в src/, даже для файлов в обоих .../mdкаталоги.

trigger:
  branches:
    include:
      - master
  paths:
    include:
      - src/
    exclude:
      - src/**/md/

Следующие триггеры при изменениях в src/, src/d1/, src/d2, .../d2/md, но не при любых изменениях в src/d1/md/.

trigger:
  branches:
    include:
      - master
  paths:
    include:
      - src/
    exclude:
      - src/d1/md/

То же самое относится и к вашему конкретному желанию попробовать и вызвать группу файлов, используя *.md.

Если в каждом каталоге есть файл [variant]_README.md, то верно следующее:

CI срабатывает при внесении изменений в src/d1/md/f1_README.md

trigger:
  branches:
    include:
      - master
  paths:
    include:
      - src/
    exclude:
      - src/d1/md/*.md

CI срабатывает при внесении изменений в src/d1/md/f1_README.md

trigger:
  branches:
    include:
      - master
  paths:
    include:
      - src/
    exclude:
      - src/d1/md/*README.md

CI срабатывает при внесении изменений в src/d1/md/f1_README.md или любые другие .md файл.

trigger:
  branches:
    include:
      - master
  paths:
    include:
      - src/
    exclude:
      - /**/*.md

CI срабатывает при внесении изменений в src/d1/md/f1_README.md или любой другой файл .md.

trigger:
  branches:
    include:
      - master
  paths:
    include:
      - src/
    exclude:
      - /*.md

CI НЕ срабатывает при внесении изменений в src/d1/md/f1_README.md

trigger:
  branches:
    include:
      - master
  paths:
    include:
      - src/
    exclude:
      - src/d1/md/f1_README.md
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...