2017-09-29 27 views
0

我想使用真正的SQL数据库运行测试。 SQL服务器和数据库将位于Azure上。我试图在VSTS上配置一个构建定义,其中任务将使用数据库设置Azure资源组,并在我的解决方案上设置连接字符串并将Entity Framework Core迁移运行到数据库。测试后,任务应该删除资源组。在VSTS构建定义中使用真正的Azure SQL数据库

我用我需要的数据库创建了一个Azure资源组,并下载了PowerShell部署文件,脚本,template.json等等。

PowerShell脚本任务可以具有内联脚本或脚本的路径。 我应该将Powershell脚本添加到解决方案,以便VSTS可以访问它们吗?内联脚本选项似乎适用于少数几行脚本,Azure部署对于多个文件来说相当大。

设置连接字符串不应该太难。有几个人建议使用市场上的替换令牌任务。

我不知道该如何运行数据库迁移。我可以在PowerShell脚本任务上运行迁移吗?我如何确保所需的cmdlet正常工作?

+0

使用数据库项目尝试后会出现什么结果? –

+0

@ starain-MSFT我通过使用PowerShell脚本和Azure模板创建了数据库,并在该版本上安装了.NET Core SDK,并使用CLI工具更新数据库。这似乎现在工作。我将不得不为未来保留数据库项目选项。谢谢你的帮助。 – VilH

回答

0

由于脚本相当大,您不能使用内联脚本,您可以将其添加到项目或服务器的其他路径(为其他路径添加其他映射)。

关于数据库迁移,如果您在Web应用程序中启用了EF迁移,则可以创建启用数据库迁移的发布配置文件(Web部署包),然后使用MSBuild参数发布/部署,然后将包部署到Azure Web APP通过Azure Web部署任务。

+0

这样才能迁移数据库吗?我只需要Azure上的数据库,应用程序的测试将在构建机器上运行,但使用这些数据库。 – VilH

+0

@VilH您可以创建一个[数据库项目](https://msdn.microsoft.com/library/hh272702(v = vs.103).aspx)并将其部署到Azure。 –

相关问题