Używam wtyczki referencji w Jenkins, aby zarządzać poświadczeniami dostępu do git i baz danych dla kompilacji mojego zespołu. Chciałbym skopiować referencje z jednej instancji Jennkins do innej, niezależnej instancji Jennkins. Jak miałbym to zrobić?Jak eksportować dane uwierzytelniające z jednej instancji Jennkins do drugiej?
Odpowiedz
Skopiowanie $ HUDSON_HOME/credentials.xml nie jest rozwiązaniem, ponieważ Jenkins szyfruje hasła i nie można ich odszyfrować przez inną instancję, chyba że oba mają wspólny klucz.
Więc, albo użyć tych samych klawiszy encription w obu przypadkach Jenkins (Where's the encryption key stored in Jenkins?) lub co można zrobić, to:
- Tworzenie tego samego użytkownika/hasło, trzeba się podzielić, w instancji 2-cie Jenkins tak, że generowane jest poprawne hasło
Co jest naprawdę ważne, to, że identyfikator użytkownika w obu credentials.xml jest taki sam. Do tego (patrz przykład poniżej) credentials.xml dla użytkownika: Jenkins
<id>c4855f57-5107-4b69-97fd-298e56a9977d</id>
identyfikator musi być taka sama w obu credentials.xml<com.cloudbees.plugins.credentials.SystemCredentialsProvider plugin="[email protected]"> <domainCredentialsMap class="hudson.util.CopyOnWriteMap$Hash"> <entry> <com.cloudbees.plugins.credentials.domains.Domain> <specifications/> </com.cloudbees.plugins.credentials.domains.Domain> <java.util.concurrent.CopyOnWriteArrayList> <com.cloudbees.plugins.credentials.impl.UsernamePasswordCredentialsImpl> <scope>GLOBAL</scope> <id>c4855f57-5107-4b69-97fd-298e56a9977d</id> <description>Para SVN</description> <username>jenkins</username> <password>J1ztA2vSXHbm60k5PjLl5jg70ZooSFKF+kRAo08UVts= </password> </com.cloudbees.plugins.credentials.impl.UsernamePasswordCredentialsImpl> </java.util.concurrent.CopyOnWriteArrayList> </entry> </domainCredentialsMap> </com.cloudbees.plugins.credentials.SystemCredentialsProvider>
Czy próbowałeś skopiować folder $ JENKINS_HOME/users i $ JENKINS_HOME/credentials.xml do innej instancji Jenkinsa?
Używam uwierzytelniania ldap dla samego serwera, ale te poświadczenia są dla git i dostępu do bazy danych. Gdzie są przechowywane? w folderze wtyczek? – sakurashinken
Jeśli tworzysz globalne dane uwierzytelniające (w sekcji administracyjnej Jenkinsa), znajdują się one w pliku credentials.xml. –
Dzięki, to była właściwa lokalizacja. – sakurashinken
Byłem też w obliczu tego samego problemu. To, co zadziałało, skopiowałem plik credentials.xml, config.xml i secrets z istniejących jenkins do nowej instancji. Po ponownym uruchomieniu jenkins wszystko działało dobrze.
Tutaj znajdziesz ładny opis: [link] (https: //support.cloudbees. com/hc/en-us/articles/115001634268-How-to-migrate-credentials-to-a-new-Jenkins-instance-) –
- 1. Jak przesłać dane z jednej czynności do drugiej?
- 2. Jak przenieść dane i ustawienia z jednej bazy do drugiej?
- 3. Przenieś dane SQL z jednej tabeli do drugiej
- 4. Dane wyjściowe z jednej instancji Vue.js do innej
- 5. Ładowanie danych z jednej tabeli Hive do drugiej z partycją
- 6. Jak eksportować dane analityczne Firebase
- 7. Jak eksportować dane z umbraco CMS?
- 8. Jak eksportować/importować dane z DataGrip?
- 9. Jak przejść z jednej gałęzi do drugiej i zamówić?
- 10. Jak skopiować bity z jednej zmiennej do drugiej?
- 11. Jak wstawić rekord z jednej bazy danych mongo do drugiej?
- 12. Jak przekazywać argumenty z jednej funkcji do drugiej?
- 13. wstawianie danych z jednej tabeli do drugiej w mysql
- 14. Jak zdobyć dane uwierzytelniające Paypal API?
- 15. Jak eksportować dane z Spark SQL do pliku CSV
- 16. Jak eksportować dane z modelu do pliku Excela na rubyonrails
- 17. przenoszenie danych z jednej tabeli do drugiej, edycja postgresql
- 18. Kopiowanie danych z jednej bazy danych do drugiej w Oracle
- 19. MYSQL, Skopiuj wybrane pola z jednej tabeli do drugiej
- 20. Kopiowanie danych blob z jednej tabeli do drugiej na MySQL
- 21. Przenoszenie tabeli z jednej bazy do drugiej w MySQL
- 22. Jak przekazywać dane uwierzytelniające użytkownika do usługi sieciowej?
- 23. Jak przekazywać dane uwierzytelniające do usługi sieciowej SOAP?
- 24. Wiele instancji na jednej stronie z Javascriptem
- 25. Uaktualnij bazę danych SQLite z jednej wersji do drugiej?
- 26. Jak sprawdzić dane uwierzytelniające domeny (z natywnego kodu)?
- 27. Przeniesienie półki TFS z jednej gałęzi do drugiej
- 28. MySQL skutecznie skopiować wszystkie rekordy z jednej tabeli do drugiej
- 29. Kopiowanie php i mysql z jednej tabeli do drugiej
- 30. Dodawanie elementów z jednej listy do drugiej C#
Gdzie Jenkins przechowuje klucz szyfrujący? Cierpiałem przez to od dłuższego czasu! :( Za każdym razem, gdy migrowałem Jenkinsa, musiałbym ponownie wprowadzić wszystkie dane uwierzytelniające! – Fadi
To powinna być zaakceptowana przyjęta odpowiedź: –