From b62a363d105360e3e7a9f07db1d151575cb95803 Mon Sep 17 00:00:00 2001 From: keeramis Date: Mon, 3 Feb 2025 15:45:06 -0800 Subject: [PATCH] minor clean up --- src/cmd/flash.js | 12 +++++++----- src/cmd/setup-tachyon.js | 2 +- src/lib/qdl.js | 11 ++++++++--- 3 files changed, 16 insertions(+), 9 deletions(-) diff --git a/src/cmd/flash.js b/src/cmd/flash.js index 3504946d1..0e72f7d48 100644 --- a/src/cmd/flash.js +++ b/src/cmd/flash.js @@ -105,7 +105,7 @@ module.exports = class FlashCommand extends CLICommandBase { try { if (verbose) { - this.ui.write(`Starting download. See logs at: ${outputLog}${os.EOL}`); + this.ui.write(`${os.EOL}Starting download. See logs at: ${outputLog}${os.EOL}`); } const qdl = new QdlFlasher({ files: filesToProgram, @@ -114,10 +114,11 @@ module.exports = class FlashCommand extends CLICommandBase { zip: zipFile, ui: this.ui, outputLogFile: outputLog, - skipReset + skipReset, + currTask: 'OS' }); await qdl.run(); - fs.appendFileSync(outputLog, 'OS Download complete.'); + fs.appendFileSync(outputLog, `OS Download complete.${os.EOL}`); } catch (error) { fs.appendFileSync(outputLog, 'Download failed with error: ' + error.message); throw new Error('Download failed with error: ' + error.message); @@ -133,11 +134,12 @@ module.exports = class FlashCommand extends CLICommandBase { const qdl = new QdlFlasher({ files: [firehoseFile, xmlFile], ui: this.ui, - outputLogFile: output + outputLogFile: output, + currTask: 'Configuration file' }); await qdl.run(); - fs.appendFileSync(output, 'Config file download complete.'); + fs.appendFileSync(output, `Config file download complete.${os.EOL}`); } catch (error) { fs.appendFileSync(output, 'Download failed with error: ' + error.message); throw new Error('Download failed with error: ' + error.message); diff --git a/src/cmd/setup-tachyon.js b/src/cmd/setup-tachyon.js index e52c65cf5..d5e941f46 100644 --- a/src/cmd/setup-tachyon.js +++ b/src/cmd/setup-tachyon.js @@ -578,7 +578,7 @@ Welcome to the Particle Tachyon setup! This interactive command: const outputLog = path.join(process.cwd(), `tachyon_flash_${Date.now()}.log`); fs.ensureFileSync(outputLog); - this.ui.write(`Starting download. See logs at: ${outputLog}${os.EOL}`); + this.ui.write(`${os.EOL}Starting download. See logs at: ${outputLog}${os.EOL}`); if (!skipFlashingOs) { await flashCommand.flashTachyon({ files: [packagePath], skipReset: true, output: outputLog, verbose: false }); } diff --git a/src/lib/qdl.js b/src/lib/qdl.js index 9b8915819..ebf2c6e58 100644 --- a/src/lib/qdl.js +++ b/src/lib/qdl.js @@ -10,7 +10,7 @@ const mkdirTemp = util.promisify(temp.mkdir); const TACHYON_STORAGE_TYPE = 'ufs'; class QdlFlasher { - constructor({ files, includeDir, updateFolder, zip, ui, outputLogFile, skipReset=false }) { + constructor({ files, includeDir, updateFolder, zip, ui, outputLogFile, skipReset=false, currTask=null }) { this.files = files; this.includeDir = includeDir; this.updateFolder = updateFolder; @@ -25,9 +25,11 @@ class QdlFlasher { this.progressBarInitialized = false; this.preparingDownload = false; this.skipReset = skipReset; + this.currTask = currTask; } async run() { + let qdlProcess; try { const qdlPath = await this.getExecutable(); const qdlArguments = this.buildArgs({ files: this.files, includeDir: this.includeDir, zip: this.zip }); @@ -35,7 +37,7 @@ class QdlFlasher { const command = `${qdlPath} ${qdlArguments.join(' ')}`; fs.appendFileSync(this.outputLogFile, `Command: ${command}\n`); - const qdlProcess = execa(qdlPath, qdlArguments, { + qdlProcess = execa(qdlPath, qdlArguments, { cwd: this.updateFolder || process.cwd(), stdio: 'pipe' }); @@ -56,6 +58,9 @@ class QdlFlasher { if (this.progressBarInitialized) { this.progressBar.stop(); } + if (qdlProcess && qdlProcess.kill) { + qdlProcess.kill(); + } } } @@ -156,7 +161,7 @@ class QdlFlasher { } if (this.totalSectorsFlashed === this.totalSectorsInAllFiles) { - this.progressBar.update({ description: 'Flashing complete' }); + this.progressBar.update({ description: `Flashing complete ${this.currTask ? this.currTask : ''}` }); } } }