Jump to content

Idea: Downloads that use GitHub Releases API


MadMaxMangos

Recommended Posts

 

I run a website that is an educational based project for the public, they can suggest fixes and make pull requests via GitHub. What I would like to see if an implementation of the GitHub releases API in the downloads section.

The entire GitHub REST API system is documented and explains exactly what information can be received from it - https://developer.github.com/v3/repos/releases/

Downloads via IPS would work like this:

  1. You click submit file and select an option "Add files by URL"
  2. IPS detects that the url contains github.com/org/repo
  3. It asks if you wish to use the Releases API
  4. You select yes
  5. IPS uses the GitHub Releases API "assets" to detect the latest release
  6. IPS has the latest release path and detects the assets for this Release and asks which you wish to link to
    This is like this: "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip",
    This is put into the "Linked Files" box in IPS.
  7. IPS then grabs things like: "created_at", "updated_at"
    It sets the file dates based on this.
  8. Before submitting the download page asks if you want to have IPS monitor and update the assets as new ones become released.

Using the above system there would also be a task to run in IPS, this checks for updated assets and updates the "Linked Files" if new ones are released.. It updates the "Updated" date on the files download page within IPS, this then triggers a follow notification for everyone following that download.

Using the GitHub Releases API system above means that releases made on GitHub can be automatically updated on the download page, if done correctly the user never has to leave the website and can receive notifications for new releases.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...