Iis 让TFS 2010生成服务器发布到同一文件夹并覆盖
我已经找了很久了,我很恼火,因为我想做的理论上很简单 我有一个web项目,当我告诉我的TFS将一个新构建排队时,我希望我发布的文件(或未发布的文件-我不在乎)最终位于静态文件夹中,如“C:\inetpub\myproj\webfiles” 我已经查看了这篇文章,这篇文章把我引向了这篇文章,但我就是不明白,它似乎不起作用 我已经设置好了我的构建定义,它成功地构建,甚至会构建到我指定的文件夹中,但一旦构建完成,它就会在一堆子文件夹中结束——其中一个文件夹附加了一个版本号,这意味着IIS在不重新配置的情况下不会自动获取我的最新版本。(我确实删除了版本绑定,但它不会用最新版本覆盖上一个版本) 我目前正在处理这些MSBuild参数,以尝试使其正常工作:Iis 让TFS 2010生成服务器发布到同一文件夹并覆盖,iis,tfs,build,tfsbuild,Iis,Tfs,Build,Tfsbuild,我已经找了很久了,我很恼火,因为我想做的理论上很简单 我有一个web项目,当我告诉我的TFS将一个新构建排队时,我希望我发布的文件(或未发布的文件-我不在乎)最终位于静态文件夹中,如“C:\inetpub\myproj\webfiles” 我已经查看了这篇文章,这篇文章把我引向了这篇文章,但我就是不明白,它似乎不起作用 我已经设置好了我的构建定义,它成功地构建,甚至会构建到我指定的文件夹中,但一旦构建完成,它就会在一堆子文件夹中结束——其中一个文件夹附加了一个版本号,这意味着IIS在不重新配置的
/p:DeployOnBuild=true;
DeployTarget=PipelinePreDeployCopyAllFilesToOneFolder;
_PackageTempDir="\\HomeServer\inetpub\SiteTest";
AutoParameterizationWebConfigConnectionStrings=false
但有两点:
- 从未创建“SiteTest”文件夹,并且
- 它是通过共享位置访问的,而我也希望它是主服务器的本地文件系统
我只需要自动将我的web文件放入一个我可以为IIS预先确定的文件夹中,请帮助 我通过定制构建过程模板实现了这一点。制作DefaultTemplate.xaml(例如DefaultTemplateV2.xaml)的副本并打开它 如果您不熟悉使用工作流xaml编辑器,我发现先折叠所有文件会有所帮助 打开后,单击根序列并单击参数。添加三个参数:
- 运行代理
- 尝试编译、测试和
- 在“尝试打开序列”下
String.Format("{0}\{1}", BinariesDirectory, FromPath).
保存并签入。您需要打开以前的版本,并注意要部署的版本子文件夹。它将类似于“发布网站\我的网站”
编辑生成定义(可能必须先关闭并重新打开VS),然后转到“流程”选项卡。将生成过程模板更改为新版本
将FromPath设置为您刚才注意到的路径。将InstallPath设置为目标文件夹的UNC路径(您需要确保运行构建的任何服务帐户都可以访问该路径),并将DeployBuild设置为True
保存、排队生成并测试部署
您还可以在工作流XAML中,转到参数并使用每个新参数编辑元数据参数。您可以设置查看它们的位置。例如,您可以将FromPath和InstallPath设置为仅在编辑定义时查看,而将DeployBuild设置为在对生成进行排队时查看。这样你就可以在排队时打开或关闭它
祝你好运。你最好停止与之抗争,而是单独问一个问题,看看你想完成什么。你找到答案了吗?我从来没有找到,有办法实现它,但我现在租了一台TFS服务器,但它没有构建服务器:(抱歉:(谢谢Paul,这是一个期待已久的回答-但我们不再有构建服务器><我将标记您的答案,因为您似乎已经制定了定制构建输出的步骤并投入了大量研究。非常感谢