我jenkins-jobs update
第一次尝试在我的系统上运行,但它在身份验证时失败。
命令:
jenkins-jobs --conf ./jjb.ini update jobs/
其中jobs
包含一个test.yml
- 一个仅用于测试的微型构建项目。jjb.ini
是:
[jenkins]
user=admin
password={{ admin_api_token }} # Inserted API token here.
url=http://127.0.0.1:8080
query_plugins_info=False
预期结果:
成功,并将示例构建项目导入 Jenkins。
实际结果:
INFO:jenkins_jobs.cli.subcommand.update:Updating jobs in ['jobs/'] ([])
INFO:jenkins_jobs.builder:Number of jobs generated: 1
INFO:requests.packages.urllib3.connectionpool:Starting new HTTP connection (1): 127.0.0.1
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/jenkins/__init__.py", line 557, in jenkins_request
self._request(req))
File "/usr/local/lib/python3.5/dist-packages/jenkins/__init__.py", line 508, in _response_handler
response.raise_for_status()
File "/usr/lib/python3/dist-packages/requests/models.py", line 840, in raise_for_status
raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 401 Client Error: Invalid password/token for user: b'admin' for url: http://127.0.0.1:8080/crumbIssuer/api/json
在这里引起我注意的是身份验证失败b'admin
,而不是admin
. 这也反映在 Jenkins Web 界面上的“人员”页面中,在尝试登录之前仅显示admin
,但在尝试登录之后显示:
据我所知,JJB 的登录请求中的编码可能存在问题,但我正在寻求有关如何尝试解决此问题的帮助。
当前设置:
Ubuntu 16.04.4 LTS
Jenkins 2.125 (working as expected, at :8080)
jenkins-job-builder 2.0.9
Python 3.5.2
pip 10.0.1 from /usr/local/lib/python3.5/dist-packages/pip-10.0.1-py3.5.egg/pip (python 3.5)
java -version: openjdk version "1.8.0_171"