web-dev-qa-db-fra.com

Comment exporter / importer la configuration Jenkins?

Jenkins CLI fournit la fonction pour exporter et importer des tâches individuelles, par exemple:

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

Est-il également possible/Comment sauvegarder et restaurer les configurations?


Je veux dire l'ensemble des paramètres:

  • la configuration du système,
  • la configuration globale de sécurité,
  • les pouvoirs,
  • la configuration globale de l'outil,
  • la configuration des plugins (la "Configuration du proxy HTTP" et la liste des plugins installés)
  • les nœuds
  • les utilisateurs
  • manque-t-il quelque chose?

L'ensemble des paramètres à la fois ou peut-être même en tant que processus de sauvegarde/restauration uniques, comme par exemple MozBackup avec sa "Sélection de composants"

MozBackup - Components selection

ou Eclipse avec sa boîte de dialogue "Exporter les préférences"

Eclipse - Export Preferences

20
automatix

Il n'y a pas de moyen simple de sauvegarder/exporter des parties sélectionnées de la configuration, car les données de configuration Jenkins sont dispersées parmi

  • plusieurs fichiers (global config.xml, beaucoup de fichiers spécifiques aux plugins)
  • plusieurs sous-répertoires (informations d'identification, nœuds) et
  • certains fichiers sont cryptés (informations d'identification), vous devez donc également sauvegarder les clés de cryptage

La solution la plus propre consistera à sauvegarder l'ensemble $JENKINS_HOME, et à exclure les parties que vous ne souhaitez pas faire partie de la sauvegarde (par exemple, exclure jobs/*/builds). Avec cela, vous vous retrouverez également avec une taille de sauvegarde raisonnable.

Une telle sauvegarde doit être effectuée au niveau du système de fichiers, car il n'y a pas d'API pour accéder à tous ces fichiers/données.

Ne vous fiez pas à thinBackup, car vous dépendez des mainteneurs du plugin pour ne rien manquer d'important. Par exemple, depuis la version 1.7.4, thinBackup ne sauvegarde pas les clés secrètes de Jenkins, il est donc impossible de restaurer les informations d'identification à partir de zéro.

24
Alex O

Peut-être que plugin thinBackup vous aidera.

6
Eugene V