我想设置我们的CI构建环境并出现问题。TFS部署不使用WebDeploy
首先,我使用的VS和TFS 2012等等,因为这些都是VS/TFS 2013
其次,我无法使用* .12.xaml模板,现在我配置为使用只是defaulttemplate.11.xaml。最初,我使用WebDeploy作为部署方法,这非常棒。从那以后,我们的网络/服务器团队已经重新配置我们的测试环境,以使用IIS共享配置以及DFS复制来保持所有内容的同步。因此,我不再能够使用WebDeploy(我将这post传递给TFS管理员,但他们说不)。
是否有一个地方可以添加一些msbuild参数或生成后事件,我可以用一些参数发送* .cmd文件,以便我可以复制/部署代码?
我读过Hanselman(和其他所有抄袭他人)的帖子/博客,上面写着“如果你使用xcopy,你做错了,等等......”,但我相信我的情况是我不能使用Web部署。
更新:
所以我想我找到了我的答案。由于Web部署对我不起作用,我发现了一个名为CopyDirectory的工作流活动,它听起来完全像我所需要的。
我经历了更新我的默认模板的过程,以将这个额外的步骤添加到构建过程中,顺便说一下,它不工作得很好。在添加步骤,保存等之后,该步骤不会出现在我的构建输出中。我放弃了一段时间,看看我们是否可以在我们的Jenkins构建服务器上做到这一点,在那里得到了一些不同的错误,所以我回到TFS进行更改和提交。由于CI仍然在TFS中设置(授予,失败),我注意到当我做出提交时,一个构建被启动。我决定观看一段时间,并成功完成!哇,好的。所以我检查了构建日志,发现它警告说“无法复制,确保源目录存在,并且你有适当的权限”。
那么,因为我刚输入这个值不正确,没什么大不了的,只是改成正确的BuildDetail.DropLocation,我们应该是金。
错误,在对源和目标值进行更改后再次构建后,我发现由于我试图将文件部署到其他域,所以仍然失败。
哦,除此之外,您不能通过复制命令步骤!真!但是,我发现了一些文档,它说:“给你想复制的域上的tfs构建服务/帐户权限。好吧,如果我的服务器团队允许这样做,那就太好了,但他们不这样做。
回到原点......(这会变成一个关于我的博客抱怨TFS ...)
其实不是,需要提供凭据,因为应用程序正在部署到另一个域不是TFS问题。创建信任关系并解决部署问题。可能还有其他需要在远程域中执行的活动。 –
我知道这不是一个“TFS问题”,但如果TFS允许您将凭据传递给该复制活动,那将会很好。就信任而言,我们的服务器/ Web团队表示这不是一种选择。 – ganders