Аутентификация в jenkins с модулем python3 запросов - PullRequest
0 голосов
/ 14 февраля 2020

У меня следующая проблема:

Я получаю статус и некоторую другую информацию с сервера jenkins прямо сейчас, и все работает нормально, и я получаю информацию. Теперь я хотел обменяться тем, как получить его в lib запросов, и теперь я больше не могу получить аутентификацию. Я сейчас использую следующее для части запроса:

data ={"Username":"foo_user","Password":"bar_pass"}        
response = session.post("jenkins_url_to_trigger",data=data )

Также я попытался установить параметр auth с помощью http basi c auth.

Если кто-то смог получить доступ к jenkins сервер через lib запросов, было бы неплохо увидеть пример того, как это сделать, так как я сейчас застрял на нем.

Также для работающей части curl, я использую следующий простой синтаксис :

curl -u foo_user:bar_pass -X GET -H "Content-Type: application/json" jenkins_url/something/to/get/api/json --insecure

Также я искал похожие вопросы и не нашел ничего, что мне помогло.

Ответы [ 2 ]

0 голосов
/ 14 февраля 2020

Укажите учетные данные в кортеже как auth вместо словаря как data.

credentials = ('foo_user', 'bar_pass')       
response = session.post('<jenkins_url_to_trigger>', auth=credentials)

См. Аутентификация .

0 голосов
/ 14 февраля 2020

Вы можете установить аутентификацию в объекте requests.Session

import requests

session = requests.Session()
session.auth = ('myuser', 'mypass')

resp = session.post('jenkins_url_to_trigger')

Session ссылка на объект: https://requests.readthedocs.io/en/latest/user/advanced/#session -объекты

...