deployment - TFS Web Deploy 不通过构建执行而是在本地执行?

标签 deployment tfs msbuild msdeploy

我有一个解决方案,我正在尝试在构建后部署 TFS 2010。

当我在本地运行以下 msbuild 命令时,它部署得很好:

msbuild C:\Path\to\Solution.sln/p:DeployOnBuild=True/p:DeployTarget=MsDeployPublish/p:CreatePackageOnPublish=True/p:MSDeployPublishMethod=WMSVC/p:MSDeployServiceUrl=https://[服务器]:8172/MsDeploy.axd/p:DeployIisAppPath="TestSite"/p:UserName=Domain\Username/p:Password=NotTheRealPassword/P:AllowUntrustedCertificate=True

但是,当我将这些相同的选项粘贴到 TFS 2010 构建 MS 构建参数中时:

enter image description here

...它似乎没有执行任何操作。

构建正确完成:

enter image description here

但我在整个日志文件中没有看到与部署等相关的任何内容。就好像参数从未从 TFS 传递到 MSBuild 一样。

TFS 调用 MSBuild 命令

日志将其显示为(已清理敏感数据):C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSBuild.exe/nologo/noconsolelogger "C:\Builds\1\[Scrubbed]\Daily6am\Sources\[Scrubbed].sln"/m:1/fl/flp:"logfile=C:\Builds\1\[Scrubbed]\[Scrubbed]\Sources\[Scrubbed].log;encoding=Unicode;详细=正常"/p:SkipInvalidConfigurations=true/p:DeployOnBuild=True/p:DeployTarget=MsDeployPublish/p:CreatePackageOnPublish=True/p:MSDeployPublishMethod=WMSVC/p:MSDeployServiceUrl=https://[Scrubbed]:8172/MsDeploy .axd/p:DeployIisAppPath="TestSite"/p:UserName=[Scrubbed]\farmservice/p:Password=[Scrubbed]/p:AllowUntrusted=True/P:AllowUntrustedCertificate=True/p:OutDir="C:\Builds\1\[Scrubbed]\[Scrubbed]\Binaries\\"/p:Configuration="Debug"/p:Platform="Any CPU"/p:VCBuildOverride="C:\Builds\1\[Scrubbed]\[ Scrubbed]\Sources\[Scrubbed].sln.Any CPU.Debug.vsprops"/dl:WorkflowCentralLogger,"C:\Program Files\Microsoft Team Foundation Server 2010\Tools\Microsoft.TeamFoundation.Build.Server.Logger.dll";“Verbosity=Normal;BuildUri=vstfs:///Build/Build/23;InformationNodeId=4504;TargetsNotLogged=GetNativeManifest,GetCopyToOutputDirectoryItems,GetTargetPath;TFSUrl=http://[Scrubbed]:8080/tfs/[Scrubbed]_Collection; "*WorkflowForwardingLogger,"C:\Program Files\Microsoft Team Foundation Server 2010\Tools\Microsoft.TeamFoundation.Build.Server.Logger.dll";"Verbosity=Normal;"

问题

  • 如何让 TFS 告诉 MSBuild 构建部署?
  • 如何验证参数是否已传入?
  • 如何正确读取日志以了解是否发生了这种情况?

非常感谢您对这些方面的任何帮助。

最佳答案

我不久前就找到了一个问题的答案:)

根据this SO Question的答案, @marvc1 (应有的信用)建议复制以下文件:

  • C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web
  • C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications

我复制了 WebApplications,但没有复制 Web。复制网页解决了这个问题。

关于deployment - TFS Web Deploy 不通过构建执行而是在本地执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19715631/

相关文章:

MSBuild 根据调试/发布版本更改配置值

angular - 如何在azure中设置nodejs版本

azure - 如何在 azure devops YAML 管道中使用单个代理执行多个作业/阶段

linux - 为什么在 Centos 上修补 linux 内核以使用 Docker.io

git - 将一些项目从一个用户帐户移动到另一个

visual-studio-2010 - 默认情况下不打开团队资源管理器

c# - 分配从 MSBuild 中的属性获取的参数值

visual-studio - 英特尔编译器 18.0 工具集引发 msbuild 异常

java - 不考虑日期更新 WAR/JAR 中的文件

gwt - EC2 : can I host an http server there?