Visual Studio Team Services构建失败 - 数据库项目到Azure SQL

JL *_*yag 5 msbuild azure azure-sql-database azure-devops azure-pipelines

我有一个Team Services(是Visual Studio Online),有一个MSBuild步骤,配置为使用发布配置文件构建和部署数据库项目.我似乎无法成功验证它.当我排队Team Services构建定义时,我能够构建DB项目并生成.dacpac.但是,来发布时间,这个错误来了:

C:\ a\1\s\Source\ShopDatabase\bin\Output\MyDatabase.publish.sql(0,0):错误Deploy72002:无法连接到主服务器或目标服务器'mydb'.您必须在主服务器或目标服务器'mydb'中拥有具有相同密码的用户.

我们确定用户存在于mydb和Azure中的主数据库中.

目标:Azure SQL数据库

数据库项目目标平台:Microsoft Azure SQL数据库

当我直接从Visual Studio运行发布配置文件时,它可以工作.但是在Team Services构建定义中,它没有.我尝试了这些作为MSbuild参数:

/ t:Build;发布/p:SqlPublishProfilePath="myproject.Dev.publish.xml"/ p:Password ="mypassword"

还有这个:

/ t:Build; Publish /p:SqlPublishProfilePath="myproject.Dev.publish.xml"/ p:TargetConnectionString ="Data Source = myproject.database.windows.net; Persist Security Info = True; User ID = myuser; Password =我的密码;" /p:VisualStudioVersion=14.0/p:Username ="myuser"/ p:Password ="mypassword"

还有这个:

/ t:Build; Publish /p:SqlPublishProfilePath="myproject.Dev.publish.xml"/ p:TargetConnectionString ="Data Source = myproject.database.windows.net; Persist Security Info = True; User ID = myuser; Password =我的密码;" /p:VisualStudioVersion=14.0/p:TargetUserName ="myuser"/ p:TargetPassword ="mypassword"

但是行不通.请帮助我T_T已经在网上搜索了6个小时

Kev*_*ane 7

这是一个很差的错误消息,可能会掩盖真正的问题:您需要打开防火墙以部署到Azure SQL DB.它在Visual Studio中工作,因为您启用了IP范围.本指南中有关从VSO构建和部署的步骤,特别是有关从VSO部署的帖子,应该会有所帮助.它具体介绍了如何在部署过程中打开防火墙.