Jenkins:获取配置时出现HTTP错误403

时间:2012-09-17 15:37:38

标签: python jenkins

我尝试以编程方式更新Jenkins jobs的配置,python Jenkins api看起来没问题,但由于HTTP错误403(禁止),我无法检索配置:

from jenkinsapi import api
j = api.Jenkins('https://server.test.com/hudson', 'fp12210', 'xxxxxxxx')
job = j.get_job('BBB-100-CheckStatusAll')
conf = job.get_config()

Traceback (most recent call last):
  ...
  File "C:\Python27\lib\urllib2.py", line 521, in http_error_default
    raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
HTTPError: HTTP Error 403: Forbidden

在网址as mentionned in another SO post中添加用户和密码也会失败:

 j = api.Jenkins('https://fp12210:xxxxxxxx@server.test.com/hudson')

Traceback (most recent call last):
  ...
  File "build\bdist.win32\egg\jenkinsapi\utils\retry.py", line 39, in retry_function
    raise e
InvalidURL: nonnumeric port: 'xxxxxxxx@server.test.com/hudson'

你有什么想法吗?

2 个答案:

答案 0 :(得分:0)

SO post是解决方案。我现在得到一个错误500,但这是另一个故事...

答案 1 :(得分:0)

python jenkins api使用urllib2

您可以看到此答案:https://stackoverflow.com/a/24048578/1733117用于使用抢占式基本身份验证,或者在获得403时重试基本身份验证(例如,匿名用户访问受限)。