Skip to main content

Workflows environment variables

Workflow environment variables available for use with Self-hosted Retool deployments. These environment variables specifically can be applied to the api, workflows-worker, and workflows-backend services.

WORKFLOW_BACKEND_HOST

Endpoint specification for all Retool Workflow-related backend requests, such as querying resources, updating workflow status, and storing block results and logs. The value depends on your deployment configuration, but must include a protocol (http:// or https://).

WORKFLOW_BACKEND_HOST=http://workflows-api

CODE_EXECUTOR_INGRESS_DOMAIN

Endpoint specification for code-executor service, which executes arbitrary user-defined JavaScript and Python code with installed custom libraries. The value depends on your deployment configuration, but must include a protocol (http:// or https://).

CODE_EXECUTOR_INGRESS_DOMAIN=http://code-executor:3004

WORKFLOW_TEMPORAL_CLUSTER_FRONTEND_HOST

The host name of the Temporal cluster. If you're using your own Temporal Cloud, your host may look like: foo.bar.tmprl.cloud. This does not need to be set if using Retool-managed Temporal cluster.

WORKFLOW_TEMPORAL_CLUSTER_FRONTEND_HOST=foo.bar.tmprl.cloud

WORKFLOW_TEMPORAL_CLUSTER_FRONTEND_PORT

The port of the Temporal cluster. This does not need to be set if using Retool-managed Temporal cluster. Defaults to 7233.

WORKFLOW_TEMPORAL_CLUSTER_FRONTEND_PORT=7233

WORKFLOW_TEMPORAL_TLS_ENABLED

Enables TLS for the connection to the Temporal cluster. When this variable is set, Retool expects WORKFLOW_TEMPORAL_TLS_KEY and WORKFLOW_TEMPORAL_TLS_CRT to be specified. You must set this to true if you use your own Temporal Cloud. This does not need to be set if using Retool-managed Temporal cluster. Defaults to false.

WORKFLOW_TEMPORAL_TLS_ENABLED=false

WORKFLOW_TEMPORAL_TLS_KEY

Base64 encoded private key for TLS client certification pair. See Temporal documentation for more details. This does not need to be set if using Retool-managed Temporal cluster.

WORKFLOW_TEMPORAL_TLS_CRT

Base64 encoded public certificate (PEM format) for TLS client certification pair. See Temporal documentation for more details. This does not need to be set if using Retool-managed Temporal cluster.

WORKFLOW_TEMPORAL_SERVER_NAME_OVERRIDE

Overrides the target name (SNI) used for TLS host name checking. This can be useful if you have reverse proxy in front of Temporal server and you want to override the SNI to direct traffic to the appropriate backend server based on custom routing rules. Connections can be refused if the provided SNI does not match the expected host. Adding this override should be done with care. See Temporal documentation for more details. This does not need to be set if using Retool-managed Temporal cluster.

WORKFLOW_TEMPORAL_SERVER_ROOT_CA_CRT

Base64 encoded Root CA certificate used by the server (PEM format). See Temporal documentation for more details. This does not need to be set if using Retool-managed Temporal cluster.

WORKFLOW_TEMPORAL_CLUSTER_NAMESPACE

Temporal namespace used by Retool Workflows. Defaults to workflows.

WORKFLOW_TEMPORAL_CLUSTER_NAMESPACE=workflows

TEMPORAL_TASKQUEUE_WORKFLOW

Used by clients connecting to Temporal for all Retool Workflow-related requests (enqueue, query, etc.). This value should match WORKER_TEMPORAL_TASKQUEUE. Defaults to workflows.

TEMPORAL_TASKQUEUE_WORKFLOW=workflows

WORKFLOW_MONITOR_PROCESS_ENABLED

Used to limit the memory and CPUs available to a workflow while running. If enabled, WORKFLOW_MEMORY_LIMIT_MIBS and WORKFLOW_CPU_LIMIT can be set. If the code-executor service is deployed, set this variable there instead. Defaults to false.

WORKFLOW_MONITOR_PROCESS_ENABLED=false

WORKFLOW_MEMORY_LIMIT_MIBS

If WORKFLOW_MONITOR_PROCESS_ENABLED is set to true, this variable governs the memory available to a workflow while running. If the code-executor service is deployed, set this variable there instead. Defaults to 1536 (1.5 GB).

WORKFLOW_MEMORY_LIMIT_MIBS=1536

WORKFLOW_CPU_LIMIT

If WORKFLOW_MONITOR_PROCESS_ENABLED is set to true, this variable governs the CPUs available to a workflow while running. If the code-executor service is deployed, set this variable there instead. Defaults to 8.

WORKFLOW_CPU_LIMIT=8

Worker only

In addition to the variables defined above, the workflows-worker service (SERVICE_TYPE = WORKFLOW_TEMPORAL_WORKER) can set the following environment variables.

WORKFLOW_WORKER_HEALTHCHECK_PORT

The port on which the worker responds to health checks (/api/checkHealth). The default is 3005.

WORKFLOW_WORKER_HEALTHCHECK_PORT=3005

WORKER_TEMPORAL_TASKQUEUE

Used to specify the Temporal queue from which to poll for all Retool Workflow-related workflows (user-defined or internal). This value should match TEMPORAL_TASKQUEUE_WORKFLOW. Defaults to workflows.

WORKER_TEMPORAL_TASKQUEUE=workflows

WORKFLOW_TEMPORAL_CONCURRENT_ACTIVITIES_LIMIT

Advanced setting for tuning workers. See Temporal documentation for more details. Defaults to 10.

WORKFLOW_TEMPORAL_CONCURRENT_ACTIVITIES_LIMIT=10

WORKFLOW_TEMPORAL_CONCURRENT_TASKS_LIMIT

Advanced setting for tuning workers. See Temporal documentation for more details. Defaults to 10.

WORKFLOW_TEMPORAL_CONCURRENT_TASKS_LIMIT=10

WORKFLOW_TEMPORAL_OPENTELEMETRY_COLLECTOR

Available on self-hosted Retool versions 3.33 and later.

Endpoint specification for OpenTelemetry collector for Temporal Worker metrics. The value depends on your deployment configuration.

If it is not set, Retool exposes metrics using a Prometheus Metrics exporter specified in the worker's runtime options:

telemetryOptions: {
metrics: {
prometheus: { bindAddress: '0.0.0.0:9090' }
}
}

Metrics are available for scraping using the /metrics route.

WORKFLOW_TEMPORAL_OPENTELEMETRY_COLLECTOR=http://open-telemetry-collector-opentelemetry-collector:4318

WORKFLOW_TEMPORAL_STICKY_CACHE_SIZE

Advanced setting for tuning workers. See Temporal documentation for more details. Defaults to 200

WORKFLOW_TEMPORAL_STICKY_CACHE_SIZE=200

WORKFLOW_TEMPORAL_WORKER_SHUTDOWN_GRACE_TIME

Advanced setting for tuning workers. See Temporal documentation for more details. Default to 15 minute.

WORKFLOW_TEMPORAL_WORKER_SHUTDOWN_GRACE_TIME='15 minute'

WORKFLOW_TEMPORAL_WORKFLOW_TASK_POLLERS

Advanced setting for tuning workers. See Temporal documentation for more details. Defaults to 10.

WORKFLOW_TEMPORAL_WORKFLOW_TASK_POLLERS=10

WORKFLOW_TEMPORAL_ACTIVITY_TASK_POLLERS

Advanced setting for tuning workers. See Temporal documentation for more details. Defaults to 2.

WORKFLOW_TEMPORAL_ACTIVITY_TASK_POLLERS=2