对于持续部署,我似乎无法弄清楚如何让 Team Foundation Server 中的构建脚本(Build/Advanced/MSBuild Arguments)工作。
是的,我使用了 Azure API 应用程序(预览版)配置文件选项并登录到 azure 帐户 - 我可以从那里发布 OK。它似乎还使用了一个我不确定来自哪里的密码,因为在查看“连接”信息时,它是隐藏的,并且pubxml
在您在解决方案中查看它时不可用。
我曾经为 Web 应用程序使用以下 MSBuild 参数,但现在如果我引用新的 Azure 发布文件,它就不起作用了。
我曾经使用过这样的东西:
/flp:verbosity="diagnostic" /p:DeployOnBuild=true /p:PublishProfile=xxx /p:AllowUntrustedCertificate=true /p:UserName="xxxx" /p:Password="xxxx"
总体而言,API 应用程序没有可用的密码,因此在测试参数时我删除了/p
信息。我还确保在 Team Foundation Server 构建机器上安装了适用于 VS 2013 的 Azure SDK,但这并没有解决任何问题。请注意,当此解决方案是 Web 应用程序时,CI 和 CD 工作正常。现在,如果我排除 CD,CI 对 API 应用程序运行良好。
详细日志给了我以下错误:
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\Web\Microsoft.Web.Publishing.targets (4350):PublishProfile 的值设置为 'xxx',预计会在 ' C:\Builds\4\Outcomes\yyy\src\zzz\zzz\Properties\PublishProfiles\xxx' 但找不到。
现在文件确实匹配并且文件位于那里 - 我检查了构建机器的构建文件夹。消息中的引用不引用文件扩展名,但它一定不需要该部分。
无论如何,我之前在 Web 应用程序部署中经历过这一切,而我最需要做的就是删除 Team Foundation Server 服务用户工作区。我还删除了构建机器上的所有构建文件夹,以确保它重新开始。虽然在这个问题上没有进展。