版本控制(例如,在TFS)构建配置的TeamCity - 这可能吗?(Version contro

2019-09-22 08:13发布

我期待我们的基础设施建设,从CC.NET迁移到TeamCity的。 诚然漂亮的绿色的TeamCity在这一点上。

一个潜在表明,塞的是,我们需要我们构建配置是版本控制沿着它构建的源代码。 CC.NET使这很容易,是一个非常有用/强大的功能。

从我的调查,你可以更改的TeamCity存储其配置/数据,但没有官方文档(也不等话题在这里SO)似乎引用将其放置在一个版本控制下的位置,如TFS,Perforce公司或ClearCase的。

因此,我不知道这是可能的和/或它的“做的事”?

难道说,如果TeamCity的假定任何配置文件和底层VCS R / W访问,使文件要求入住/退房语义,这会混淆的TeamCity和停止它的工作R / O。

没有人在这里有Team Foundation Server的(或类似)的版本控制的TeamCity构建配置的经验?

谢谢你,杰克

仅供参考- 一个人如何版本控制的TeamCity项目的配置? 似乎这里SO是唯一的类似线程。 http://confluence.jetbrains.net/display/TCD7/How+To ......及相关官方的文档谈论迁移的配置和/或支持它,这是接近,但没有真正的同样的事情。

Answer 1:

这不是一个答案,但...

我们问JetBrains公司为他们的这一建议,并得到了以下回应:

到目前为止,没有任何功能,存储在版本控制的配置设置。 该设置存储在XML中的磁盘(TeamCity的数据目录-上http://confluence.jetbrains.net/display/TCD7/TeamCity+Data+Directory ),并在理论上是可能的目录与版本控制同步。 你可能想投给功能,或在我们的问题跟踪观看: http://youtrack.jetbrains.com/issue/TW-2806

我看不到任何优雅的解决方案,所以会认为最好的解决办法(至少最糟糕的解决方案...)是:

  1. 移动复杂的构建逻辑到的MSBuild /南特的脚本,版本控制; 和
  2. 如果你有时间,实现您的源代码控制和TeamCity的数据目录之间的自定义同步服务。 在这种情况下,你可能必须做好应对失败,将需要从时手动合并时间(不好玩:-()。

祝你好运,如果你找到一个很好的解决方案,请分享:-D



Answer 2:

这在TeamCity的9被引入:

https://confluence.jetbrains.com/display/TCD9/Storing+Project+Settings+in+Version+Control



Answer 3:

我一直想办法到源代码控制TeamCity的配置很长一段时间。 我最后写一个Windows服务,监视配置目录,并提交更改与git。

它不是TFS但源代码是在GitHub这样你可以很容易适应的解决方案,以满足您的需求。

该项目是在GitHub上: https://github.com/grenade/teamcity-config-monitor



Answer 4:

据我知道这是不是支持,而是一种方法,我建议是调用编译期间存储在源代码控制的批处理文件。 该批处理文件可以手动调用做构建所需的命令,或者可以调用如的FinalBuilder。 这允许在构建过程中很大的灵活性。



文章来源: Version control (e.g. in TFS) build configuration for TeamCity - is it possible?