All Projects → prebuild → prebuild-ci

prebuild / prebuild-ci

Licence: other
Use CI to auto upload prebuilds

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to prebuild-ci

Env Ci
Get environment variables exposed by CI services
Stars: ✭ 180 (+958.82%)
Mutual labels:  ci, appveyor, travis
egg-ci
Auto gen ci config file
Stars: ✭ 15 (-11.76%)
Mutual labels:  ci, appveyor, travis
Ci Detector
Detect continuous integration environment and get information of current build
Stars: ✭ 138 (+711.76%)
Mutual labels:  ci, appveyor, travis
Cistern
A terminal UI for Unix to monitor Continuous Integration pipelines from the command line. Current integrations include GitLab, Azure DevOps, Travis CI, AppVeyor and CircleCI.
Stars: ✭ 161 (+847.06%)
Mutual labels:  ci, appveyor, travis
github-status-updater
Command line utility for updating GitHub commit statuses and enabling required status checks for pull requests
Stars: ✭ 83 (+388.24%)
Mutual labels:  ci, travis
ci playground
Playground for Cloud CI development for C++
Stars: ✭ 23 (+35.29%)
Mutual labels:  ci, appveyor
CI-Utils
Utilities for running Common Lisp on CI platforms
Stars: ✭ 18 (+5.88%)
Mutual labels:  ci, appveyor
Danger
🚫 Stop saying "you forgot to …" in code review (in Ruby)
Stars: ✭ 4,691 (+27494.12%)
Mutual labels:  ci, travis
Cargo Make
Rust task runner and build tool.
Stars: ✭ 895 (+5164.71%)
Mutual labels:  appveyor, travis
Travis Watch
Stream live travis test results of the current commit to your terminal!
Stars: ✭ 294 (+1629.41%)
Mutual labels:  ci, travis
Cibuildwheel
🎡 Build Python wheels for all the platforms on CI with minimal configuration.
Stars: ✭ 620 (+3547.06%)
Mutual labels:  ci, appveyor
Lint Diff
💅 Run eslint only in the changed parts of the code
Stars: ✭ 92 (+441.18%)
Mutual labels:  ci, travis
Trytravis
Send local git changes to Travis CI without commits or pushes.
Stars: ✭ 131 (+670.59%)
Mutual labels:  ci, travis
learning-lighthouse-ci
Learning Google's Lighthouse CI from scratch with a minimal template web app (quickstart)
Stars: ✭ 46 (+170.59%)
Mutual labels:  ci, travis
ionic-travis
Ionic app demo built with Travis CI
Stars: ✭ 15 (-11.76%)
Mutual labels:  ci, travis
Tox
Command line driven CI frontend and development task automation tool.
Stars: ✭ 2,523 (+14741.18%)
Mutual labels:  appveyor, travis
Danger Js
⚠️ Stop saying "you forgot to …" in code review
Stars: ✭ 4,076 (+23876.47%)
Mutual labels:  ci, travis
mini-qml
Minimal Qt deployment for Linux, Windows, macOS and WebAssembly.
Stars: ✭ 44 (+158.82%)
Mutual labels:  appveyor, travis
Taoquick
a cool QtQuick/qml component library and demo(一套酷炫的QtQuick/Qml基础库和示例)
Stars: ✭ 481 (+2729.41%)
Mutual labels:  appveyor, travis
Automatic Release
Automates the release process for GitHub projects.
Stars: ✭ 46 (+170.59%)
Mutual labels:  ci, travis

prebuild-ci

Use CI like GitHub Actions, Travis and AppVeyor to auto upload prebuilds. Requires you to use prebuild@6 or later.

npm Node version Test Standard

Motivation

It's great to provide prebuilds with your native node modules, so consumers don't have to compile them on install - a pre made binary will simply be fetched. It can however be cumbersome to create those binaries yourself, you need to run the appropriate scripts on every OS you desire to ship. This module provides an alternative by creating and uploading those binaries in the CI environments you use, so for example using travis and appveyor you can cover all node versions on mac OS, linux and windows, automatically!

Usage

Add prebuild-ci to your "test" script or CI configuration, like this:

  "scripts": {
    "test": "mocha && prebuild-ci"  
  }

Also configure your CI environments to set the environment variable PREBUILD_TOKEN to your prebuild upload token, and make sure this variable is only set on pull requests from the same repository.

Then, whenever a CI job passes and updates "version" in the module's package.json, the prebuild for the current environment will be uploaded to GitHub.

That means that in order to have prebuilds for all desired os / node combinations, make sure to run each of those in a CI job.

Pro Tip: In order for prebuilds to be available as soon as a new version is published to npm, wait with the actual npm publish until all the CI jobs have completed.

Installation

$ npm install --save prebuild-ci

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].