Update build script (#1605)

Update build script
This commit is contained in:
Sami Vänttinen 2022-04-17 08:07:16 +03:00 committed by GitHub
parent b8ab30f757
commit 20eb9e6638
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 23 additions and 19 deletions

View file

@ -1,7 +1,6 @@
'use strict';
const fs = require('fs');
const extra = require('fs-extra');
const fs = require('@npmcli/fs')
const util = require('util');
const exec = util.promisify(require('child_process').exec);
const zaf = require('zip-a-folder');
@ -13,8 +12,8 @@ const BROWSERS = {
'Chromium': 'manifest_chromium.json',
};
function adjustManifest(manifest) {
const manifestFile = fs.readFileSync(DEFAULT, 'utf8');
async function adjustManifest(manifest) {
const manifestFile = await fs.readFile(DEFAULT, { encoding: 'utf8' });
const data = JSON.parse(manifestFile);
const browser = manifest.substring(manifest.indexOf('_') + 1, manifest.indexOf('.'));
@ -30,7 +29,7 @@ function adjustManifest(manifest) {
delete data['applications'];
}
fs.writeFileSync(manifest, JSON.stringify(data, null, 4));
await fs.writeFile(manifest, JSON.stringify(data, null, 4));
return `keepassxc-browser_${data['version']}_${browser}.zip`;
}
@ -42,15 +41,20 @@ async function updateTranslations() {
(async() => {
await updateTranslations();
fs.copyFileSync(`${DEST}/manifest.json`, `./${DEFAULT}`);
await fs.copyFile(`${DEST}/manifest.json`, `./${DEFAULT}`);
for (const browser in BROWSERS) {
console.log(`KeePassXC-Browser: Creating extension package for ${browser}`);
const fileName = adjustManifest(BROWSERS[browser]);
fs.copyFileSync(BROWSERS[browser], `${DEST}/manifest.json`);
extra.removeSync(fileName);
const fileName = await adjustManifest(BROWSERS[browser]);
await fs.copyFile(BROWSERS[browser], `${DEST}/manifest.json`);
if (await fs.exists(fileName)) {
await fs.rm(fileName);
}
await zaf.zip(DEST, fileName);
extra.removeSync(BROWSERS[browser]);
await fs.rm(BROWSERS[browser], { recursive: true });
console.log('Done');
}

12
package-lock.json generated
View file

@ -1206,9 +1206,9 @@
}
},
"node_modules/async": {
"version": "2.6.3",
"resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz",
"integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==",
"version": "2.6.4",
"resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz",
"integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==",
"dependencies": {
"lodash": "^4.17.14"
}
@ -5147,9 +5147,9 @@
}
},
"async": {
"version": "2.6.3",
"resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz",
"integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==",
"version": "2.6.4",
"resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz",
"integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==",
"requires": {
"lodash": "^4.17.14"
}

View file

@ -10,9 +10,9 @@
"eslint-plugin-import": "^2.24.2"
},
"dependencies": {
"file-url": "^3.0.0",
"fs-extra": "^8.1.0",
"zip-a-folder": "0.0.12"
"@npmcli/fs": "^2.1.0",
"file-url": "^4.0.0",
"zip-a-folder": "^1.1.3"
},
"scripts": {
"build": "node build.js",