2016-07-26 55 views
13

Jenkins CLI zapewnia funkcja eksportowania & import pojedynczych miejsc pracy, np .:Jak wyeksportować/zaimportować konfigurację Jenkins?

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 

To również jest możliwe/Jak wykonać backup & przywrócić pliki konfiguracyjne?


Znaczy cały ustawienia:

  • konfiguracji systemu,
  • globalna konfiguracja zabezpieczeń,
  • poświadczenia,
  • globalna konfiguracja narzędzie,
  • z Konfiguracja wtyczek ("Konfiguracja proxy HTTP" i lista zainstalowanych wtyczek)
  • węzły
  • użytkownicy
  • jest coś brakuje?

Całe ustawienia naraz lub nawet pojedyncze procesy tworzenia kopii zapasowych/przywracania, np. MozBackup z "selekcji elementów komputera"

MozBackup - Components selection

lub eclipse z jego "Preferencje EXPORT" dialogowych

eclipse - Export Preferences

Odpowiedz

-3

Wspomniany wymóg można łatwo osiągnąć za pomocą poniższego wtyczki

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

Poniżej opisane zostaną b e rozwiązany podczas korzystania z tej wtyczki

  • zmiany Config są wersjonowany
  • zmiany Config można porównać
  • zmiany Config można przywrócić z powrotem
+2

To jest ... wyraźnie nie to, o co pytano. –

12

Nie ma prosty sposób na tworzenie kopii zapasowych/eksportowych wybranych części konfiguracji, ponieważ Jenkins dane konfiguracyjne jest rozproszone wśród

  • kilku plików (Global config.xml, wiele plików plugin-specyficzne)
  • kilka podkatalogów (poświadczenia, węzły) i
  • niektóre pliki są zaszyfrowane (poświadczenia), więc należy również wykonać kopię zapasową kluczy szyfrowania

Najczystsze rozwiązaniem będzie kopii zapasowej cały$JENKINS_HOME oraz wykluczyć te elementy, które możesz zrobić nie chcą być częścią kopii zapasowej (na przykład wykluczyć jobs/*/builds). Dzięki temu otrzymasz również rozsądny rozmiar kopii zapasowej.

Taką kopię zapasową należy wykonać na poziomie systemu plików, ponieważ nie ma interfejsu API do uzyskania dostępu do wszystkich tych plików/danych.

Nie polegaj na thinBackup, jak zależą od opiekunów wtyczki aby nie przegapić czegoś ważnego. Np. Obecna wersja thinBackup w wersji 1.7.4 nie będzie tworzyć kopii zapasowych tajnych kluczy Jenkins, więc niemożliwe jest przywrócenie poświadczeń od zera.