install() -> installAdmin()

This commit is contained in:
Daniel Huebleitner
2019-09-02 18:36:06 +02:00
parent ec732d29cb
commit 26a8400ab1
3 changed files with 30 additions and 13 deletions
+1 -1
View File
@@ -107,7 +107,7 @@ export class FrontblockAdmin extends AdminBase<AdminConf>{
status = await updater.cloneRepo("https://gitea.frontblock.me/fb-dist/admin.git", force)
this.destroy()
const installer = require("./Installer").install
const installer = require("./Installer").installAdmin
installer(this.getPlugins())
}
return status
+27 -10
View File
@@ -19,17 +19,34 @@ const logger = Logger.getLogger("installer")
export type NPMPkgName = string
export type NPMVersion = string
export const install = (plugins: Plugin[] = []) => {
const npmPkgs:[NPMPkgName, NPMVersion][] = [['sqlite3', '4.1.0'], ['knex', '0.19.2']]
export const defaultNodePkgs = ():[NPMPkgName, NPMVersion][] => {
return [
['sqlite3', '4.1.0'],
['knex', '0.19.2']
]
}
export const npmInstall = (prefix: string = './plugins') => async (npmPkgs: [NPMPkgName, NPMVersion][]) => {
const deps = npmPkgs.map(tuple => tuple.join('@') ).join(" ")
logger.info("Installing plaform dependencies: "+deps)
logger.info('npm install --prefix', prefix, deps)
exec("npm i --prefix ./plugins " + deps).then(process => {
logger.debug(process.stdout)
const Admin = require("./Admin").FrontblockAdmin
new Admin(plugins)
})
const { error, stdout, stderr } = await exec('npm i --prefix ' + prefix + ' ' + deps)
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)
}
+2 -2
View File
@@ -1,2 +1,2 @@
import { install } from "./Installer";
install([])
import { installAdmin } from "./Installer";
installAdmin([])