如何导出/导入Jenkins配置?

时间:2016-07-26 09:14:13

标签: jenkins configuration export backup settings

Jenkins CLI提供导出和导入单个作业的功能,例如:

java -jar jenkins-cli.jar -s http://foo-jenkins.tld:8080 get-job myjob > myjob.xml
java -jar jenkins-cli.jar -s http://bar-jenkins.tld:8080 create-job newmyjob < myjob.xml

是否也可以/如何备份和恢复配置?

我的意思是整个设置:

  • 系统配置,
  • 全局安全配置,
  • 凭据,
  • 全局工具配置
  • 插件配置(&#34; HTTP代理配置&#34;以及已安装插件的列表)
  • 节点
  • 用户
  • 有什么遗漏?

整个设置,或者甚至可以作为单个备份/恢复过程,例如, MozBackup及其&#34;组件选择&#34;

MozBackup - Components selection

或eclipse及其&#34;出口偏好&#34;对话框

eclipse - Export Preferences

3 个答案:

答案 0 :(得分:22)

没有简单的方法来备份/导出配置的选定部分,因为 Jenkins配置数据分散

  • 多个文件(全局config.xml,大量插件特定文件)
  • 几个子目录(凭据,节点)和
  • 某些文件已加密(凭据),因此您还必须备份加密密钥

最干净的解决方案是备份整个 $JENKINS_HOME ,然后排除您不<的那些部分< / em>希望成为备份的一部分(例如,排除jobs/*/builds)。有了这个,你最终也会得到合理的备份大小。

这样的备份必须在文件系统级别完成,因为没有API可以访问所有这些文件/数据。

不要依赖thinBackup ,因为依靠插件维护者不要错过任何重要内容。例如,从版本1.7.4开始,thinBackup不会备份Jenkins&#39;秘密密钥,因此无法从头开始恢复凭据。

答案 1 :(得分:6)

也许thinBackup plugin会帮助你。

答案 2 :(得分:-7)

使用下面的插件

可以轻松实现上述要求

https://wiki.jenkins-ci.org/display/JENKINS/JobConfigHistory+Plugin

使用此插件时,下面的问题将得到解决

  • 配置更改已版本化
  • 可以比较配置更改
  • 配置更改可以还原