Мне нужна помощь / информация / ресурсы r.e. настройка автоматического развертывания Team Build, MsBuild, TFS 2010 для моего веб-приложения в Azure (включая все биты БД).
В идеале я хотел бы иметь процесс, который можно запускать из пользовательского интерфейса VS2010 Team Explorer «Поставить в очередь новую сборку», а затем просто следить за ее продвижением, позволяя мне поработать над чем-то еще. Варианты, позволяющие вникать в журнал для любых проблем, и знать, что мой процесс является надежным, полным и полностью не ручным, то есть:
На моей последней работе в FT у нас была довольно удобная установка автоматического развертывания для наших размещенных веб-приложений с использованием CC.Net (для управления процессом), CCTray и веб-интерфейса CC.NET для мониторинга и управления, генерации кода (CodeSmith + Шаблоны NetTiers для доступа к данным и сущностей), MSBuild, VS Databse Projects, несколько сценариев .bat и некоторые удобные утилиты, такие как PsExec и т. Д., Чтобы помочь с небольшими частями. Я не устанавливал его, но у меня есть некоторый опыт управления им, решения проблем и т. Д.
Это было (98% случаев) прекрасным опытом для развертывания. Вы должны убедиться, что TFS обновлена, дважды щелкните CCtray, щелкните правой кнопкой мыши проект, а затем нажмите «Force Build», расслабьтесь и посмотрите Зеленый => Желтый => Зеленый.
Отлично !!
Я запускаю свой собственный Micro ISV, и мой основной проект - это приложение в Azure (в бета-версии). Я бы очень хотел повторить опыт развертывания, который у меня был раньше - Я даже подумываю о переходе из Azure на выделенные серверы - просто потому, что я знаю , что могу настроить там автоматизированная система развертывания.
Моя основная точка остановки - биты БД, похоже на кошмар. Может быть, мне не хватает какого-нибудь отличного бесплатного инструмента или библиотеки, которые справились бы с этой работой, я очень на это надеюсь, но я также мог бы действительно помочь кому-то, кто имеет в этом опыт, указать мне правильное направление для решения "Лучшей практики", чтобы завершить все мелочи аккуратно.
Я рыскал в Google, читал и читал, потратил часы и часы, но то, что я, кажется, нахожу банкомат, - это половинчатые решения, не совсем подходящие для моего проекта и потребностей, основанные на дорогих инструментах, которые я не могу себе позволить (бюджет около $ 0 ), или просто над моей головой и немного непонятно и страшно.
Сейчас Я НЕ системный администратор , но, имея достаточно времени, я обычно могу решить, что мне нужно делать для такого рода вещей.
Однако сейчас у меня нет НИКАКОГО времени, и успех всего моего проекта действительно зависит от моей способности сократить ужасающие 40-минутные затраты на развертывание вручную, с которыми я сейчас сталкиваюсь.
Я хочу иметь возможность получить отзывы пользователей, найти ошибку или написать код улучшения и уверенно просто запустить развертывание и приступить к чему-то еще.
Дополнительные проблемы с разработкой для Azure в текущем состоянии (в отличие от выделенных серверов) и в настоящее время довольно слабая поддержка инструментов от MS (я знаю, что впереди много улучшений, но мне что-то нужно прямо сейчас) - осталось я плаваю в море "Я не знаю" и "Я не уверен" и имеет тенденцию заканчиваться одним большим:
"Я сдаюсь + ручное развертывание в течение почти часа + немного рыданий внутри, когда моя мечта о развертывании небес снова умирает ": (
Но Я знаю, что люди более опытные, знающие и опытные, чем я сам, взломали этот для себя. ] Я просто не могу найти информацию, которая, я уверен, там есть.
Так что, если у кого-то есть хорошие ресурсы, советы, ссылки, комментарии или мнения по этому поводу, Я буду рад чтобы услышать.
Приложение запущено и работает в Azure (которое находится в бета-версии - отчасти из-за отсутствия настройки автоматического развертывания), работает в производственном слоте, я не беспокоился с промежуточным слотом, так как некоторые проблемы с поддоменами / DNS / автоматически созданным URL-адресом выглядят болезненно / невыполнимо.
Azure / Приложение:
Приложение -
1 веб-роль
1 Рабочая роль - выполняет некоторые запланированные задачи и работает с той же БД и хранилищем BLOB-объектов
Две роли взаимодействуют с системой очередей Azure (или скоро будут)
Локально:
Datacenter 08 (DC) + Hyper V - ВМ для TFS 2010 - ВМ для брандмауэра Linux
Dev Box 1 (Win 7) - VS 2010 / VS 08 - SQL 08 R2 / 05
Dev Laptop 2 - как указано выше.
Я стараюсь постоянно запускать их вместе (так что мне никогда не нужно останавливаться, чтобы чего-то ждать) с помощью бесплатного инструмента FANTASTIC Synergy для связывания клавиатуры, мыши и буфера обмена.
Я прочитал то, что нашел, и некоторые из замечательных вещей, , поэтому я также размещаю здесь эти ссылки, чтобы помочь другим в борьбе с этим материалом , но, похоже, ничего из этого не помогает,или, может быть, я не понимаю трюк , может, я что-то упускаю?
http://deploytoazure.codeplex.com/
Как мне управлять и публиковать базу данных с помощью моего приложения MVC2 в Azure?
Как я могу автоматизировать задачу «создания сценариев» в SQL Server Management Studio 2008 ?
http://www.koltovich.com/blog/DeployingAzureProjectFromTFS2010BuildServer.aspx
http://msdn.microsoft.com/en-us/library/ff803365.aspx
http: // msdn. microsoft.com/en-us/library/gg432988.aspx
http://www.jimzimmerman.com/blog/2010/03/16/Deploying+An+Azure+Project+Using+TFS+2010.aspx
http://archive.msdn.microsoft.com/azurecmdlets
http://msdn.microsoft.com/en-us/library/ms178078.aspx
http://blog.syntaxc4.net/post/2011/05/13/ Непрерывная интеграция в Cl oud.aspx
http://www.scarydba.com/2011/04/25/sql-azure-deployments/
Как я уже сказал Я НЕ системный администратор, Я НЕ волшебник сценариев и НЕ гуру компьютерных программ, Я простой веб-разработчик, так что, пожалуйста, будьте любезны, если вам это бездумно легко, или если я сутуловато упускаю суть, я не имею в виду, что все "Вы Haz кода?" Но в основном я провел 6 месяцев в мечтах, что однажды кто-нибудь опубликует в блоге красивую, ясную и простую запись с «Руководством по идиотам», которое решит все мои проблемы, а через час я снова на небесах, но все еще жду (или плохо погуглил), и это разбило мне сердце моего маленького разработчика: (
PS Я обещаю, что если я получу здесь хороший ответ, я внесу свой вклад в фантастическое сообщество SO и потрачу не менее 8 часов на поиск вопросов, которые я может помочь и внести свой вклад.