导入/导出TeamCity从一个服务器到另一个服务器的构建配置

Ace*_*Ace 31 teamcity build teamcity-8.0

将单个TeamCity构建配置从一个服务器移动到另一个服务器的最佳方法是什么?

我有一个我测试构建的TeamCity的本地实例.然后,当构建足够成熟时,我在我们的主TeamCity服务器上手动创建它(眼球副本).

是否有导出和导入功能可以为我这样做?

Bro*_*ass 37

不幸的是没有这样的事情.TeamCity 8通过引入Build Id格式(项目名称+构建配置名称,可以覆盖)使得"手动复制"构建配置变得可行,使情况好一点:

基本上,所有TeamCity构建配置实际上只是BuildServer\config\projects \文件夹和子文件夹中的XML文件.虽然我没有尝试过这个,但是如果id不冲突,你应该只能复制项目文件夹或将配置XML构建到新TeamCity实例的相应目的地.至少你绝对可以用这种方式覆盖现有的项目(过去我曾经做过的动态改变构建配置的东西).

当然,如果您的构建配置依赖于其他构建/工件,那么这些ID也必须匹配,因此您要么必须复制它们,要么相应地调整ID.代理商要求也是如此.

编辑:

现在有了TeamCity 9,在内置的TeamCity服务器之间移动项目有了更好的选择:

现在,TeamCity提供了在服务器之间移动项目的功能:您可以将项目及其所有数据(设置,构建和更改历史记录等)以及TeamCity用户帐户从一台服务器转移到另一台服务器.您需要做的就是在包含要导入的项目的源TeamCity服务器上创建一个通常的备份文件,将备份文件放入目标服务器上的/ import目录中,然后按照管理中的导入步骤进行操作.项目导入页面.

有关完整摘要,请参阅TeamCity 9中的新功能.


Mar*_*den 14

对于TeamCity 9及以上版本:

  1. 确保TeamCity的两个实例都运行相同的版本.
  2. 从TeamCity导出数据:使用源计算机上的Web UI,转到Administration -> Backup并执行基本备份.它会告诉您创建的备份文件的路径.
  3. 将数据导入TeamCity:
    1. 在目标服务器上,打开Web UI并导航到Administration -> Projects Import.这将告诉您导入目录的路径.
    2. 将备份文件复制到导入目录,刷新Web UI,然后单击"配置导入范围"
    3. 选择要导入的项目和数据类别.鉴于问题只是构建配置,您将取消选中导入用户和组.单击"开始导入".

  • 对于 TC 版本差异,您可以打开导出生成的 ZIP 文件并更改 version.txt 中的字段以匹配您要导入的 TC 版本。 (3认同)