TFS 2010分支触发器(使用数据库启动VM)

时间:2014-06-16 20:56:47

标签: database tfs virtual-machine

目前,我们的开发团队使用共享数据库进行开发:(

我们正在检查是否可以使用VMWare,以便每个开发分支都可以拥有自己的数据库。我们有SQL脚本来创建数据库并用测试数据填充它们。

是否可以向TFS添加触发器,以便在分支时触发一些外部代码(可能是PowerShell)来创建VM和数据库?删除分支时,另一方面,自动删除VM?如果没有,关于我如何能够完成类似的任何其他建议?我们的分支机构相对较短(最多可能是几个月),这就是为什么我们要自动化启动VM并加载数据库的过程。

不幸的是,我们有一些与其他数据库交织在一起的遗留数据库并且具有循环引用,因此数据库项目是不可能的(它们无法构建)。我们将通过其他方式控制我们的数据库。

2 个答案:

答案 0 :(得分:1)

通常我会说你可以写一个ISubscriber插件。但是我不认为分支机构是一个你也可以订阅的事件。

另一种方法是编写一个团队在他们想要分支时使用的实用工具。他们不是在VS中创建分支,而是使用自定义实用程序,该实用程序将创建TFS分支并告知VMware配置您的环境。

答案 1 :(得分:1)

我通过编写批处理/ powershell脚本或可以创建或拆除虚拟机的小应用程序来解决此问题。最初这可以通过手工执行"作为分支创建/删除过程的一部分。

从那里你可以有两个选择:

  • 使用tf.exe或TFS API,使脚本/应用程序创建/销毁分支也是非常简单的,在这种情况下,创建或销毁分支的过程可能只是"运行我们的内部工具,给它分支名称" (而不是在Visual Studio中执行它,它可以处理所有事情)

  • 我相信你可以为你的TFS服务器编写一个插件,当创建或销毁一个分支时会调用这些插件(这是herehere提到的),以及它将使用您的脚本/应用程序来处理VM以响应分支事件