File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ name : Update canary branch
2+
3+ on :
4+ schedule :
5+ - cron : ' 0 6 * * *'
6+ workflow_dispatch :
7+
8+ jobs :
9+ updateCanary :
10+ name : Update the canary branch
11+ if : github.repository == 'nodejs/node-v8' || github.event_name == 'workflow_dispatch'
12+ runs-on : ubuntu-latest
13+ steps :
14+ - name : Clone node-v8
15+ uses : actions/checkout@v2
16+ with :
17+ path : node-v8
18+ token : ${{ secrets.CANARY_UPDATE }}
19+
20+ - name : Install Node.js
21+ uses : actions/setup-node@v2
22+ with :
23+ node-version : 14.x
24+
25+ - name : Install dependencies
26+ run : npm install -g node-core-utils@latest
27+
28+ - name : Cache V8 clone
29+ uses : actions/cache@v2
30+ with :
31+ path : v8
32+ key : v8-clone
33+
34+ - name : Execute the update script
35+ run : ./node-v8/tools/update-canary.sh
36+
37+ - name : Notify Slack on failure
38+ if : ${{ failure() }}
39+ run : |
40+ ACTIONS_URL="${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID}?check_suite_focus=true"
41+ SLACK_PAYLOAD="{\"username\": \"canary_bot\", \"text\": \"*Canary update failed!*\n\nRun: ${ACTIONS_URL}\", \"icon_emoji\": \":bell:\"}"
42+ curl -X POST --data-urlencode "payload=${SLACK_PAYLOAD}" ${{ secrets.SLACK_WEBHOOK }}
Original file line number Diff line number Diff line change 1+ # Node.js V8 canary
2+
3+ This is an automatically updated ** experimental** version of [ Node.js] [ ] with
4+ the ` lkgr ` (last known good revision) of V8.
5+
6+ The daily builds of this repo can be found at [ ` v8-canary ` ] [ ] .
7+
8+ ** Do not use this in production!**
9+
10+ This repository is not owned by ` @nodejs/v8 ` , but they might be able to help
11+ with issues.
12+
13+ This project is bound by a [ Code of Conduct] [ ] .
14+
15+ [ Code of Conduct ] : https://github.com/nodejs/admin/blob/HEAD/CODE_OF_CONDUCT.md
16+ [ Node.js ] : https://github.com/nodejs/node
17+ [ `v8-canary` ] : https://nodejs.org/download/v8-canary/
Original file line number Diff line number Diff line change 1+ #! /usr/bin/env bash
2+
3+ set -ex
4+
5+ cd node-v8
6+
7+ git remote add upstream https://github.com/nodejs/node.git
8+ git fetch upstream master
9+ git fetch upstream canary-base
10+
11+ git config user.name " Node.js GitHub Bot"
12+ git config user.email github-bot@iojs.org
13+
14+ git reset --hard upstream/master
15+
16+ # Update V8 to the lkgr branch
17+ git-node v8 major --branch=lkgr --base-dir=" $GITHUB_WORKSPACE "
18+
19+ # Cherry-pick the floating V8 patches Node.js maintains on master.
20+ # Canary-base is the last good version of canary, and is manually updated with any V8 patches or backports.
21+ git cherry-pick ` git log upstream/canary-base -1 --format=format:%H --grep " src: update NODE_MODULE_VERSION" ` ...upstream/canary-base
22+
23+ # Verify that Node.js can be compiled and executed
24+ python3 ./configure
25+ make -j $( getconf _NPROCESSORS_ONLN) V=
26+ out/Release/node test/parallel/test-process-versions.js
27+
28+ # Force-push to the canary branch.
29+ git push --force origin HEAD:canary
You can’t perform that action at this time.
0 commit comments