TFS在构建代理工作目录下生成一个发布目录:
Z:TFSBuilds1boxCTBinaries\_PublishedWebsites
我假设这就是TFS自动发布网站的地方。我如何使用它来自动发布网站。。。作为我们是否应该将IIS网站引用到此目录。它的目的是什么?
首先,工作目录顾名思义,是一个"工作"目录。这就是构建代理下载源代码、执行编译等的地方。每当你再次运行构建时,它还会清除工作目录,这样当你试图从工作目录中检索时,你就有可能获取未完成的工件。
TFS定义了一个"放置文件夹",一旦构建完成,它将把最终工件复制到该文件夹中。您可以通过编辑构建定义来定义构建的放置文件夹:
- 右键单击生成并选择"编辑生成定义"
- 选择"生成默认值"部分
- 勾选"此生成将输出文件复制到放置文件夹"
- 为生成代理输入要将项目复制到的UNC路径(确保生成代理有权访问该UNC路径!)
第二,关于_PublishedWebsites。生成代理将为其生成的每个Web项目创建一个_PublishedWebsites文件夹,作为其生成工件的一部分(因此,如果您告诉它用两个Web项目生成一个解决方案,它将创建[项目名称a]\PublishedSites和[项目名称B]\ _Published Sites)。在每个_PublishedWebsites文件夹中都有要放入IIS应用程序的内容,与右键单击web项目并选择"发布"所获得的内容相同。我通常会在构建工作流中添加最后一步,将此_PublishedWebsites文件夹的内容复制到我想要的IIS目录中。
此链接告诉如何将复制工作流添加到测试服务器:TFS 2010:copy_PublishedWebsites
以下是有关投递文件夹的更多信息:http://msdn.microsoft.com/en-us/library/bb778394.aspx