在不丢失构建历史记录的情况下,将Teamcity从版本4升级到版本6



有没有人有将Teamcity服务器从版本4升级到版本6而不丢失所有构建历史的经验?

由于我无法在现有的Teamcity服务器(4.5.4版)上直接升级,我的计划是将最新的Teamcities服务器安装到另一台主机上,并尝试导入以某种方式从旧Teamcity server导出的数据。

在阅读了版本4和版本6的文档后,我不确定如何继续。有人对此有什么建议吗?谢谢

这个问题解决后,我忘了绕回来。最近,我再次将Teamcity安装从6.5版迁移并更新到7.1.4版,没有丢失任何历史记录或数据,所以我想我最好分享我所做的。

基本上我做的是:

  1. 关闭旧版本4 Teamcity安装
  2. 将teamcity使用的数据库转储到.sql文件中。在我的例子中,我们使用MySQL,所以我使用了类似的东西:mysqldump -u User -pPassword teamcity_db_name > teamcity.sql
  3. 在新服务器上,使用rsync从旧版本4 Teamcity服务器复制.BuildServer文件夹
  4. 在新服务器上,使用与旧服务器中相同的名称在MySQL中创建数据库用户和数据库
  5. 导入.sql转储:mysql -u User -pPassword teamcity_db_name < teamcity.sql
  6. 将新的Teamcity .tar.gz分发文件解压缩到一个位置,例如/home/teamcity/Teamcity
  7. 运行/home/teamcity/Teamcity/bin/teamcity-server.sh start
  8. 打开http://<your new teamcity server>:8111/,它会通过在/home/teamcity/Teamcity/logs/文件夹的teamcity-server.log中找到秘密令牌来请求进入维护模式
  9. 输入令牌后,它会要求确认升级。这一步主要是升级.BuildServer文件夹的格式
  10. 等一下,对我来说,升级花了大约30分钟
  11. 差不多完成了,但别忘了更新构建代理,让他们知道新的teamcity服务器在哪里

无论是版本4->6升级还是版本6->7升级,对我来说都非常顺利。

最新更新