processmaker / docker-executor-node
ProcessMaker 4 的 JavaScript 脚本执行器
1.1.0
2023-02-01 01:24 UTC
This package is auto-updated.
Last update: 2024-09-14 22:06:00 UTC
README
一个允许在 ProcessMaker 4 中执行原生 ES6 的 Docker 镜像
构建
要从 https://github.com/ProcessMaker/sdk-node 的 SDK 的 master 分支构建,将构建镜像为 processmaker4/executor-node:latest
docker build -t processmaker4/executor-node:latest .
如果您想使用不同的分支或本地的 SDK 构建,您可以将其复制到 ./src/sdk-node
,它将使用复制的版本而不是从 GitHub 克隆。
脚本
JavaScript 必须返回一个对象、一个解析为对象的承诺,或者什么也不返回。
您的脚本可以访问全局变量 data
、config
和 api
返回一个对象
return { "foo" : "bar" }
返回一个承诺
return new Promise((resolve, reject) => { resolve({ "foo" : "bar" }) })
不返回任何内容
// just run some javascript here without calling return
使用 ProcessMaker API
使用全局 api
变量,您可以运行如下命令来返回所有用户的电子邮件。有关更多信息,请参阅 ProcessMaker API 文档。https://<process_maker_address>/api/documentation
return new Promise((resolve, reject) => { let apiInstance = new api.UsersApi() apiInstance.getUsers({}, (error, data, response) => { if (error) { reject(error); return } let emails = data.data.map(user => { return user.email }); resolve({"emails" : emails }) }) })
运行
此镜像旨在由 ProcessMaker 4 中的脚本执行器运行,但也可以从命令行运行
docker run -v <path to local data.json>:/opt/executor/data.json \
-v <path to local config.json>:/opt/executor/config.json \
-v <path to local script.js>:/opt/executor/script.js \
-v <path to local output.json>:/opt/executor/output.json \
processmaker4/executor-node \
./run.sh
许可证
根据 AGPL 版本 3 发行
ProcessMaker (C) 2002 - 2020 ProcessMaker Inc.
有关更多信息,请访问: http://www.processmaker.com/