目标:在Docker Build Script中下载github release tar.gz,以便发布文件可用于docker镜像。我不希望下载完整的源代码,我可以使用标记通过归档路径下载,而不是发布中的构建工件。
要注意:这是从私人存储库下载的,这就是我尝试将github_token作为当前命令的一部分发送的原因。
问题:我在使用wget下载github版本tar.gz时遇到问题。
wget --header="Authorization: token <GITHUB_TOKEN>" --output-document=<FILENAME>.tar.gz https://github.com/<USER>/<REPO>/releases/download/<TAG>/<FILENAME>.tar.gz
这会返回以下错误:
--2014-12-02 16:19:25-- https://github.com/<USER>/<REPO>/releases/download/<TAG>/<FILENAME>.tar.gz
Resolving github.com (github.com)... 192.30.252.131, 192.30.252.131
Connecting to github.com (github.com)|192.30.252.131|:443... connected.
HTTP request sent, awaiting response... 404 Not Found
2014-12-02 16:19:25 ERROR 404: Not Found.
值得注意的是,我并不反对使用curl进行下载,或者在必要时使用其他解决方案。
答案 0 :(得分:4)
您可以使用GitHub API。
要使用wget下载版本,您可以执行以下操作:
wget --header "Authorization: token <GITHUB TOKEN>" --output-document=<RELEASE>.tar.gz https://api.github.com/repos/<USER>/<REPO>/tarball/<RELEASE NAME>
使用可以将tarball
更改为zipball
以获取zip文件。