Next generation Node.js build
Due to various issues with the
--build-v8-with-gn build, we are going to transition to a purely GN-based solution. This will become the default workflow.
Follow the instructions at the node-ci repository to check out source.
Test changes to V8 #
V8 is set up as a DEPS dependency of node-ci. You may want to apply changes to V8 for testing or to reproduce failures. To do so, add your main V8 checkout as remote:
git remote add v8 <your-v8-dir>/.git
git fetch v8
git checkout v8/<your-branch>
Remember to run gclient hooks before compiling.
JOBS=4 make test
Make changes to Node.js #
Node.js is also set up as a
DEPS dependency of node-ci. You may want to apply changes to Node.js to fix breakages that V8 changes may cause. V8 tests against a fork of Node.js. You need a GitHub account to make changes to that fork.
Get the Node sources #
Fork V8’s Node.js repository on GitHub (click the fork button) unless you already did previously.
Add your both your fork and V8’s fork as remotes to the existing checkout:
git remote add v8 http://github.com/v8/node
git remote add <your-user-name> http://github.com//<your-user-name>/node
git checkout -b make-changes
Make your changes to the Node.js checkout, and commit them. Then push the changes to GitHub and create a pull request.
git push <your-user-name> make-changes
Once the pull request has been merged to V8’s fork of Node.js, you need to update node-ci’s
DEPS file, and create a CL.
git checkout -b update-deps
gclient setdep --var=node_revision=`(cd node && git rev-parse make-changes)`
git add DEPS
git commit -m 'Update Node'
git cl upload