Download Github build artifact (release) using wget/curl

The Goal: Download github release tar.gz in Docker Build Script, so that the release files can be used for the docker image. I do not want the full source downloaded, which I can get to download through the archive path using the tag, but rather a build artifact that is part of the release.

To Be Noted: This is a download from a private repository, which is why I’m attempting to send my github_token as part of the command currently.

  • Empty response from server running inside Docker container
  • Should I use AWS Elastic Beanstalk or the Amazon EC2 Container Service (ECS) to scale Docker containers?
  • Volume mapping for jenkins in docker which has access to host docker
  • Docker worklfow of testing images
  • Symfony2 app always has a 3 second wait between kernel.request and kernel.controller
  • How to use stdin, stdout and stderr streams after attaching to a container using Docker api?
  • The Problem: I’m having trouble downloading a github release tar.gz using wget.

    wget --header="Authorization: token <GITHUB_TOKEN>" --output-document=<FILENAME>.tar.gz https://github.com/<USER>/<REPO>/releases/download/<TAG>/<FILENAME>.tar.gz
    

    This is returning the following error:

    --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.
    

    It’s worth noting that I’m not opposed to using curl for the download either or some other solution if necessary.

  • boot2docker vm forgets changes when restarted
  • Supervisord running flask app calling docker app
  • How to saving a Docker container State?
  • Best practice: Python development environment with docker for mac
  • Docker performances for getting information: polling vs events
  • Why do Docker overlay networks require consensus?
  • One Solution collect form web for “Download Github build artifact (release) using wget/curl”

    You can use the GitHub API.

    To download a release using wget, you can do:

    wget --header "Authorization: token <GITHUB TOKEN>"  --output-document=<RELEASE>.tar.gz https://api.github.com/repos/<USER>/<REPO>/tarball/<RELEASE NAME>
    

    Use can change tarball to zipball to get a zip file.

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.