首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用TFS构建的多个web部署打包

使用TFS构建的多个web部署打包
EN

Stack Overflow用户
提问于 2011-12-23 13:05:48
回答 1查看 1.5K关注 0票数 3

我们有几个使用msdeploy“手动”部署的web服务。我们从适当的TFS2010目录中的_PublishedWebsites\<<ProjectName>>_Package构建机器中获取部署包。

现在,我们希望使用一个部署工具来包装部署包,这样可以使安装人员更容易查看参数。

我们想要做的是构建单独的web服务部署包,让部署包位于部署工具构建的正确位置,然后让部署工具生成工具,并将先前构建的部署包复制到构建机器上的同一个Binaries放置文件夹中。

出于某种原因,这似乎是难以置信的困难。

我们试过的东西

  • 设置位置,使用变量(例如,$(TargetDir))在web服务项目的包/发布项目设置上创建包。Visual解释输入的变量并将其替换为开发机器的硬编码路径.这就是建造机器的原因。在机器上最终的结果是..。什么也没有;部署包仍然被发送到_PublishedWebsites\<<ProjectName>>_Package
  • /p:PackageLocation设置为TFS "Process“/ "Advances”部分中的MSBuild Arguments设置之一,以及/p:CreatePackageOnPublish=true /p:DeployOnBuild=true。所有这些都是生成错误: MSB1008: Only one project can be specified. Switch: p:PackageLocation=$(BinariesRoot)\DeploymentFiles For switch syntax, type "MSBuild /help" 可能是因为构建生成了多个部署包。

任何建议都要感谢!我们是不是走错路了?我们是否应该做一些类似于修改构建XAML来满足这种需求的事情(比如针对另一个问题的这一页表明 )?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-18 15:19:20

你可以考虑以下几种可能性:

1-像您所描述的那样更改TFS工作流以执行一些复制任务

2-创建一个按照标准打包步骤运行的MSBuild项目,将输出从_PublishedWebsites复制到您选择的某个位置。

3-在构建包以更改包放置位置时重写以下MSBuild参数:

代码语言:javascript
复制
 <DefaultPackageOutputDir Condition="'$(DefaultPackageOutputDir)'==''">$(OutDir)[YourDesiredLocation]\$(DefaultMSDeployDestinationApplicationName)\Package</DefaultPackageOutputDir>

请注意,您可以在

代码语言:javascript
复制
 c:\program files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets

最近,我在一个客户端实现了建议2,使用了自定义的MSBuild项目文件中#3中建议的重写,它工作起来很有魅力。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8616460

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档