将文件复制到Azure App Service

时间:2017-12-21 15:27:53

标签: asp.net-mvc azure continuous-deployment azure-web-app-service

我正在开发一个将部署到各种环境的网站 - 开发,UAT和制作 - 并且每个网站都有通过使用配置文件定义的不同配置设置。

部署过程包括两个步骤:

  1. 发布最新的构建输出
  2. 使用特定于环境的默认配置文件进行复制和替换(正在进行部署)(这些文件当前处于源代码管理下)。
  3. 我正在尝试使用VSTS和Azure应用服务自动化部署过程,但我找不到任何可以让我将文件复制到App Service的任务或选项。

    实施此部署过程的最佳方式是什么?

2 个答案:

答案 0 :(得分:1)

通过对web.config文件使用配置转换,您可以更轻松地完成这项工作。

基本上,请确保您已为每个环境定义了构建配置。调试和发布是为Visual Studio MVC项目开箱即用的。您可以根据需要添加任意数量的配置,例如UAT配置。

一旦定义了配置,请确保在Visual Studio解决方案资源管理器中的web.config下面有web。[your build config] .config文件。在每个构建配置特定的转换文件中,您可以根据需要覆盖设置。

要关闭循环,您可以在VSTS中创建构建时指定要定位的构建配置。这将自动执行您选择的构建配置的转换。

有关构建配置和web.config的更多详细信息转换here

或者,您可以直接在Azure Web App的“应用程序设置”中指定应用程序设置和连接字符串。这些会覆盖已部署的web.config文件中的任何内容。我喜欢这种方法的方法是,您不必将敏感信息(如连接字符串)暴露给团队中的其他开发人员,这样就消除了web.config转换的微小复杂性。

答案 1 :(得分:1)

Kudu api让您能够通过覆盖

从azure web app上传和下载文件

git:   https://github.com/projectkudu/kudu/wiki/REST-API

不确定vsts是否具备此功能。 我最近做了你用詹金斯描述的事情。现在我正在尝试将Jenkins集成到vsts中 希望它能给你一个答案