UNPKG

iobroker.js-controller

Version:

Updated by reinstall.js on 2018-06-11T15:19:56.688Z

83 lines (82 loc) 3.55 kB
"use strict"; var __create = Object.create; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __getProtoOf = Object.getPrototypeOf; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( // If the importer is in node compatibility mode or this is not an ESM // file that has been converted to a CommonJS file using a Babel- // compatible transform (i.e. "__esModule" has not been set), then set // "default" to the CommonJS "module.exports" for node compatibility. isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod )); var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); var restart_exports = {}; __export(restart_exports, { default: () => restart }); module.exports = __toCommonJS(restart_exports); var __import_meta_url = typeof document === "undefined" ? new (require("url".replace("", ""))).URL("file:" + __filename).href : document.currentScript && document.currentScript.src || new URL("main.js", document.baseURI).href; var import_node_child_process = require("node:child_process"); var import_node_os = __toESM(require("node:os"), 1); var import_tools = require("@iobroker/js-controller-common-db/tools"); var import_node_path = __toESM(require("node:path"), 1); var import_node_url = __toESM(require("node:url"), 1); async function restart(callback) { let cmd; let args; if (import_node_os.default.platform() === "win32") { const envPath = import_node_path.default.join((0, import_tools.getRootDir)(), ".env").replaceAll("\\", "\\\\"); cmd = `powershell -Command "$envPath = \\"${envPath}\\"; $iobServiceName = \\"ioBroker\\"; if (Test-Path $envPath) { foreach ($line in Get-Content $envPath) { $line = $line.Trim(); if ($line -match \\"^\\s*iobservicename\\s*=\\s*(.+)\\s*$\\") { $iobServiceName = $matches[1].Trim(); break; } } } Write-Output \\"Restarting service $iobServiceName.exe\\";Restart-Service \\"$iobServiceName.exe\\" -Force"`; cmd = cmd.replace(/[\r\n]+/gm, " "); try { await (0, import_tools.execAsync)(cmd); } catch (e) { console.error(`Restart failed: ${e.message}`); } } else { cmd = "iobroker"; args = ["restart"]; const child = (0, import_node_child_process.spawn)(cmd, args, { detached: true, stdio: ["ignore", "ignore", "ignore"], windowsHide: true }); child.unref(); } if (typeof callback === "function") { setTimeout(() => callback(), 500); } else { setTimeout(() => process.exit(), 500); } } const modulePath = import_node_url.default.fileURLToPath(__import_meta_url || `file://${__filename}`); if (process.argv[1] === modulePath) { restart(); } //# sourceMappingURL=restart.js.map