Как запустить приложение в эмуляторе Azure в режиме разработки без Visual Studio - PullRequest
8 голосов
/ 23 ноября 2011

Мне нужно привлечь несколько людей, занимающихся разметкой и JavaScript, чтобы помочь команде разработчиков в проекте Azure asp.net MVC.

По сути, мне нужно, чтобы каждый человек запускал локальный экземпляр приложения Azure, чтобы иметь возможность вносить изменения в файлы содержимого (chtml / css / js) и тестировать / отлаживать их, как если бы он запускался в VisualStudio ( Ctrl + F5).

Несмотря на то, что легко предоставить исходный код всем сторонам, чтобы у каждого человека была своя рабочая копия - мы используем svn, я столкнулся с проблемой запуска локальной копии приложения в dev fabric.

Я не хочу устанавливать Visual Studio для всех, потому что это отнимает много времени и слишком дорого только для запуска dev fabric. Эти люди не используют VisualStudio для html / css / js. И все необходимые инструменты доступны с использованием SDK: MSBuild, Azure, WIF и т. Д.

Мне даже удалось запустить dev fabric с приложением, используя

* * 1010

Все работает хорошо, кроме одного - все файлы содержимого копируются в папку Azure\obj\Debug\WebRole вместе со всеми двоичными файлами.

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

Я просмотрел справку CSPack и наверняка должен разрешить сценарий, который я хочу, но сложно понять, как его достичь. Я подозреваю, что должен быть способ сделать такое развертывание с использованием MSBuild (поскольку VisualStudio в значительной степени полагается на него для всех действий по сборке / развертыванию), но я не могу найти способ сказать ему, что я хочу.

Кто-нибудь знает либо правильный способ запуска CSPack для повторения сценария развертывания отладки VisualStudio, либо правильную цель / параметры для MSBuild для запуска проекта Azure аналогично VisualStudio?

Может быть, есть способ просмотреть действительную командную строку, выполняемую внутри сборки VisualStudio?

Ответы [ 2 ]

4 голосов
/ 24 ноября 2011

Хорошо, после нескольких часов копания в Microsoft.WindowsAzure.targets и некоторых дополнительных танцев с бубном я обнаружил магические переключатели:

MSBuild.exe Azure\Azure.ccproj /p:PackageForComputeEmulator=true /p:PackageWebRole=False

Это приложение пакетов, как VisualStudio. Обратите внимание, что логика построения Azure различает цели Build и Publish и применяет различные правила в зависимости от того, были ли указаны одно, другое или оба. Для моего сценария это должно быть только Build (по умолчанию).

2 голосов
/ 08 января 2012

В качестве альтернативы вы пытались передать p:PublishDir=Directory в своем примере исходного аргумента msbuild, например:

/t:Publish /p:PublishDir=\\\mydroplocation\cloudpackage\
...