Развертывание Team Services в приложении Azure

Впервые я пытаюсь создать определение сборки в Team Services (ранее VSO). Я установил специальный агент, чтобы запускать тесты Selenium. Это прекрасно работает. Теперь я могу собрать свое решение, протестировать свои сборки и запустить тесты Selenium.

Теперь я хочу развернуть свое решение. И вот здесь я застрял на два дня. Я просто не понимаю, как все это работает. Видимо, нужен какой-то zip-файл, который нужно развернуть в Azure. Вот что я сейчас использую на этапе сборки:

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

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

Поэтому я думаю, что первым шагом к развертыванию Azure является изучение того, как создать zip-файл. После этого, я думаю, мне нужно обратиться к этому zip-файлу на этапе «Развертывание веб-приложения Azure». Я прав?

Но сначала: как мне создать zip-файл?


person Martijn    schedule 22.09.2016    source источник


Ответы (2)


ZIP-файл уже создан с указанными вами аргументами:

/p:WebPublishMethod=Package /p:PackageAsSingleFile=true

При использовании /p:PackageLocation="$(build.stagingDirectory)" zip-файла zip-файл помещается в папку $ (build.stagingDirectory), а $ (build.stagingDirectory) - это переменная среды, указывающая на промежуточную папку сборки.

Итак, если вы используете размещенный агент сборки, zip-файл будет помещен в:

C:\a\1\a

А если вы используете свой собственный агент сборки, zip-файл будет помещен в:

buildagentworkfolder\1(orothernumber)\a

Кстати, если вы используете задачу «Развертывание веб-приложения Azure» в том же определении, что и сборка и тестирование, вы можете просто установить для «Пакет веб-развертывания» значение «$ (build.artifactstagingdirectory) ***. Zip».

person Eddie Chen - MSFT    schedule 22.09.2016
comment
Спасибо, но проблема в том, что zip-файл не создается. Если я буду искать в проводнике до * .zip. Я не получаю результатов. Моя папка a остается пустой. - person Martijn; 22.09.2016
comment
@Martijn Какой тип проекта вы строите? - person Eddie Chen - MSFT; 22.09.2016
comment
У меня есть решение с несколькими проектами. Я хочу развернуть проект MVC. - person Martijn; 22.09.2016
comment
@Martijn Видели ли вы какие-либо журналы, например 2016-09-22T09: 38: 57.7510469Z Пакет xxx.zip успешно создан как один файл в следующем месте: 2016-09-22T09: 38: 57.7510469Z file: /// C: / a / 1 / a в вашем билде? Можно ли поделиться своими журналами сборки и определениями сборки? - person Eddie Chen - MSFT; 22.09.2016
comment
Мой журнал сборки: jpst.it/NE8I и мое определение сборки: justpaste.it/yl4x - person Martijn; 22.09.2016
comment
@Martijn Установлен ли Web Deploy V3 на вашем агенте сборки? И можете ли вы попробовать сборку с размещенным агентом сборки, чтобы узнать, может ли он сгенерировать zip-файл? - person Eddie Chen - MSFT; 22.09.2016
comment
Позвольте нам продолжить это обсуждение в чате. - person Martijn; 22.09.2016
comment
@Martijn Добавить по логам, несколько проектов не выбраны для тестирования | Любая конфигурация ЦП, вам также необходимо проверить, выбран ли для этой конфигурации проект, который вы хотите построить. - person Eddie Chen - MSFT; 22.09.2016
comment
У меня установлен Web Deploy V3, и проект, который я хочу развернуть, отмечен (т.е. у него есть флажок в столбце Build в диспетчере конфигурации) в моем Test - Any CPU configuration. При сборке с использованием размещенного агента я вижу это для нескольких проектов: Package "x.zip" is successfully created as single file at the following location: - person Martijn; 22.09.2016
comment
Но я не вижу zip для проекта (MVC), который я хочу развернуть. - person Martijn; 22.09.2016
comment
@Martijn Тогда какой проект включен в сгенерированный zip-архив? - person Eddie Chen - MSFT; 23.09.2016
comment
Вот ссылка на журнал сборки с использованием агента размещенной сборки: jpst.it/NGdY Проект, который я хочу заархивировать называется Deliverdd.Web - person Martijn; 23.09.2016
comment
@Martijn Я не видел, что проект Deliverdd.Web построен на основе этого журнала. - person Eddie Chen - MSFT; 23.09.2016
comment
@Martijn Можете ли вы нажать кнопку Загрузить все журналы в виде zip-архива, чтобы получить все журналы? - person Eddie Chen - MSFT; 23.09.2016
comment
@Martijn Проект построен и zip создается в соответствии с этим журналом: Пакет Deliverdd.Web.zip успешно создан как один файл в следующем месте: 2016-09-23T06: 23: 32.7091418Z file: /// C: / а / 1 / а - person Eddie Chen - MSFT; 23.09.2016
comment
Я скопировал текст из браузера вместо того, чтобы смотреть в этот журнал, извините. Но хорошо, zip создается с помощью агента размещенной сборки, но почему эти zip-файлы не создаются на моем собственном агенте с той же конфигурацией? - person Martijn; 23.09.2016
comment
@Martijn Тогда это должно быть вызвано настройкой вашего собственного агента. Можете ли вы также загрузить полные журналы сборки на свой собственный агент, а затем поделиться ими? - person Eddie Chen - MSFT; 23.09.2016
comment
вот ссылка, которая содержит журнал моего собственного агента: filedropper.com/logs126 - person Martijn; 23.09.2016
comment
@Martijn Можете ли вы удалить аргументы / p: outputpath = C: \ Visual Studio Online \ Published и поставить новую сборку в очередь, а затем поделиться журналами? Кстати, а вы можете проверить, есть ли сборка проекта Deliverdd.Web в папке C: \ Visual Studio Online \ Published? - person Eddie Chen - MSFT; 23.09.2016
comment
Да, я вижу каталог сборки, но в подпапке: jpst.it/NGrF И вот дамп файлы журналов: filedropper.com/logs129 - person Martijn; 23.09.2016
comment
@Martijn Похоже, что DeployOnBuild не запускается во время сборки. Ваш VS полностью установлен с целью MSBuild? - person Eddie Chen - MSFT; 23.09.2016
comment
Я не понимаю, что вы имеете в виду. Я установил VS 2015 Community Edition на свой агент сборки - person Martijn; 23.09.2016
comment
@Martijn Можете ли вы попробовать запустить сборку вручную с этими аргументами на своем собственном агенте сборки? - person Eddie Chen - MSFT; 26.09.2016
comment
Когда я выполняю команду msbuild /p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true для одного проекта, я не могу найти zip-файл. Я искал его в каталоге проекта, но там нет zip-файла - person Martijn; 28.09.2016

Вы можете добавить еще одну задачу сборки в файлы архива.

После завершения сборки вы знаете, куда скопированы все файлы, поместите исходную папку в текстовое поле «Корневая папка (или файлы) в архив», а целевое местоположение - в текстовое поле «Архивный файл для создания».

  $(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip

Это создаст zip-файл в промежуточной папке, который вы можете использовать на этапах выпуска.

person Sujit Singh    schedule 26.09.2016