mirror of
https://github.com/arduino/arduino-ide.git
synced 2025-07-08 11:56:36 +00:00
Fixed various electron packager issues
- We have to reuse the `yarn.lock` file for the final app, not just for the extensions. - Simplified the clean-up phase. Signed-off-by: Akos Kitta <kittaakos@typefox.io>
This commit is contained in:
parent
65a58ce2be
commit
cc6a0ae212
5
.vscode/launch.json
vendored
5
.vscode/launch.json
vendored
@ -7,8 +7,9 @@
|
|||||||
{
|
{
|
||||||
"type": "node",
|
"type": "node",
|
||||||
"request": "launch",
|
"request": "launch",
|
||||||
"name": "Launch Node.js Program",
|
"name": "Launch Electron Packager",
|
||||||
"program": "${file}"
|
"program": "${workspaceRoot}/electron/packager/index.js",
|
||||||
|
"cwd": "${workspaceFolder}/electron/packager"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "node",
|
"type": "node",
|
||||||
|
@ -33,10 +33,8 @@
|
|||||||
//---------------------------+
|
//---------------------------+
|
||||||
// rm -rf ../working-copy
|
// rm -rf ../working-copy
|
||||||
rm('-rf', path('..', workingCopy));
|
rm('-rf', path('..', workingCopy));
|
||||||
// rm -rf ../build/dist
|
// Clean up the `./electron/build` folder.
|
||||||
rm('-rf', path('..', 'build', 'dist'));
|
shell.exec(`git -C ${path('..', 'build')} clean -ffxdq`, { async: false });
|
||||||
// rm -rf ../build/package.json
|
|
||||||
rm('-rf', path('..', 'build', 'package.json'));
|
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------------------+
|
//----------------------------------------------------------------------------------------------+
|
||||||
// Copy the following items into the `working-copy` folder. Make sure to reuse the `yarn.lock`. |
|
// Copy the following items into the `working-copy` folder. Make sure to reuse the `yarn.lock`. |
|
||||||
@ -79,7 +77,7 @@
|
|||||||
pkg = require('../working-copy/electron-app/package.json');
|
pkg = require('../working-copy/electron-app/package.json');
|
||||||
// @ts-ignore
|
// @ts-ignore
|
||||||
const template = require('../build/template-package.json');
|
const template = require('../build/template-package.json');
|
||||||
template.build.files = [ ...template.build.files, ...unusedDependencies.map(name => `!node_modules/${name}`) ];
|
template.build.files = [...template.build.files, ...unusedDependencies.map(name => `!node_modules/${name}`)];
|
||||||
pkg.dependencies = { ...pkg.dependencies, ...template.dependencies };
|
pkg.dependencies = { ...pkg.dependencies, ...template.dependencies };
|
||||||
pkg.devDependencies = { ...pkg.devDependencies, ...template.devDependencies };
|
pkg.devDependencies = { ...pkg.devDependencies, ...template.devDependencies };
|
||||||
fs.writeFileSync(path('..', 'build', 'package.json'), JSON.stringify({
|
fs.writeFileSync(path('..', 'build', 'package.json'), JSON.stringify({
|
||||||
@ -95,6 +93,17 @@ ${fs.readFileSync(path('..', 'build', 'package.json')).toString()}
|
|||||||
-----------------------
|
-----------------------
|
||||||
`);
|
`);
|
||||||
|
|
||||||
|
// Make sure the original `yarn.lock` file is used from the electron application.
|
||||||
|
if (fs.existsSync(path('..', 'build', 'yarn.lock'))) {
|
||||||
|
echo(`${path('..', 'build', 'yarn.lock')} must not exist.`);
|
||||||
|
shell.exit(1);
|
||||||
|
}
|
||||||
|
cp('-rf', path(rootPath, 'yarn.lock'), path('..', 'build'));
|
||||||
|
if (!fs.existsSync(path('..', 'build', 'yarn.lock'))) {
|
||||||
|
echo(`${path('..', 'build', 'yarn.lock')} does not exist.`);
|
||||||
|
shell.exit(1);
|
||||||
|
}
|
||||||
|
|
||||||
//-------------------------------------------------------------------------------------------+
|
//-------------------------------------------------------------------------------------------+
|
||||||
// Install all private and public dependencies for the electron application and build Theia. |
|
// Install all private and public dependencies for the electron application and build Theia. |
|
||||||
//-------------------------------------------------------------------------------------------+
|
//-------------------------------------------------------------------------------------------+
|
||||||
@ -109,7 +118,7 @@ ${fs.readFileSync(path('..', 'build', 'package.json')).toString()}
|
|||||||
rm('-rf', path('..', 'build', dotenv));
|
rm('-rf', path('..', 'build', dotenv));
|
||||||
}
|
}
|
||||||
// For the releases we use the desired tag as is defined by `$(Release.Tag)` from Azure.
|
// For the releases we use the desired tag as is defined by `$(Release.Tag)` from Azure.
|
||||||
// For the preview builds we use the version from the `electron/build/package.json` with the short commit hash.
|
// For the preview builds we use the version from the `electron/build/package.json` with the short commit hash.
|
||||||
fs.writeFileSync(path('..', 'build', dotenv), `ARDUINO_VERSION=${version}`);
|
fs.writeFileSync(path('..', 'build', dotenv), `ARDUINO_VERSION=${version}`);
|
||||||
|
|
||||||
//-----------------------------------+
|
//-----------------------------------+
|
||||||
@ -186,4 +195,4 @@ ${fs.readFileSync(path('..', 'build', 'package.json')).toString()}
|
|||||||
return join(__dirname, ...paths);
|
return join(__dirname, ...paths);
|
||||||
}
|
}
|
||||||
|
|
||||||
})();
|
})();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user