Smart Processes Management
JS executor for Runnerty:
Module for the execution of JS through a child process of nodejs (fork).
npm i @runnerty/executor-js
You can also add modules to your project with runnerty-cli
npx runnerty-cli add @runnerty/executor-js
This command installs the module in your project, adds example configuration in your config.json
and creates an example plan of use.
If you have installed runnerty-cli globally you can include the module with this command:
rty add @runnerty/executor-js
Add in config.json:
{
"id": "js_default",
"type": "@runnerty-executor-js"
}
{
"id": "js_default",
"type": "@runnerty-executor-js",
"timeout": true,
"debug": true
}
Add in plan.json:
In case the script contains only one function, it is not necessary to specify it. Don't forget to include this in your script: module.exports = function_name
.
{
"id": "js_default",
"script": "./js/sample.js"
}
If your script contains several exported functions you must indicate the function to execute. Don't forget to include this in your script for each of the functions you want to export: module.exports.functionSample = functionSample
.
{
"id": "js_default",
"script": "./js/sample.js",
"function": "functionSample"
}
In the parameters
property you can indicate any type/value you expect in your function.
{
"id": "js_default",
"script": "./js/sample.js",
"function": "functionSample",
"parameters": 123
}
{
"id": "js_default",
"script": "./js/sample.js",
"function": "functionSample",
"parameters": {
"id": "X123",
"name": "Runnerty"
}
}
-
PROCESS_EXEC_DATA_OUTPUT
: Output data (JSON or String) -
PROCESS_EXEC_ERR_OUTPUT
: Error output message.
In case your function returns an object or an array of objects, you can also access each of the values individually.
For example, if your function returns this object:
{ "id": 1, "name": "mokka" }
You can access the values with the GETVALUE
function indicating the key: @GV(PROCESS_EXEC_ID)
, @GV(PROCESS_EXEC_NAME)
Si su función devuelve este array de objeto:
[
{ "id": 1, "name": "mokka" },
{ "id": 2, "name": "cleo" },
{ "id": 3, "name": "nela" }
]
You can access the values with the GETVALUE
function indicating the position and the key: @GV(PROCESS_EXEC_0_ID)
, @GV(PROCESS_EXEC_0_NAME)