是否可以使用TeamCity部署VS 2010数据库项目?
我正在构建我的整个解决方案,并将网站部署到我的服务器,这一切都运行正常。
我想要触发的最后一步是部署数据库项目,该项目生成一个sql脚本并部署它。
我有“创建部署脚本(.sql)并部署到数据库”选项作为部署操作选择,我的配置目标设置为构建和部署数据库项目,但我只是无法想象如何让TeamCity和MSBuild触发它。
答案 0 :(得分:16)
必须安装Visual Studio才能使其正常工作。
对于原始SQL Server 2005/2008数据库项目类型:
C:\Program Files\Microsoft Visual Studio 10.0\VSTSDB\Deploy\VSDBCMD.exe
。将命令参数设置为/a:Deploy /dd:+ /manifest:%system.teamcity.build.checkoutDir%\<PROJECT PATH>\sql\debug\<PROJECT NAME>.deploymanifest
。 (有关VSDBCMD.exe参数,请参阅here。)对于 SQL Server数据工具或 Visual Studio 2012/2013 提供的SQL Server数据库项目:
C:\Program Files\Microsoft Visual Studio 10.0\Microsoft SQL Server Data Tools\sqlpackage.exe
。有关sqlpackage.exe参数,请参阅here。以下是部署设置存储在XML文件中的示例(通过“发布”选项创建):/Action:Publish /SourceFile:%system.teamcity.build.checkoutDir%\<PROJECT PATH>\bin\Debug\<PROJECT NAME>.dacpac /Profile:%system.teamcity.build.checkoutDir%\<PATH TO PROJECT>\PublishSettings.xml
。答案 1 :(得分:10)
由于今天我的问题得到了提升,我正在重新审视我找到的答案。
我做了以下事情:
编辑16/11/12 :另一个upvote,重新访问。自从我发布以来,事情变得更加清晰。我最初是在我的开发PC上运行TeamCity。
当我将它移到服务器上时,我可以让数据库部署工作的唯一方法是在服务器上安装Visual Studio,这很痛苦。