Чтобы иметь возможность делать вызовы API для Jenkins, вам нужно сгенерировать токен для данного пользователя в Jenkins. Например, давайте сделаем это с пользователем Foo
. Вам нужно будет войти в систему с помощью пользователя Foo, а затем в веб-интерфейсе пользователя: Foo (right upper corner) > Configure > API token > Add new token
.
Когда ваш токен где-то сохранен, вы можете получить крошку с помощью этой команды:
curl --user Foo:<token> 'https://www.mysuperduperjenkins.com/crumbIssuer/api/xml?xpath=concat(//crumbRequestField,":",//crumb)'
То, что он делает в основном, - это получение XML от Дженкинса, содержащего хлебную крошку, и получение элемента c, где находится хлебная крошка. Результат команды должен быть примерно таким: *curl -u 'Foo:<token>' -X POST --data '<parameters>' -H '$breadcrumb' www.mysuperduperjenkins.com
В этом локоне мы используем крошку в качестве заголовка, полученного на предыдущем шаге. Если крошка верна, вы сможете выполнить запрос без ошибок 403/401.