2010-11-19 88 views
3

我有在TFS一个相当大的MVC2项目,大干快上签(持续集成)TFS 2010生成通过文件系统

目前自动生成发布,完全内置版本倾倒在网络共享我们开发IIS服务器。 \\Server\wwwrootLatest

TFS当然会创建大量的子文件夹,因为它只是在构建,它甚至不知道它的drop目录是wwwroot。

这意味着要实际使用构建,我们需要去手动创建一个IIS应用程序,它指向相应的目录 - 这会破坏练习的整个对象。

当我们做一个手动发布到服务器,我们使用“文件系统”的方法,只是覆盖文件在UNC共享\\Server\wwwroot

(当发布到其他环境中,我们使用全上MSDeploy 。)

我希望做的是说服TFS做一个“文件系统”发布构建完成后,复制我们做什么的手动发布如:

投递目录是\\Server\Build这将导致在类似\\Server\Build\Project\Date.Rev\

完成后,我们希望它发布到\\Server\wwwrootLatest - 然后我们可以设置应用程序一次,它将始终包含最新版本,但如果需要,仍然会有完整的历史记录。

我已经能够找到的唯一示例在构建定义中使用MSBuild命令(很好),但都使用MSDeploy来执行完整发布。我不知道如何自动化我想做的事

任何帮助表示赞赏。

+0

我认为这是一个重复的,你可以检查http://stackoverflow.com/questions/4041836/team-build-publish-locally-using-msdeploy/4045406#4045406并让我知道,如果它不同? – 2010-11-20 06:01:44

回答

2

在您的放置文件夹中,会自动生成一个名为_PublishedWebsites的文件夹。它包含您需要输入wwwroot的文件。您可以使用CopyDirectory构建活动来自动复制它们。

+1

不错的主意,谢谢 - 我在看MSDeploy交换机,但这看起来一样好。 – Basic 2010-11-22 10:36:29