@mmomtchev/node-pre-gyp-github

2.0.6 • Public • Published

node-pre-gyp-github

A node-pre-gyp module which provides the ability to publish to GitHub releases.

License: MIT npm version Node.js CI codecov

This package is an almost complete rewrite using a modern API of node-pre-gyp-github by @bchr02 which is not maintained anymore and does not work with the recent changes in the Github API.

It aims to be compatible with the original package.

Usage

Instead of node-pre-gyp publish use node-pre-gyp-github publish

Options for publish command

  • --silent : Turns verbose messages off.

  • --release : Publish the GitHub Release immediately instead of creating a Draft.

    For Ex. node-pre-gyp-github publish --release

Install

npm install -g node-pre-gyp-github

Configuration

This module is intended to be used with node-pre-gyp. Therefore, be sure to configure and install node-pre-gyp first. After having done that, within package.json update the binary properties host and remote_path so it matches the following format:

  "host": "https://github.com/[owner]/[repo]/releases/download/",
  "remote_path": "{version}"

Be sure to replace [owner], [repo], with actual values, but DO NOT replace {version} with actual version.

WARNING: Variable substitutions are not supported on the host property and on the remote_path only {version} placeholder is supported. The value of remote_path after substitution will become a release tag name. Do not use forbidden git tag characters for version and remote_path properties.

Within GitHub, create a new authorization:

  1. go to Settings
  2. click Personal access tokens
  3. click Generate new token
  4. Select "public_repo" and "repo_deployment"
  5. Generate Token
  6. copy the key that's generated and set NODE_PRE_GYP_GITHUB_TOKEN environment variable to it. Within your command prompt:
SET NODE_PRE_GYP_GITHUB_TOKEN=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Examples

Publish to GitHub as a Draft Release

node-pre-gyp configure
node-pre-gyp build
node-pre-gyp package
node-pre-gyp-github publish

Publish to GitHub as a Release

node-pre-gyp configure
node-pre-gyp build
node-pre-gyp package
node-pre-gyp-github publish --release

License

Copyright © 2015–2016 Bill Christo & Contributors

Copyright © 2021 Momtchil Momtchev, @mmomtchev & Contributors

Licensed under the MIT License

Package Sidebar

Install

npm i @mmomtchev/node-pre-gyp-github

Weekly Downloads

1,929

Version

2.0.6

License

MIT

Unpacked Size

30.4 kB

Total Files

11

Last publish

Collaborators

  • mmomtchev