Конвейеры Azure DevOps и рабочий процесс Team Foundation Server

Мы используем Azure DevOps для управления исходным кодом .NET. Мы работаем над проектами, используя как рабочий процесс Git, так и TFS (первый - это более новая работа, а второй - унаследованные проекты). Это произошло потому, что когда Azure DevOps была просто TFS, у нас была только корневая папка «Источник» с подпапками для разных типов программного обеспечения, а затем проекты внутри каждой. Это отлично работает для типа процесса проверки / фиксации, используемого TFS. Теперь с DevOps и рабочим процессом Git вместо единого «корневого» репозитория под названием Source с папками, разделяющими различные решения, у нас есть разные репозитории, представляющие каждое отдельное программное решение.

Для проектов в рамках рабочего процесса GIT мы можем уверенно использовать конвейеры Azure для создания процесса выпуска CI / CD. Однако я не уверен, как мы можем использовать это для работы с нашим репозиторием на основе TFS. На портале Azure DevOps наш репозиторий TFS - даже несмотря на то, что он содержит множество различных решений / проектов, представлен на портале как один «Проект» с названием «Источник».

Это означает, что я не понимаю, как заставить работать конвейер CI / CD, поскольку мы хотим построить конвейер только для определенных проектов в этом проекте \ Source. Кто-нибудь знает, как этого добиться? Если мы посмотрим на проекты Git, все будет легко, каждый проект отдельный и самодостаточный, но \ Source состоит из папок и подпапок с проектами внутри каждого. Это не один крупный проект, который можно было бы зарегистрировать и выпустить из него. Я надеюсь, что это имеет смысл, возможно, кто-то, имеющий некоторый прошлый опыт работы с этим типом управления версиями «двойной рабочий процесс» в Azure DevOps, мог бы прокомментировать?


person JamesMatson    schedule 10.05.2019    source источник


Ответы (1)


Вы можете создать несколько конвейеров Azure, каждый из которых будет обращаться к репозиторию TFVC (система управления версиями Team Foundation). Затем для каждого конвейера настраивается свое собственное сопоставление, где вам нужно быть довольно конкретным, чтобы получить только те файлы, которые вам нужны для создания решения для этого конвейера.

Вы можете определить отображение рабочей области, используя include (map) и excludes (cloak). Вы можете скрыть отдельные файлы, но вам придется вводить путь к их серверу вручную, когда я в последний раз проверял.

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

Следующим шагом является настройка фильтров CI для поиска правильных путей. Это может быть то же самое, что и сопоставление вашей рабочей области, но я также видел случаи, когда были настроены более конкретные фильтры.

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

В итоге вы получите один или несколько конвейеров для каждого решения в проекте, в котором размещается репозиторий TFVC. Назовите ваши конвейеры, вероятно, будет важно.

person jessehouwing    schedule 10.05.2019