You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
iotcat 74338fbb93 auto update 5 years ago
..
images auto update 5 years ago
.travis.yml auto update 5 years ago
README.md auto update 5 years ago
ghreleases.js auto update 5 years ago
package.json auto update 5 years ago
test.js auto update 5 years ago

README.md

ghreleases

A node library to interact with the GitHub releases API.

Build Status js-standard-style Greenkeeper badge

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', function (err, list) {
  console.log(list)
})

GitHub docs.

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

Get latest release.

gh.getLatest(auth, 'level', 'leveldown', function (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', function (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', function (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, function (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, function (err, res) {
  console.log(res)
})

GitHub docs

Community

For interacting with other parts of the GitHub API, also see the following repositories/modules:

License

MIT