What is a Script Executor?

Understand what a Script Executor is.


In ProcessMaker Platform, a Script Executor is a Docker container for a specifically supported programming language to run Scripts developed in that programming language. See an example.

When the ProcessMaker Platform instance calls a Script to run, the Script Executor for that programming language creates a Docker container corresponding with that programming language, runs the Script, and then destroys the Docker container. This ensures that any malicious script that anyone in your organization might inadvertently introduce to ProcessMaker Platform does not affect the ProcessMaker Platform instance or its hosting environment: Docker containers cannot access them. Furthermore, Docker containers cannot listen for inbound connections; therefore, a Docker container cannot be accessed externally.

When the Script Executor creates a Docker container to run a Script, required libraries are already built in that Docker container. The Script Executor for each supported programming language contains the ProcessMaker Platform Software Development Kit (SDK) that supports extensibility to provide programmatic interaction with ProcessMaker Platform.

Script Executors not only manage Docker containers to run Scripts. Savvy Administrators may add Docker commands and customized code to new or default Script Executors that adds custom packages that allow Scripts to call sanctioned third-party Application Program Interfaces (APIs) and SDKs. Process designers who develop Scripts may make calls and requests to those APIs and SDKs via customized Script Executors. Since the Administrator must provide the Docker commands and configuration to a customized Script Executor, that Administrator controls access to sanctioned APIs and SDKs to those Process designers to ensure security.

See an example in the following video how to use a Script Executor that includes a Docker RUN command to package the Google Client class provided by Google into that Script Executor, thereby allowing Scripts using that Script Executor to successfully call the Google API.

  • Intended audience: Administrators, software developers, and coding engineers

  • Viewing time: 3 minutes; contains narration

Supported Programming Languages

ProcessMaker Platform supports the following programming languages in the open-source edition:

  • PHP

  • Lua

  • JavaScript

ProcessMaker Platform Enterprise edition supports the following additional programming languages:

pageWhat is a Script?pageWhat is a Package?pageC# PackagepageJava PackagepagePython PackagepageR Package

Last updated

© Copyright 2000-2024 ProcessMaker Inc. All rights reserved.