Исключить / Пропустить файлы в VSTS Построить и выпустить
Мы находимся в процессе создания архитектуры для VSTS CI/CD для развертывания нашего веб-приложения в наших службах приложений Azure. Мы хотим исключить файл web.config при его развертывании на сервере Azure, поскольку мы напрямую изменяем файл web.config в другой среде. CI Tasks выглядит так: CI Taks
Задача на компакт-диске: развертывание службы приложений Azure Мне известны другие способы обновления web.config https://docs.microsoft.com/en-us/vsts/build-release/tasks/transforms-variable-substitution, но в нашем В случае, если мы хотим пропустить файл web.config. Я не смог найти возможность пропустить файл во время выпуска в VSTS, как упоминалось в этой теме. Как мне исключить файлы.cs в артефакте из сборки CI vs-team-services? Есть ли способ исключить определенные файлы при сборке и развертывании релиза?
2 ответа
Добавлены -skip:objectName=filePath,absolutePath=web.config в дополнительных аргументах. Это пропускает обновление файла web.config во время развертывания.
Вы можете исключить web.config
перед публикацией артефактов в определении сборки: скопируйте файлы веб-пакетов в каталог (например, $(build.binariesdirectory)
), затем скопируйте файлы исключить web.config
в другую папку (например, $(Build.ArtifactStagingDirectory)/package
), и заархивируйте файлы в $(Build.ArtifactStagingDirectory)/package
, И, наконец, опубликуйте zip-файл как артефакты сборки.
Подробности изменения в определении сборки, как показано ниже:
Измените аргументы MSbuild как
/p:OutDir="$(build.binariesdirectory)\\"
в Visual Studio построить задачу.Добавьте задачу "Копировать файлы" после задачи Visual Studio Build. Настройки для этой задачи приведены ниже:
Задача " Добавить архивные файлы" после задачи " Копировать файлы". И настройки, как показано ниже:
Измените задачу " Опубликовать артефакты", как показано ниже:
Теперь артефакты сборки исключены web.config
файл.
Дополнительные аргументы
- skip:objectName=filePath,absolutePath=\\Configuration\\AppSettings\\Base.config
Можете добавить
-skip:objectName=filePath,absolutePath='.*\PackageTmp\Web.config$'
в дополнительных аргументах в задаче VSTS развертывания "Развертывание веб-сайта / приложения IIS" это не приведет к развертыванию корневого файла web.config.