0

我希望有人可以帮助我正确地设置从 tfs 服务器到 Web 服务器的自动部署。

我有一个使用以下 MSBuild 参数设置的构建定义:

/p:AllowUntrustedCertificate=true /p:DeployOnBuild=true /p:PublishProfile=[profileName].pubxml

我收到 ERROR_USER_UNAUTHORIZED 消息。如果我在发布配置文件中添加 /p:Password=[passwordHere]帐户密码,则它会成功部署。有没有办法可以做到这一点,所以我在构建定义中没有密码?

我看到了这篇文章:如何配置 MSBuild 以使用保存的 publishProfile 进行 WebDeploy? 看起来可以做到,但是我不清楚如何做到。如果我能以某种方式使用 Windows 身份验证,那会很好,而不是 Basic。我试过添加,/p:AuthType=NTLM但这似乎没有任何作用。我试过像一些人建议的那样传递一个空的用户名,但这也不起作用。也尝试过如何使用带有集成 Windows 身份验证的 MSDeploy 和 TeamCity 进行部署?

目标 Web 服务器是 Server 2012 IIS 8,TFS/Build Server 正在运行带有 TFS 2012 Update 3 的 Win 2008 SP2,并且都安装了 web deploy v3.5。

4

1 回答 1

0

您真的希望独立于编译进行发布。您将需要通过您的环境推广相同的构建。您可以使用 LabTemplate.xaml 和配置环境来执行此 OOB。然而,这不是唯一的方法:

  1. 自定义构建过程 - 难以维护和自动化
  2. 标准环境 - http://nakedalm.com/standard-environments-for-automated-deployment-and-testing/
  3. Octopus Deploy - 最便宜的解决方案
  4. InRelease - TFS 2013 中的 OOB 这个工具增加了很多工作流程的优点

退房: http: //nakedalm.com/release-management-with-team-foundation-server-2012/

于 2013-10-12T02:11:22.130 回答