Easily setup prebuilding of native modules using CI and prebuildify
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore
LICENSE
README.md
index.js
package.json

README.md

prebuildify-ci

Easily setup prebuilding of native modules using CI and prebuildify

npm install -g prebuildify-ci

Usage

First create a native module and add a prebuild script to your npm scripts that prebuilds the module using prebuildify.

An example of this can be found in the turbo-net package

Then setup a travis and appveyor file using prebuildify-ci

prebuildify-ci init

The above script will prompt for an encrypted travis and appveyor github token.

You can use the travis command line tool to encrypt one for travis using the travis encrypt command, and for appveyor you can use the following web interface, https://ci.appveyor.com/tools/encrypt

The Github token needs access to upload to the Github releases of the project.

The ci config will prebuild on every time a new tag is pushed.

# tag your release
npm version minor

Then git push it (you might need a git push --tags depending on your config) without npm publishing it.

Wait for CI to finish. Once all the builds are done run

prebuildify-ci download

This will download all the prebuilds into ./prebuilds where node-gyp-build will expect them to be stored.

That's it! Now you are ready to publish your tarball with the prebuilds included.

npm publish

License

MIT