Reputation: 14512
The Jenkins CLI provides the function to export&import single jobs, e.g.:
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
Is it also possible / How to backup&restore the configs?
I mean the whole settings:
The whole settings at once or maybe even as single backup/restore processes like e.g. MozBackup with its "Components selection"
or eclipse with its "Export Preferences" dialog
Upvotes: 36
Views: 73868
Reputation: 8164
There is no simple way to backup/export selected parts of the configuration, since Jenkins configuration data is scattered among
config.xml
, lots of plugin-specific files)The cleanest solution will be to back-up the entire $JENKINS_HOME
, and to exclude those parts that you do not want to be part of the backup (e.g., exclude jobs/*/builds
). With that you'll end up with a resonable backup size also.
Such a backup must be done on filesystem level, as there's no API to access all those files/data.
Do not rely on thinBackup
, as you depend on the plugin maintainers to not miss anything important. E.g., as of version 1.7.4, thinBackup
does not backup Jenkins' secret keys, so it's impossible to restore credentials from scratch.
Upvotes: 40
Reputation: 337
The mentioned requirement can be easily achieved using the below plugin
https://wiki.jenkins-ci.org/display/JENKINS/JobConfigHistory+Plugin
Below issues will be solved while using this plugin
Upvotes: -12