Closed muttoni closed 15 hours ago
The error no longer occurs when you add these two try-catch-blocks:
1) Inside stopProcess https://github.com/onflow/kitty-items/blob/master/.ki-scripts/startup.js#L130-L139
function stopProcess(name, port) {
return new Promise((resolve, reject) => {
pm2.stop(name, function (err, result) {
pm2.delete(name, async function () {
try {
await killPortProcess(port);
resolve();
} catch (error) {
reject(error);
}
});
});
});
}
2) Around stopProcess calls https://github.com/onflow/kitty-items/blob/master/.ki-scripts/startup.js#L187-L190
try {
await stopProcess("api", [3000]);
await stopProcess("web", [3001]);
await stopProcess("dev-wallet", [8701]);
await stopProcess("emulator", [8080, 3569]);
} catch (error) {
console.log('There were no previous processes or the processes could not be stopped');
}
Describe the bug
(summarizing a DM discussion with a community member on Discord)
The
npm run dev
script has a preliminary step that stops previous running processes. Certain environments like Windows WSL can use different ports (or may not be in use yet), which is causing the script to fail. The startup script should either try/catch or check for port usage first.See here: https://github.com/onflow/kitty-items/blob/master/.ki-scripts/startup.js#L187
it is not finding the ports running and throws and error when it runs the following command.
killPortProcess(port)
When those lines are commented out, the user on Windows WSL is able to run the startup script successfully.
To Reproduce Steps to reproduce the behavior:
On Windows WSL, install and run Kitty Items with
npm run dev:testnet
Expected behavior
Startup script should handle and catch errors without failing
Screenshots/Logs/Output
Environment (Optional - Version, OS, Browser, etc.)
System: OS: Linux 5.10 Ubuntu 20.04.4 LTS (Focal Fossa) CPU: (8) x64 Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz Memory: 4.74 GB / 6.08 GB Container: Yes Shell: 5.0.17 - /bin/bash Binaries: Node: 16.15.0 - ~/.nvm/versions/node/v16.15.0/bin/node Yarn: 1.22.5 - /mnt/c/Program Files (x86)/Yarn/bin/yarn npm: 8.5.5 - ~/jacob-build-nft-marketplace/kitty-items/node_modules/.bin/npm Managers: Apt: 2.0.6 - /usr/bin/apt Utilities: Make: 4.2.1 - /usr/bin/make GCC: 9.3.0 - /usr/bin/gcc Git: 2.25.1 - /usr/bin/git IDEs: Nano: 4.8 - /usr/bin/nano VSCode: 1.67.0 - /home/canedy/.vscode-server/bin/57fd6d0195bb9b9d1b49f6da5db789060795de47/bin/remote-cli/code Vim: 8.1 - /usr/bin/vim Languages: Bash: 5.0.17 - /usr/bin/bash Perl: 5.30.0 - /usr/bin/perl Python3: 3.8.10 - /usr/bin/python3 Monorepos: Lerna: 4.0.0