自动天蓝色部署

时间:2016-10-26 16:30:48

标签: c# asp.net-mvc azure

我们开发了一个使用SQL数据库存储数据的MVC应用程序。我们选择该方法在每个客户的azure(customer.ourdomain.com)中拥有一个单独的Web应用程序,以及在我们的SQL服务器上运行的每个客户的单独数据库。该数据库由web.config文件中的MVC应用程序指向。

我还创建了一个网站,新客户可以注册使用/试用我们的产品。现在,每当有人注册我们的产品时,我希望发生以下情况:

  • 使用注册
  • 的公司/客户的名称创建Azure Web应用程序
  • 创建一个新数据库,包括我们的应用程序需要的表和关系
  • 将我们的应用程序的稳定版本发布到azure中的Web应用程序,并将应用程序配置为使用新创建的数据库

我设法使用Azure ARM模板完成第一步,第二步使用dacpac和Azure API,但我不知道如何使用TFS(或任何其他方法)发布稳定版本和更改在将应用程序发布到azure应用程序之前的连接字符串。 (我甚至没有设法用C#代码发布任何东西)。

我采取的方法一般是否合适,还是应采取不同的方法?将稳定版本发布到Web应用程序的最佳方法是什么,最重要的是,更改连接字符串以使已发布的版本连接到新数据库?

1 个答案:

答案 0 :(得分:1)

如果您获得vsts来打包稳定版本并将其上传到blob存储,则可以将该Web应用程序作为ARM模板部署的一部分进行引用,即。包括Web应用程序代码部署以及Web应用程序服务本身。

This page展示了如何做到这一点。我认为您还可以使用应用服务的源代码控制集成/ CD设置获取Web应用程序和ARM模板以从vsts中获取版本(我非常有信心您可以通过GitHub执行此操作),但是找不到任何细节。