Skip to content

Commit

Permalink
add install script to avoid rebuild on install (#869)
Browse files Browse the repository at this point in the history
* add install script to avoid rebuild on install

* update prebuilds script to skip missing platforms
  • Loading branch information
rochdev committed Feb 21, 2020
1 parent 15d182b commit 05ebe79
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 9 deletions.
1 change: 1 addition & 0 deletions package.json
Expand Up @@ -6,6 +6,7 @@
"browser": "browser.js",
"typings": "index.d.ts",
"scripts": {
"install": "node-gyp-build",
"rebuild": "node-gyp rebuild",
"prebuild": "node scripts/prebuild.js",
"prebuilds": "node scripts/prebuilds.js",
Expand Down
22 changes: 13 additions & 9 deletions scripts/prebuilds.js
Expand Up @@ -43,16 +43,20 @@ function extractPrebuilds () {

function validatePrebuilds () {
platforms.forEach(platform => {
fs.readdirSync(path.join(os.tmpdir(), 'prebuilds', platform))
.filter(file => /^node-\d+\.node$/.test(file))
.forEach(file => {
const content = fs.readFileSync(path.join('prebuilds', platform, file))
const sum = fs.readFileSync(path.join('prebuilds', platform, `${file}.sha1`), 'ascii')
try {
fs.readdirSync(path.join(os.tmpdir(), 'prebuilds', platform))
.filter(file => /^node-\d+\.node$/.test(file))
.forEach(file => {
const content = fs.readFileSync(path.join('prebuilds', platform, file))
const sum = fs.readFileSync(path.join('prebuilds', platform, `${file}.sha1`), 'ascii')

if (sum !== checksum(content)) {
throw new Error(`Invalid checksum for "prebuilds/${platform}/${file}".`)
}
})
if (sum !== checksum(content)) {
throw new Error(`Invalid checksum for "prebuilds/${platform}/${file}".`)
}
})
} catch (e) {
// skip missing platforms
}
})
}

Expand Down

0 comments on commit 05ebe79

Please sign in to comment.