Ghreleases Save

Interact with the GitHub releases API.

Project README

ghreleases

Interact with the GitHub releases API.

npm node travis david standard npm

API

list(auth, org, repo[, options], cb)

List all releases for a repo. Calls back with an array of releases.

const gh = require('ghreleases')
const auth = {
  token: '90230948aef88723eca2309880fea09789234',
  user: 'ralphtheninja'
}
gh.list(auth, 'level', 'leveldown', (err, list) => {
  console.log(list)
})

GitHub docs.

getLatest(auth, org, repo[, options], cb)

Get latest release.

gh.getLatest(auth, 'level', 'leveldown', (err, release) => {
  console.log(release)
})

GitHub docs.

getById(auth, org, repo, id[, options], cb)

Get data for a single release.

gh.getById(auth, 'level', 'leveldown', '1363866', (err, release) => {
  console.log(release)
})

GitHub docs.

getByTag(auth, org, repo, tag[, options], cb)

Get release by tag.

gh.getByTag(auth, 'level', 'leveldown', 'v1.2.2', (err, release) => {
  console.log(release)
})

GitHub docs.

create(auth, org, repo, data[, options], cb)

Create a release.

const data = {
  tag_name: '1.2.3-test',
  name: 'Release name for 1.2.3-test',
  body: 'Body text of release goes here'
}
gh.create(auth, 'level', 'leveldown', data, (err, release) => {
  console.log(release)
})

The release on GitHub would then look as follows:

1.2.3-test release

GitHub docs

uploadAssets(auth, org, repo, release, files[, options], cb)

Upload assets to a release. Calls back with an array of results for each upload request.

  • The release parameter accepts either a release id, 'latest' or a valid ref, e.g. 'tags/v1.0.0'
  • The files parameter is an array of absolute file paths that should be uploaded and associated with this release
const ref = 'tags/v1.3.0'
const files = [
  '/path/to/README.md',
  '/path/to/prebuilt/binary.tar.gz'
]
gh.uploadAssets(auth, 'level', 'leveldown', ref, files, (err, res) => {
  console.log(res)
})

GitHub docs

Also See

For interacting with other parts of the GitHub API, check out the modules below.

License

MIT

Open Source Agenda is not affiliated with "Ghreleases" Project. README Source: ralphtheninja/ghreleases
Stars
26
Open Issues
5
Last Commit
4 years ago
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating