2014-01-06 5 views
4

В Visual Studio 2013 есть мастер публикации для проектов Cloud Service, который упаковывает и развертывает облачную службу на основе настроек, сохраненных в файле .azurePubxml.Публикация приложения Azure с MSBuild

Я настраиваю автоматизацию этого процесса на сервере CI и хочу использовать эту функциональность в MSBuild, но я не уверен, что это даже возможно.

Я нашел много статей, рассказывающих об обстреле сценария PowerShell и использовании специального целевого файла MSBuild для развертывания, но это похоже на дублирование информации, которую я бы не хотел вникать.

Учитывая, что у меня есть учетные данные Azure, установленные на машине сборки, VS 2013 и Azure SDK 2.2, можно вызвать тот же механизм, который использует VS 2013 в мастере публикации для упаковки и развертывания моего облачного сервиса?

В настоящее время, используя MSBuild с целью публикации, я могу упаковать службу в файл .cspkg, но я не могу понять, как запускать пакет/развертывание на основе профиля (файл .azurePubxml), который определяет сборку VS config и всех параметров Azure.

ответ

1

Итак, как вы указали, цели по умолчанию предоставят вам пакет. Оттуда Visual Studio публикует все, используя свою собственную инфраструктуру. Публикация сборки с сервера CI считается чем-то внешним по отношению к фактическому процессу сборки и скорее частью процесса развертывания.

Если ваша технология CI поддерживает PowerShell, то это легко, как автоматизация командлетов Windows Azure PowerShell для выполнения ваших ставок. There's a nicely detailed article on how you might do this with Team Builds in TFS here on MSDN.

+0

Это имеет смысл, это просто облом, что разработчики не могут использовать инфраструктуру вне машины dev. В файле pub xml есть все, что мне нужно ... Думаю, мне придется разбирать их в скрипте. – Jeremyx

+0

Вы можете полностью автоматизировать всю процедуру с помощью сценария powershell на самом деле с точки зрения создания пакетов для публикации - http://www.intstrings.com/ramivemula/articles/jumpstart-31-create-and-deploy-new-azure- облако-сервис с использованием-пакетов-cspkg-сгенерированных по-лазурь-Powershell /. Куст вызывает этот скрипт из MSBuild. – ramiramilu

+0

Я закончил тем, что написал статью, написанную @ drew-marsh ниже. Это немного устарело, но я получил его на работу. Если вы копируете и вставляете файл powerscript из статьи, следите за фанки-персонажами. Это помогло мне некоторое время, пока я не открыл скрипт в PowerShell ISE, и подсветка синтаксиса указывала на проблемы. – Jeremyx

Смежные вопросы