我在Visual Studio Team Services中有一个解决方案,它有2个Web应用程序(特别是一个用于WebAPI服务的项目,另一个用于使用MVC的实际站点)。
我正在尝试为Azure设置持续交付,但我能找到的所有信息似乎都假设您的解决方案中只有一个Web应用程序(除了最简单的项目之外,这对所有人来说似乎有点不切实际! )。
开箱即用的持续交付流程似乎只是挑选和部署它找到的第一个Web应用程序(每次都不一定是同一个项目!)
我已尝试指定部署设置文件,但这似乎影响了目标而不是再次部署的项目,它似乎只是“选择”要部署的项目,并且每次部署每个编译的程序集加上所有依赖项,而不仅仅是实际部署的项目的二进制文件和依赖项,这可能会导致MVC找到给定名称的重复控制器匹配问题(这当然可以通过在路由配置中指定控制器的名称空间来修复,但这似乎不太理想,仍然无法解决整个问题。)
理想情况下,我想找到一种方法来使用单个构建部署两个项目,但作为一个临时解决方案,我会对2个构建感到满意,这两个构建都是由单个解决方案的签入触发的,每个构建都是可靠地部署2个Web应用程序中的一个。
有人知道这是否可行?我想我可以编写自己的自定义构建模板,但我希望有一个更简单的答案(尤其是因为我无法想象这不是其他人面临的问题!)
我确实发现了这个问题TFSPreview.com and Azure continuous deployment for multiple solutions in TFS但是由于这个问题非常陈旧,并且特别是在谈论AzureWebRoleProjects而不是将Web应用程序部署到更新的Azure网站功能,我希望有更积极的答案吗? / p>
答案 0 :(得分:0)
多个构建配置可以实现这一点。除了Debug和Release之外,您还可以指定两个,每个应用程序一个。
您可以在Visual Studio中的Build - >中找到它们。配置管理器。然后在配置中只指定其中一个要构建。然后使用该配置运行MSBuild将只输出一个WebDeploy包。