2012-11-12 149 views
2

我正在尝试使用Visual Studio的团队资源管理器和TFS创建一个构建定义以将MVC网站部署到IIS。TFS构建定义不部署mvc应用程序到IIS

我遵循名为“使用Team Foundation Server 2010持续部署”的Pluralsight教程。

我从教程遵循的步骤包括:

  • 安装IIS管理脚本和工具
  • 安装的管理服务
  • 在管理服务我允许远程连接并启用Windows凭据只有
  • 已安装Web部署
  • 创建部署域帐户
  • Al lowed域帐户的权限修改IIS文件系统
  • 使用此域帐户设置委托规则
  • 设置IIS权限使用域帐户

的MSBuild的arguements我在构建定义设置为:

/p:DeployOnBuild=true 
/p:DeployTarget=MSDeployPublish 
/p:CreatePackageOnPublish=False 
/p:MSDeployPublishMethod=WMSVC 
/p:SkipExtraFilesOnServer=True 
/p:AllowUntrustedCertificate=True 
/p:MSDeployServiceUrl="https://<iis server name>:8172/msdeploy.axd" 
/p:Username="<domain>\<user>" 
/p:Password="<password>" 
/p:DeployIISAppPath="Default Web Site/<site name>" 

我排队构建,它通过,被写入到drop文件夹,但不是IIS。

我使用相同的属性值从Solution Explorer发布了MVC应用程序,并且它已成功部署到IIS。

有人知道我失踪了吗?

+0

是你的问题解决了吗? – Mitul

+0

不,你也在寻找答案吗? –

回答

6

我通过检查我的本地机器上的内容和它与构建服务器比较解决了这个问题。

我发现我的本地计算机上'C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v11.0'上的'Web'和'WebApplication'文件夹没有出现在构建服务器。

一旦我复制并粘贴他们在我的构建工作和MVC站点部署到IIS预期。

+0

哦,谢谢你的回答..!构建服务器上缺少Web目录,我从我的机器上复制了它。有用! – cederlof

+0

Holy crap ... 3天解决这个问题,然后我找到了你的帖子。谢谢! – bytebender

3

这是我的设置,为我工作。尝试更改CreatePackageOnPublish = True并查看它是否有效。

/P:DeployOnBuild =真
/P:DeployTarget = MsDeployPublish
/P:CreatePackageOnPublish =
/P:MSDeployPublishMethod = WMSVC
/P:MSDeployServiceUrl = HTTPS://服务器:8172 /MSDeploy.axd/p:DeployIisAppPath = “NameofWebsiteOnIISServer”
/p:AllowUntrustedCertificate =真
/p:用户名= “域\ serviceaccount”
/p:密码= “AwesomeSecurePassword”

首先,我建议检查您是否能够通过webdeploy直接通过visual studio发布。下面列出了在Visual Studio中找出正确的Web部署设置的最佳方法。我推荐这种方法,因为它会给你错误信息v/s“每次排队新建立”以查看网站是否已发布。

  1. 右击内部IIS7的网站 - > WebDeploy - >点击设置配置Web部署发布
  2. 点击,然后采取发布已生成的设置文件,并导入这些发布设置,当你右键点击网站,并在Visual Studio中点击发布网站。
  3. 尝试使用Visual Studio的点击发布第一,因为它更容易找到在Visual Studio中使用Web部署发布错误发布。

如果您遇到错误,那么此网站(http://www.iis.net/learn/publish/troubleshooting-web-deploy/web-deploy-error-codes)将提供与其相关的所有错误消息。

确保您指定的服务帐户“IIS管理器权限”部分管理下。

同时检查“Web管理服务”和“Web部署代理服务”服务正在运行。

+0

我仍然不成功。我将CreatePackageOnPublish属性更改为True。我没有构建错误。我可以通过VS成功发布。服务帐户列在“IIS管理器权限”下,服务正在运行。 –