Как Вы развертываете веб-сайт и проект базы данных, использующий TFS 2010?

Я пытался понять это и до сих пор не нашел простое решение. Это действительно что трудно развернуть проект базы данных (и веб-сайт) использующий TFS 2010 в качестве части процесса сборки?

Я нашел один пример, который включил много сложных проверок и редактирования рабочего процесса (который является гигантским рабочим процессом btw).

Я даже купил книгу "профессиональное управление жизненным циклом приложения с VS 2010", но по-видимому профессионалы не развертывают свои приложения, так как это даже не упоминается в книге.

Я знаю, что задержан когда дело доходит до TFS, но кажется, что должен быть любой простой способ сделать это. Есть ли?

7
задан Bryant 20 May 2010 в 22:42
поделиться

1 ответ

Я не могу говорить о части базы данных, но я только что рассмотрел это в веб-части, волшебная часть - это не очень хорошо документированный компонент, а именно параметры MSBuild.

В определении сборки:

  1. Процесс слева
  2. Требуется> Элементы для сборки> Конфигурации для сборки
    • Отредактируйте, добавьте новый, для этого примера
      • Конфигурация: Dev (я расскажу, как создать конфигурацию ниже)
      • Платформа: Любой ЦП
  3. Дополнительно> Процесс MSBuild
    • Используйте следующие аргументы (по крайней мере, для меня ваш метод публикации может отличаться).

Параметры MsBuild:

/p:MSDeployServiceURL="http://myserver"  
/p:MSDeployPublishMethod=RemoteAgent 
/p:DeployOnBuild=True 
/p:DeployTarget=MsDeployPublish 
/p:CreatePackageOnPublish=True 
/p:username=aduser
/p:password=adpassword

Требования:

  1. Вам необходимо установить MS Deploy Remote Agent Service на целевом веб-сервере , MSDeploy должен быть на Build / Сервер развертывания тоже, но это должно быть по умолчанию.
  2. Учетная запись, которую вы используете в приведенных выше параметрах, требует доступа администратора, по крайней мере, к IIS ... Я не уверен, каковы минимальные требования к разрешениям.

Вы настраиваете, к какому веб-сайту / виртуальному каталогу будет переходить этот сайт в развертываемом веб-проекте. Лично у меня есть конфигурация сборки для каждой среды, что упрощает обработку и организацию сборок. Например, у нас есть Release , Debug и Dev (их больше, но для этого примера все). Только веб-проект имеет конфигурацию Dev .

Для этого щелкните правой кнопкой мыши решение, Диспетчер конфигураций ... , В веб-проекте щелкните раскрывающееся меню конфигурация , щелкните Создать ... . Дайте ему имя «Dev» для этого примера, скопируйте настройки из отладки или выпуска, в зависимости от того, что больше всего соответствует вашей среде сервера развертывания. Убедитесь, что установлен флажок «Создать новые конфигурации решения», он установлен по умолчанию. После создания этого решения измените раскрывающееся меню конфигурации на новый Dev и Any CPU ... убедитесь, что все ваши проекты верны, у меня было некоторое переключение на x86 и x64 случайно, не уверен в точной причине).

В своем веб-проекте щелкните правой кнопкой мыши, свойства. Слева нажмите Package / Publish Web (вы также захотите поиграть с другой вкладкой Package / Publish SQL, но я не могу говорить об этом). В параметрах справа щелкните Создать пакет развертывания в виде zip-файла . Расположение по умолчанию в порядке, следующее текстовое поле, которое я нигде не нашел документированным. Формат следующий: Веб-сайт / виртуальный каталог , поэтому, если у вас есть сайт под названием «BuildSite» в IIS без виртуального каталога (приложение == корень сайта), у вас будет BuildSite только в этой коробке. Если бы он находился в виртуальном каталоге, у вас может быть Веб-сайт по умолчанию / BuildVirtualDirectory .

После того, как вы все это настроили, обязательно отметьте решение и веб-проект, чтобы на сервере сборки были внесенные вами изменения конфигурации, а затем начните сборку :)

Если у вас есть другие вопросы, я рекомендую вам посмотрите это видео Вишала Джоши , в частности, примерно через 22 и 59 минут, он также охватывает часть базы данных ...но у меня нет реального опыта пробовать это, так как мы находимся на вершине базы данных, отличной от MSSQL.

7
ответ дан 7 December 2019 в 07:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: