From 8a32f19d0c7a88bd2a71a91e10c9f21f827ed002 Mon Sep 17 00:00:00 2001 From: Jakob Stendahl Date: Thu, 14 Oct 2021 00:17:14 +0200 Subject: :hammer: Improve update/install script :hammer: Fix compatability with older git :hammer: add correct tmpdir for install files, remove trap on error :hammer: Make script die :hammer: Fix typo in if statement :hammer: New attempt to fix if :hammer: yet another small fix :hammer: Improve update/install script --- src/SelfUpdater/index.js | 12 ++++++++++-- src/SocketIO/index.js | 3 +-- 2 files changed, 11 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/SelfUpdater/index.js b/src/SelfUpdater/index.js index 5a9baa3..f332e27 100644 --- a/src/SelfUpdater/index.js +++ b/src/SelfUpdater/index.js @@ -1,7 +1,7 @@ let fs = require("fs-extra"); let url = require("url"); let request = require('request'); -let exec = require("child_process").exec; +const spawn = require('child_process').spawn; let logger = require(__appdir + "/src/Logger"); let neoModules; @@ -32,7 +32,7 @@ class VersionChecker { if (!error && response.statusCode === 200) { let remotePackageJSON = JSON.parse(body); let newestVersion = remotePackageJSON["version"]; - if (this.VersionIsNewerThan(newestVersion, this.version)) { + if (newestVersion != this.version) { logger.notice("A new version is available on \"" + this.repoBranch + "\" (v" + this.version + ")"); this.newVersion = true; } else { @@ -60,6 +60,14 @@ class VersionChecker { return false; } + doUpdate() { + spawn("luxcena-neo-cli.sh", ["update", ">>", "/tmp/luxcena-neo-update.log"], { + cwd: process.cwd(), + detached : true, + stdio: "inherit" + }); + } + }   module.exports = (_neoModules) => { diff --git a/src/SocketIO/index.js b/src/SocketIO/index.js index 1803845..ec1cedf 100644 --- a/src/SocketIO/index.js +++ b/src/SocketIO/index.js @@ -194,8 +194,7 @@ function createAuthorizedNamespace(io) { fn({success: true}); }); socket.on("system:update_version", () => { - let p = exec('luxcena-neo-cli.sh update'); - p.unref(); + neoModules.selfUpdater.doUpdate(); }); /* SSLCert */ -- cgit v1.2.3