Giter VIP home page Giter VIP logo

gitreleases's Introduction

Git Releases

Git Releases allows you to directly link to the assets of your latest release on GitHub.

Deprecation notice

gitreleases.dev will be shut down soon. Use GitHub direct links instead.

Contributions

For any significant change, please open an issue first to discuss it.

Other than that, anyone is more than welcome to contribute.

Instructions

This project requires go 1.11.

Run locally:

# retrieve a personal access token from GitHub on http://github.com/settings/tokens
$ METRICS_USERNAME=gitreleases METRICS_PASSWORD=gitreleases LISTEN_ADDR=":8080" GITHUB_TOKEN="$GITHUB_TOKEN" go run main.go github.go api.go metrics.go cache.go

Please use goimports for formatting the code.

To update anything on the landingpage:

$ make install
$ make public/style.min.css
# that's a bit convoluted to use, but anyway
$ cp public/style.min.css landingpage/style.min.css

# Then open `landingpage/index.html` and start editing

Building

$ make install
$ make

Deployment

Deployment is done using kubernetes. k8s files are in the k8s folder.

# build, pack, deploy
$ make ship

GitHub API

GitHub API Explorer: https://developer.github.com/v4/explorer/

GET /gh/{owner}/{repo}/{tag}/{assetName}

{
  repository(owner: $owner, name: $repo) {
    release(tagName: $tag) {
      releaseAssets(name: $assetName, first:1) {
        nodes {
          downloadUrl
        }
      }
    }
  }
}

GET /gh/{owner}/{repo}/latest/{assetName}

{
  repository(owner: $owner, name: $repo) {
    releases(last: 1) {
      nodes {
        releaseAssets(name: $assetName, first:1) {
          nodes {
            downloadUrl
          }
        }
      }
    }
  }
}

gitreleases's People

Contributors

mweibel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

gitreleases's Issues

Add badge (similar to `build: passing` badge)

I guess that would be nice to have such a badge for release asset links. Could link to the gitreleases latest link and display e.g. the asset name and maybe number of downloads (something like that is exposed over the API, not sure how accurate it is).

Support version placeholder in asset name

e.g. gitreleases.dev/gh/rokka-io/rokka-go/latest/rokka_linux_{version}.zip would be automatically resolved to gitreleases.dev/gh/rokka-io/rokka-go/latest/rokka_linux_3.0.0.zip because 3.0.0 is the latest release.

I'll need to think about how the placeholder should be named actually, because it probably makes sense to use url safe characters only.

can't work for this service

always 0 size.

[root@ip-172-31-9-177 k8e]# curl https://gitreleases.dev/gh/xiaods/k8e/latest/k8e -o k8e
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:--  0:00:02 --:--:--     0

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.