Подтвердить что ты не робот

Развертывание WebSite для Azure для управления выпуском VSTS

Я пинаю шины в предварительном просмотре для новой системы управления версиями Visual Studio Team Services. Мой сценарий - классический веб-сайт (ASP.NET 4.5) с репозиторией Git, размещенным в VSTS. Определение сборки успешное, как показано здесь:

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

Он предназначен для публикации в качестве артефакта, который может быть выбран диспетчером Release, как показано ниже:

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

На стороне Release Manager у меня есть тот артефакт, который правильно связан, как показано здесь:

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

И здесь вы можете видеть мои среды, а также связанные задачи (все 3 являются клонами)

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

Когда я запускаю выпуск, сборка прекрасно публикуется, она подключается к моей подписке, но когда она пытается найти файл пакета, в строке 101 журнала вывода есть следующая ошибка:

"Файлы не найдены для развертывания с шаблоном поиска" C:\a\4fe43dd1a ***. zip "

Вот полный вывод:

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

Вот где я застреваю, поскольку я предположил, что моя ссылка на артефакт через VSTS должна решить этот путь для меня. Очевидно, что я где-то упускаю важный фрагмент головоломки, но я следил за доступной документацией как можно лучше.

Если у кого-то есть решение или он может указать мне в правильном направлении, это будет очень признательно!

--- EDIT ---

Я использовал сборщик файлов, чтобы выбрать пакет развертывания в Интернете (см. ниже). Я попытался использовать корневой сайт, а также папку bin. Обе попытки приводят к ошибке: "Не найдены файлы для развертывания с шаблоном поиска" C:\a\4fe43dd1a\Классическое определение веб-сайта\drop\ClassicWebsite\bin '"

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

--- EDIT 2 ---

Я добавил задачу MSBuild в мой процесс BUILD со следующими MSBuildArguments

/p:OutDir=$(build.stagingDirectory) /p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true

и в моей задаче "Копировать/Публиковать артефакты" я ограничил свой вывод только копированием файлов .zip. Теперь в моем процессе RELEASE, когда я перехожу к поиску пакета веб-развертывания, папка "drop" пуста. Вот скриншот:

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

Я думаю, что я на правильном пути, мне просто нужна помощь в настройке моих задач BUILD для создания правильных артефактов для моего процесса RELEASE. Любая помощь будет оценена.

4b9b3361

Ответ 1

Пакет развертывания не копируется в папку артефактов. Поэтому управление выпуском не может найти пакет. Настройка "Копировать и опубликовать сборку артефактов" на следующую следует исправить вашу проблему: VSTS Скопировать и опубликовать шаг сборки артефактов

Ответ 2

Измените $(System.DefaultWorkingDirectory) на $(Agent.ReleaseDirectory). Артефакты будут помещены в эту папку. Я не знаю точно, к чему привязана $(System.DefaultWorkingDirectory), но я чувствую, что это что-то вне папки, используемой агентом для вашего выпуска.

Также убедитесь, что опубликованные артефакты содержат ожидаемый zip файл - если пакет развертывания не создается, или если вы не публикуете выходную папку, содержащую пакет, очевидно, что вы не сможете освободите его позже.

При создании своего веб-приложения убедитесь, что он упакован для развертывания с использованием аргументов MSBuild, которые его упаковывают. Что-то вроде этого должно работать:

/p:OutDir=$(build.stagingDirectory) /p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true