我试图通过在我的提交挂钩中使用此URL来触发我的Jenkins项目
curl http://jenkins_server/job/job_name/build?token=TOKEN
并没有被触发。但是当我在网络浏览器中输入此URL时,它会触发我的构建。
当我在命令提示符下尝试时,出现错误
错误404
状态公司 de:404
例外:
Stacktrace:(none)
由Winstone Servlet Engine v0.9生成。 10月2日星期二22:57:38 CEST 2014
有谁能告诉我我做错了什么?
答案 0 :(得分:2)
首先,正如Electrawn建议的那样,验证运行提交挂钩的服务器是否可以实际到达Jenkins DNS。对根地址进行简单的ping或curl(即http://jenkins_server
)就足够了
其次,如果您的Jenkins不允许匿名读取访问和构建触发(并且大多数安装都不会),则问题是您的curl
调用未登录。在浏览器中,尝试从Jenkins注销然后转到相同的URL。那样有用吗?可能不是。
要使用curl传递登录凭据,请在此处阅读: How can a Jenkins user authentication details be "passed" to a script which uses Jenkins API to create jobs?
更简洁的回答 here
答案 1 :(得分:0)
运行curl的服务器是否有一个主机/ DNS条目返回jenkins_server?