【发布时间】:2017-07-13 00:54:55
【问题描述】:
假设我有一个位于 foo.azurewebsites.net 的 Azure 应用服务 Web 应用。 Web 应用程序的代码(一个简单的 Node.js 服务器和 React 前端)托管在 VSTS 上,并且每次将代码推送到存储库的 master 分支时,都会配置一个自定义部署脚本来构建和部署 Web 应用程序。换句话说,标准的网络应用配置。
现在,我所有的 API 代码(只是一个 Node.js 服务器)都在 VSTS 上的另一个存储库中。我希望能够做到以下几点:
- 让所有对
foo.azurewebsites.net/api的请求都由 API 服务器处理(这意味着,我仍然想明确说明,服务器可以要求浏览器设置 Web 应用程序可以读取的 cookie,反之亦然)。 - 为 API 服务器设置类似的持续部署,以便在 API 存储库中发生代码更改时重新部署它。
- 能够完全独立地维护 Web 应用和 API 存储库。
这似乎是一个相当标准的场景……有公认的解决方案吗?我遇到了this,但这似乎是一种非常老套的方法,更不用说我不知道 VSTS 的网络挂钩的正确 URL 是什么,而且似乎找不到任何关于它。此外,该示例未涵盖如何处理上述第 (1) 点。
编辑:补充说明
请注意,this question 上接受的答案不是我想要的。它描述了如何在部署时从第二个存储库中提取,但没有描述如何让第二个存储库触发部署,或者如何处理第二个存储库是它自己的服务器这一事实。此外,它引入了两个存储库之间的依赖关系,因为deploy.cmd 可能在第一个存储库中处于源代码控制之下。
编辑:虚拟目录
感谢@CtrlDot 指出虚拟目录是解决 (1) 的方法。仍在寻求关于 (2) 和 (3) 的指导。
【问题讨论】:
标签: node.js git azure azure-web-app-service