diff --git a/components/endpoints/class.param.js b/components/endpoints/class.param.js old mode 100644 new mode 100755 index 27613f9..7ff19ad --- a/components/endpoints/class.param.js +++ b/components/endpoints/class.param.js @@ -48,6 +48,7 @@ module.exports = class Param { min: Joi.number().default(0), max: Joi.number().default(100), //default: Joi.number().allow(null).default(null) + colorGradient: Joi.array().items(Joi.string().min(1)).default([]), }) }, { is: "string", diff --git a/index.js b/index.js index eb8a548..af27bb4 100644 --- a/index.js +++ b/index.js @@ -63,7 +63,9 @@ process.env = Object.assign({ CONNECT_TIMEOUT: "10000", HTTP_TRUSTED_PROXYS: "loopback", ITEM_LIMITS: "", - WORKER_THREADS_ENABLED: "false" + WORKER_THREADS_ENABLED: "false", + BIN_PATH_TAR: "/usr/bin/tar", + BIN_PATH_NPM: "/usr/bin/npm" }, env.parsed, process.env); diff --git a/routes/router.api.plugins.js b/routes/router.api.plugins.js index cd3eda6..ca3f309 100644 --- a/routes/router.api.plugins.js +++ b/routes/router.api.plugins.js @@ -1,6 +1,6 @@ const path = require("path"); const { pipeline } = require("stream"); -const { exec } = require("child_process"); +const { spawn } = require("child_process"); const process = require("process"); const fs = require("fs/promises"); const { statSync } = require("fs"); @@ -94,7 +94,7 @@ module.exports = (app, router) => { } //let p = path.resolve(process.cwd(), "plugins", req.item.uuid); - let tar = exec(`tar vzxf - -C ${req.folder}`); + let tar = spawn(process.env.BIN_PATH_TAR, ["-vzxf", "-", "-C", req.folder]); tar.once("exit", (code) => { @@ -136,7 +136,7 @@ module.exports = (app, router) => { } - let npm = exec(`npm install --omit=dev`, { + let npm = spawn(process.env.BIN_PATH_NPM, ["install", "--omit=dev"], { env: { ...process.env, NODE_ENV: "production",