如此重要,github api告诉我我的JSON不正确。
{
"tag_name":"v1.1.32-3",
"target_commitish":"develop",
"name":"v1.1.32-3",
"body":"Checkout the latest commit for details!",
"draft":false,
"prerelease":true
}
我已经通过 JSON 验证器运行它,它说 JSON 是有效的。 我看过;如何使用带有 curl 的 GitHub API v3 创建和发布发布?
我正在使用
curl -H "Authorization: token blah"
-H "Content-Type: application/json"
-H "Accept: application/vnd.github.v3+json"
https://api.github.com/repos/$username/$projectName/releases
-d '(JSON ABOVE)'
无论我如何更改 JSON,我似乎都无法更改来自 github 的响应。我正在使用它来自动化一些发布,我已经经历了大约 60 次迭代,试图让它工作,但这个命令没有任何成功。
我创建了我在这里使用的 OAUTH 令牌:https://github.com/settings/tokens
出于愤怒,我给了OAUTH令牌,我正在使用除PGP权限之外的所有可用权限。
这是我尝试过的第一台机器的 CURL 版本:
curl 7.52.1 (x86_64-pc-linux-gnu) libcurl/7.52.1 OpenSSL/1.0.2l zlib/1.2.8 libidn2/0.16 libpsl/0.17.0 (+libidn2/0.16) libssh2/1.7.0 nghttp2/1.18.1 librtmp/2.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp scp sftp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IDN IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP HTTP2 UnixSockets HTTPS-proxy PSL
Annnndddd 第二台机器
curl 7.54.1 (x86_64-unknown-linux-gnu) libcurl/7.54.1 OpenSSL/1.1.0f zlib/1.2.11 libpsl/0.17.0 (+libicu/59.1) libssh2/1.8.0 nghttp2/1.23.1
Release-Date: 2017-06-14
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP HTTP2 UnixSockets HTTPS-proxy PSL
我的用例是使用它来自动化 Jenkins 的一些发布内容,因为我花了大约 6 个小时使用 CURL 并且无法让它工作,所以我设法安装了 https://github.com/aktau/github-release 并且它运行良好。我将继续将此标记为已解决...