使用cURL和GitHub身份验证从Jenkins下载工件

时间:2016-06-28 10:07:31

标签: bash curl jenkins jenkins-api

我正在尝试通过Bash脚本中的curl从Jenkins下载构建工件。但是,我使用GitHub进行身份验证,甚至使用属于管理员用户的API密钥,我只收到403个错误,无法成功下载。

我的curl命令如下:

curl -u me:myapitoken -k 'https://jenkins.example.com/job/my-project/lastSuccessfulBuild/artifact/output/artifact_name'`

标题输出表明Jenkins认为我以管理员身份登录,但是,我收到403错误,无法下载工件。

< HTTP/1.1 403 Forbidden
< Date: Tue, 28 Jun 2016 10:03:55 GMT
< Server: Jetty(winstone-2.9)
< X-Content-Type-Options: nosniff
< X-You-Are-Authenticated-As: <me>
< X-You-Are-In-Group: authenticated
< X-Required-Permission: hudson.model.Hudson.Read
< X-Permission-Implied-By: hudson.security.Permission.GenericRead
< X-Permission-Implied-By: hudson.model.Hudson.Administer
< Cache-Control: no-cache,no-store,must-revalidate
< X-Hudson-Theme: default
< Content-Type: text/html;charset=UTF-8
< Expires: Thu, 01 Jan 1970 00:00:00 GMT
< X-Hudson: 1.395
< X-Jenkins: 1.656
< X-Jenkins-Session: fbdxxxxx
< X-Hudson-CLI-Port: 51518
< X-Jenkins-CLI-Port: 51518
< X-Jenkins-CLI2-Port: 51518
< X-Frame-Options: sameorigin
< X-Instance-Identity: MIIBIjANBgkqhkiG9w0B<...>XwIDAQAB
< X-SSH-Endpoint: jenkins.example.com:53605
< Content-Length: 5166
< Set-Cookie: JSESSIONID.xxxxxxx=b2rxxxxxxxxxx5btw3e;Path=/;Secure;HttpOnly

登录GitHub和Jenkins时链接在浏览器中正常工作。

当使用GitHub作为主要身份验证提供程序时,是否有人知道通过curl进行身份验证?

1 个答案:

答案 0 :(得分:0)

显然这是由于GitHub身份验证插件中的一个错误。安装最新更新已修复该问题,并允许我使用API​​密钥进行身份验证。