是否有(自动)方式备份Hudson CI文件?

在我的公司,我们有三台Hudson CI服务器,配置了100多个作业。 我们正在寻找一种定期备份作业配置和构建历史记录的自动方式。

目前我们有一个我们配置为作业的ant脚本,但它不容易维护而且不优雅。

有没有人找到办法管理这个?

有一个备份插件 。

我不相信它支持定期备份的安排,但您可以通过URL访问它(就像其他一些Hudson远程API一样)来触发它,在这种情况下,您可以简单地设置一个cron作业pingurl

我的Hudson服务器在Windows上运行,因此我使用Robocopy。 我让它镜像每个构建服务器的hudson主目录中的所有文件,不包括作业工作区目录。 由于备份将进入中心位置,因此我在每晚运行我的脚本的文件服务器上有一个计划任务,并且Hudson服务器不知道该过程。

该脚本每个哈德森机器有一个条目:

robocopy path-to-buildserver-hudson-home backup-folder-path \ buildserver-name / ZB / E / NP / R:1 / W:5“/LOG:%~dp0backup_log.txt”/ TEE / XD工作空间

注意:在第一台机器之后,它变为/ LOG +:而不是/ LOG:以便下一个附加到日志。

这镜像不会删除源中不存在的文件,因此即使Hudson设置为在X个月或Y版本之后删除构建结果,备份仍然可以具有完整历史记录…以及日志到控制台和文件,如果被打断,可以恢复。 这很方便。 如果您不希望它保留Hudson删除的文件,您可以使用/ MIR而不是/ E.

我确信在其他平台上存在类似的强大副本或镜像工具。 如果做得好,Ant可能就足够了。

有很棒的thinBackup插件。

它仅备份系统配置和作业配置,而不是整个HUDSON_HOME目录,并且具有类似cron的调度。 性感!

我会使用标准的企业服务器备份解决方案来管理它。

或者用BackupPc之类的东西滚动自己。

或者将配置文件检查到版本控制系统中。

我正在使用支持完全备份和差异备份的thinbackup,您可以安排何时使用类似cron job的语法运行备份。 它只备份关键配置,因此不会占用太多空间。

有关详细信息,请访问: https : //wiki.jenkins-ci.org/display/JENKINS/thinBackup

除了Backup插件之外,还有thinBackup插件只备份配置文件(可用于Hudson或Jenkins )

我个人喜欢通过一个通常最终是shell脚本的系统来进行所有系统备份。 我为此编写了一个Jenkins特定脚本(也适用于Hudson)。 有关更多信息,请参阅https://bitbucket.org/toomasr/jenkins-stuff/src 。