it-swarm.com.de

Wie exportiere / importiere ich die Jenkins-Konfiguration?

Die Jenkins CLI bietet die Funktion zum Exportieren und Importieren einzelner Jobs, z.

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

Ist es auch möglich/Wie kann man die Configs sichern und wiederherstellen?


Ich meine die ganzen Einstellungen:

  • die Systemkonfiguration,
  • die globale Sicherheitskonfiguration,
  • die Anmeldeinformationen,
  • die globale Werkzeugkonfiguration,
  • die Plugins Konfiguration (die "HTTP Proxy Konfiguration" und die Liste der installierten Plugins)
  • die Knoten
  • die Benutzer
  • fehlt etwas?

Die gesamten Einstellungen auf einmal oder sogar als einzelne Sicherungs-/Wiederherstellungsprozesse wie z. MozBackup mit seiner "Komponentenauswahl"

MozBackup - Components selection

oder Eclipse mit dem Dialogfeld "Exporteinstellungen"

Eclipse - Export Preferences

20
automatix

Es gibt keine einfache Möglichkeit, ausgewählte Teile der Konfiguration zu sichern/exportieren, da Jenkins Konfigurationsdaten sind verstreut unter

  • mehrere Dateien (global config.xml, viele Plugin-spezifische Dateien)
  • mehrere Unterverzeichnisse (Anmeldeinformationen, Knoten) und
  • einige der Dateien sind verschlüsselt (Anmeldeinformationen), daher müssen Sie auch die Verschlüsselungsschlüssel sichern

Die sauberste Lösung ist Sicherung des gesamten $JENKINS_HOME und um diejenigen Teile auszuschließen, die Sie nicht als Teil der Sicherung verwenden möchten (z. B. ausschließen jobs/*/builds). Damit haben Sie auch eine vernünftige Backup-Größe.

Eine solche Sicherung muss auf Dateisystemebene durchgeführt werden, da es keine API gibt, um auf alle diese Dateien/Daten zuzugreifen.

Verlassen Sie sich nicht auf thinBackup, da Sie darauf angewiesen sind, dass die Plugin-Betreuer nichts Wichtiges verpassen. Beispielsweise sichert thinBackup seit Version 1.7.4 nicht mehr die geheimen Schlüssel von Jenkins, sodass es unmöglich ist, die Anmeldeinformationen von Grund auf wiederherzustellen.

24
Alex O

Vielleicht hilft Ihnen thinBackup-Plugin .

6
Eugene V