Awesome
node-pre-gyp-github
A node-pre-gyp module which provides the ability to publish to GitHub releases.
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
# or
yarn global add 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:
- go to
Settings
->Developer settings
- click
Personal access tokens
- click
Generate new token
- Select
public_repo
andrepo_deployment
- Generate Token
- 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
Example (Publish to GitHub as a Draft Release)
- node-pre-gyp configure
- node-pre-gyp build
- node-pre-gyp package
- node-pre-gyp-github publish
Example (Publish to GitHub as a Release)
- node-pre-gyp configure
- node-pre-gyp build
- node-pre-gyp package
- node-pre-gyp-github publish --release