Как сделать:Развертывание проекта базы данных SQL с использованием Team System Build 2010 (бета-версия 2)

StackOverflow https://stackoverflow.com/questions/1632965

Вопрос

Кто-нибудь может пролить свет на то, как заставить Team Build 2010 beta 2 отправить проект базы данных SQL на SQL server?

В VSTS 2008 вы бы просто добавили команды MSBuild с атрибутом targets, установленным в "deploy" в файле TFSBuild.proj, но у меня возникли небольшие проблемы с переводом этого в новую xaml-версию на основе рабочего процесса, которую использует 2010.

Что я ищу, так это как запустить фактическое развертывание самих баз данных.Он уже отлично генерирует сценарии развертывания.

Это было полезно?

Решение

Если вы все еще ищете ответ, используйте Invoke Process, использующий vsdbcmd.exe: http://msdn.microsoft.com/en-us/library/ff805001.aspx

Другие советы

Вот пример:

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

Добавьте цель развертывания в файл проекта базы данных

Настройте параметры развертывания для ‘My project settings’.Эти настройки затем будут использоваться сервером сборки при сборке решения.При локальной сборке будут использоваться настройки из ‘My isolated development environment’.

  1. В свойствах проекта базы данных

Действие по развертыванию должно быть ‘Create a deployment script (.sql) and deploy the database’;это предотвратит выполнение скрипта, он только создаст его.

  1. Файл проекта базы данных

Измените файл проекта базы данных (щелкните правой кнопкой мыши проект базы данных, выберите Выгрузить, щелкните правой кнопкой мыши еще раз, выберите Редактировать [имяпроекта].dbproj) От

<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">

Для

<Project DefaultTargets="Build;Deploy" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">

Когда сервер сборки создает решение, содержащее проект базы данных, добавление целевых объектов по умолчанию также приведет к развертыванию базы данных.В этой сборке будут использоваться параметры развертывания, выбранные для ‘My project settings’.

Плюсы

  • Простота настройки

Минусы

  • Поскольку цель по умолчанию изменена на "Сборка и развертывание", когда разработчик выполняет локальную перестройку решения, он также развертывает базу данных (только сборка не запускает развертывание)

Самая близкая вещь, которую я нашел до сих пор, - это это сообщение от Джима Лэмба (руководитель группы Team Foundation в Microsoft).

Здесь он смутно говорит о создании пользовательского файла proj и изменении шаблона процесса сборки по умолчанию для вызова файла proj.

Он также говорит об использовании шаблона обновления, который я ранее игнорировал. Очевидно, что шаблон обновления можно использовать для вызова определения сборки 2008 года. Я бы предпочел не вызывать и не определять всю сборку на основе устаревшего файла proj, хотя, по крайней мере, это вариант.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top