Próbuję użyć interfejsu API Jenkins Rest. W instrukcjach jest napisane, że muszę mieć klucz interfejsu API. Przeszukałem wszystkie strony konfiguracyjne, aby go znaleźć. Jak uzyskać klucz API dla Jenkins?
FYI. W Jenkins 2.150.1 przycisk „Dodaj nowy token” nie pojawia się, dopóki nie istnieje co najmniej jeden token. Sprawdź odpowiedź @ RaGe, aby dowiedzieć się, jak to zrobić bez interfejsu użytkownika.
m__
17
Sposób wykonania tego postu Jenkins 2.129 bez interfejsu użytkownika to:
Po kilku godzinach poszukiwań mogłem znaleźć odpowiedź:
Zamiast tokena CSFR używany jest token API. Jednak co się stanie, jeśli chcesz dokonać uwierzytelnienia z dowolnego innego klienta (POSTMAN, CLI, curl, itp.).
Najpierw musisz zdobyć token CSFR i zapisać informacje w pliku cookie z rozszerzeniem --cookie-jar
ŻĄDANIE
curl -s --cookie-jar / tmp / cookies -u nazwa użytkownika: hasło http: // localhost: 8080 / crumbIssuer / api / json
Odpowiedzi:
Od wersji Jenkins 2.129 konfiguracja tokena API uległa zmianie :
Możesz teraz mieć wiele tokenów i nadawać im nazwy. Można je odwołać indywidualnie.
Przed Jenkins 2.129: Pokaż token API w następujący sposób:
Ujawniono token API.
Możesz zmienić token, klikając przycisk Zmień token API .
źródło
Show API Token
wydaje się, że już nie obowiązuje.Sposób wykonania tego postu Jenkins 2.129 bez interfejsu użytkownika to:
która zwraca:
Pre Jenkins 2.129.1
źródło
Przetestowano w Jenkins 2.225
Po kilku godzinach poszukiwań mogłem znaleźć odpowiedź:
Zamiast tokena CSFR używany jest token API. Jednak co się stanie, jeśli chcesz dokonać uwierzytelnienia z dowolnego innego klienta (POSTMAN, CLI, curl, itp.).
Najpierw musisz zdobyć token CSFR i zapisać informacje w pliku cookie z rozszerzeniem
--cookie-jar
Następnie możemy odczytać plik cookie
--cookie
i wygenerować nowy token:źródło