【问题标题】:Download Github build artifact (release) using wget/curl使用 wget/curl 下载 Github 构建工件(发布)
【发布时间】:2015-01-30 23:43:19
【问题描述】:

目标: 在 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 进行下载或其他解决方案。

【问题讨论】:

标签: curl github docker wget travis-ci


【解决方案1】:

您可以使用 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 文件。

【讨论】:

    【解决方案2】:

    release.tar.gz部分是所有者设置的,所以不是通用的。

    $ wget https://github.com/XhmikosR/notepad2-mod/releases/download/4.2.25.935/Notepad2-mod.4.2.25.935.exe --2014-12-02 11:16:42-- https://github.com/XhmikosR/notepad2-mod/releases/download/4.2.25.935/Notepad2-mod.4.2.25.935.exe 解决github.com(github.com)... 192.30.252.130 连接到 github.com (github.com)|192.30.252.130|:443... 已连接。 已发送 HTTP 请求,等待响应... 302 找到

    【讨论】:

    • 对不起,我以为我在上面提到过这是一个私人存储库(我的错>.
    猜你喜欢
    • 2015-10-04
    • 2018-08-06
    • 1970-01-01
    • 2017-04-21
    • 1970-01-01
    • 2011-05-04
    • 1970-01-01
    • 1970-01-01
    • 2021-12-28
    相关资源
    最近更新 更多