Как часть моей сборки TFS 2018, я хочу переместить файлы, используя задачи «Копировать файлы» и «Удалить файлы» вместе.Я использую одинаковые шаблоны сопоставления файлов в обеих этих задачах, но, похоже, у меня другое поведение.
Сценарий: Моя сборка TFS копирует артефакты сборки в сетевую папку \\some\path\Beta
,В моей сборке этот путь сохраняется как переменная $(NetworkPath)
.Корневая папка этих артефактов - это номер версии, который, конечно, меняется в каждой сборке.Я хочу очистить эту папку, добавив $(NetworkPath)\PreviousVersions
, который содержит все предыдущие версии, так что единственной версией, показанной в бета-версии, является самая последняя сборка.
Моя попытка: Я добавил задачу «Копировать файлы» (сначала) и задачу «Удалить файлы» (во-вторых) в мою сборку.Моя идея - скопировать все в $(NetworkPath)
в $(NetworkPath)\PreviousVersions
(исключая содержимое $(NetworkPath)\PreviousVersions
), прежде чем я сделаю вторую копию, чтобы поместить новую версию в $(NetworkPath)
.
В определениях задачисходная папка обеих задач - $(NetworkPath)
, а шаблоны соответствия файлов , которые я определил в поле Содержание для обеих задач:
**\**
!PreviousVersions\**
Целевая папка вЗадача «Копировать файлы», естественно, $(NetworkFolder)\PreviousVersion
.
Результаты: При этих путях поиска задача «Копирование файлов» работает правильно - она копирует все, что находится в $(NetworkPath)
, но нев $(NetworkPath)\PreviousVersions
и помещает его в $(NetworkPath)\PreviousVersions
.Однако последующая задача «Удалить файлы» удаляет все из $(NetworkPath)
, включая всю папку $(NetworkPath)\PreviousVersions
.Я ожидал, что он будет удалять только файлы и папки в $(NetworkPath)
, но не в $(NetworkPath)\PreviousVersions
.
Что мне здесь не хватает?