diff --git a/src/backend/Admin.ts b/src/backend/Admin.ts index 3d5da3a..f11000b 100644 --- a/src/backend/Admin.ts +++ b/src/backend/Admin.ts @@ -184,5 +184,5 @@ export class FrontblockAdmin extends AdminBase{ process.on( 'SIGINT', function() { logger.info( "Gracefully shutting down from SIGINT (Ctrl-C)" ); // some other closing procedures go here - process.exit( ); + process.exit(0); }) \ No newline at end of file diff --git a/src/backend/Installer.ts b/src/backend/Installer.ts index 83c96f9..dab3e8b 100644 --- a/src/backend/Installer.ts +++ b/src/backend/Installer.ts @@ -19,34 +19,17 @@ const logger = Logger.getLogger("installer") export type NPMPkgName = string export type NPMVersion = string -export const defaultNodePkgs = ():[NPMPkgName, NPMVersion][] => { - return [ - ['sqlite3', '4.1.0'], - ['knex', '0.19.2'] - ] -} - -export const npmInstall = (prefix: string = './plugins') => async (npmPkgs: [NPMPkgName, NPMVersion][]) => { +export const installAdmin = (plugins: Plugin[] = []) => { + + const npmPkgs:[NPMPkgName, NPMVersion][] = [['sqlite3', '4.1.0'], ['knex', '0.19.2']] const deps = npmPkgs.map(tuple => tuple.join('@') ).join(" ") - logger.info('npm install --prefix', prefix, deps) + logger.info("Installing plaform dependencies: "+deps) - const { error, stdout, stderr } = await exec('npm i --prefix ' + prefix + ' ' + deps) + exec("npm i --prefix ./plugins " + deps).then(process => { + + logger.debug(process.stdout) + const Admin = require("./Admin").FrontblockAdmin + new Admin(plugins) + }) - if (error) throw new Error(stderr) - else logger.info(stdout) -} - -export const installAdmin = async (plugins: Plugin[] = []) => { - logger.debug('Installing Admin') - - try { - await npmInstall()(defaultNodePkgs()) - logger.info('Installed node dependencies') - } catch (error) { - logger.fatal('Unable to install node dependencies: ', error) - process.exit(1); - } - - const Admin = require("./Admin").FrontblockAdmin - new Admin(plugins) } \ No newline at end of file